From 749b95a9ff6838f978f38890588e9b19b8ed7031 Mon Sep 17 00:00:00 2001 From: drethereum <71602799+drethereum@users.noreply.github.com> Date: Tue, 17 Jan 2023 10:17:10 -0700 Subject: [PATCH] added dbt docs workflow and concurrency on all jobs (#38) --- .github/workflows/dbt_docs_update.yml | 68 +++++++++++++++++++ .github/workflows/dbt_run_adhoc.yml | 2 + .../workflows/dbt_run_api_feeder_table.yml | 2 + .github/workflows/dbt_run_dev_refresh.yml | 2 + .github/workflows/dbt_run_incremental.yml | 2 + .github/workflows/dbt_test.yml | 2 + 6 files changed, 78 insertions(+) create mode 100644 .github/workflows/dbt_docs_update.yml diff --git a/.github/workflows/dbt_docs_update.yml b/.github/workflows/dbt_docs_update.yml new file mode 100644 index 0000000..fdfd62b --- /dev/null +++ b/.github/workflows/dbt_docs_update.yml @@ -0,0 +1,68 @@ +name: docs_update + +on: + push: + branches: + - "main" + +env: + DBT_PROFILES_DIR: ./ + + ACCOUNT: "${{ secrets.ACCOUNT }}" + ROLE: "${{ secrets.ROLE }}" + USER: "${{ secrets.USER }}" + PASSWORD: "${{ secrets.PASSWORD }}" + REGION: "${{ secrets.REGION }}" + DATABASE: "${{ secrets.DATABASE }}" + WAREHOUSE: "${{ secrets.WAREHOUSE }}" + SCHEMA: "${{ secrets.SCHEMA }}" + +concurrency: + group: ${{ github.workflow }} + +jobs: + scheduled_run: + name: docs_update + runs-on: ubuntu-latest + environment: + name: workflow_prod + + steps: + - uses: actions/checkout@v3 + + - uses: actions/setup-python@v1 + with: + python-version: "3.7.x" + + - name: install dependencies + run: | + pip install dbt-snowflake==1.3.0 + dbt deps + - name: checkout docs branch + run: | + git checkout -b docs origin/main + + - name: generate dbt docs + run: dbt docs generate -t prod + + - name: move files to docs directory + run: | + mkdir -p ./docs + cp target/{catalog.json,manifest.json,index.html} docs/ + - name: clean up target directory + run: dbt clean + + - name: check for changes + run: git status + + - name: stage changed files + run: git add . + + - name: commit changed files + run: | + git config user.email "abc@xyz" + git config user.name "github-actions" + git commit -am "Auto-update docs" + - name: push changes to docs + run: | + git push -f --set-upstream origin docs \ No newline at end of file diff --git a/.github/workflows/dbt_run_adhoc.yml b/.github/workflows/dbt_run_adhoc.yml index 608bed2..e09ac76 100644 --- a/.github/workflows/dbt_run_adhoc.yml +++ b/.github/workflows/dbt_run_adhoc.yml @@ -40,6 +40,8 @@ env: WAREHOUSE: "${{ inputs.warehouse }}" SCHEMA: "${{ secrets.SCHEMA }}" +concurrency: + group: ${{ github.workflow }} jobs: run_dbt_jobs: diff --git a/.github/workflows/dbt_run_api_feeder_table.yml b/.github/workflows/dbt_run_api_feeder_table.yml index 4ea4458..e403f87 100644 --- a/.github/workflows/dbt_run_api_feeder_table.yml +++ b/.github/workflows/dbt_run_api_feeder_table.yml @@ -19,6 +19,8 @@ env: WAREHOUSE: "${{ secrets.WAREHOUSE }}" SCHEMA: "${{ secrets.SCHEMA }}" +concurrency: + group: ${{ github.workflow }} jobs: run_dbt_jobs: diff --git a/.github/workflows/dbt_run_dev_refresh.yml b/.github/workflows/dbt_run_dev_refresh.yml index 7d16d71..0637141 100644 --- a/.github/workflows/dbt_run_dev_refresh.yml +++ b/.github/workflows/dbt_run_dev_refresh.yml @@ -19,6 +19,8 @@ env: WAREHOUSE: "${{ secrets.WAREHOUSE }}" SCHEMA: "${{ secrets.SCHEMA }}" +concurrency: + group: ${{ github.workflow }} jobs: run_dbt_jobs: diff --git a/.github/workflows/dbt_run_incremental.yml b/.github/workflows/dbt_run_incremental.yml index 6bceb93..191534b 100644 --- a/.github/workflows/dbt_run_incremental.yml +++ b/.github/workflows/dbt_run_incremental.yml @@ -19,6 +19,8 @@ env: WAREHOUSE: "${{ secrets.WAREHOUSE }}" SCHEMA: "${{ secrets.SCHEMA }}" +concurrency: + group: ${{ github.workflow }} jobs: run_dbt_jobs: diff --git a/.github/workflows/dbt_test.yml b/.github/workflows/dbt_test.yml index ea980ff..7c978c1 100644 --- a/.github/workflows/dbt_test.yml +++ b/.github/workflows/dbt_test.yml @@ -19,6 +19,8 @@ env: WAREHOUSE: "${{ secrets.WAREHOUSE }}" SCHEMA: "${{ secrets.SCHEMA }}" +concurrency: + group: ${{ github.workflow }} jobs: run_dbt_jobs: