Skip to content

dbt prod (BigQuery) #85

dbt prod (BigQuery)

dbt prod (BigQuery) #85

name: dbt prod (BigQuery)
on:
workflow_dispatch:
push:
branches:
- master-bigquery
schedule:
- cron: '20 0 * * *'
jobs:
run:
runs-on: ubuntu-20.04
steps:
- name: checkout master-bigquery
uses: actions/checkout@v2
with:
ref: master-bigquery
- name: Verify and set branch and SHA
run: |
# echo "Checking if the current branch is master-bigquery"
# CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
# if [ "$CURRENT_BRANCH" != "master-bigquery" ]; then
# echo "This workflow runs only on master-bigquery."
# exit 1
# fi
echo "GH_REF=$(git symbolic-ref HEAD)" >> $GITHUB_ENV
echo "GH_SHA=$(git rev-parse HEAD)" >> $GITHUB_ENV
- name: Verify environment variables
run: |
echo "GH_REF is $GH_REF"
echo "GH_SHA is $GH_SHA"
env:
GH_REF: "${{ env.GH_REF }}"
GH_SHA: "${{ env.GH_SHA }}"
- uses: actions/setup-python@v2
with:
python-version: '3.8'
- name: install requirements
run: |
echo "setuptools<72" > constraints.txt
export PIP_CONSTRAINT=constraints.txt
pip install --upgrade pip
pip install -q -r requirements.txt
- name: install datafold-sdk
run: pip install -q datafold-sdk
- name: dbt deps
run: dbt deps
- name: dbt build
run: dbt build --full-refresh --profiles-dir ./ --profile demo_bigquery
env:
BIGQUERY_DEMO_PROJECT_ID: ${{ secrets.BIGQUERY_DEMO_PROJECT_ID}}
BIGQUERY_DEMO_PRIVATE_KEY_ID: ${{ secrets.BIGQUERY_DEMO_PRIVATE_KEY_ID}}
BIGQUERY_DEMO_PRIVATE_KEY: ${{ secrets.BIGQUERY_DEMO_PRIVATE_KEY}}
BIGQUERY_DEMO_CLIENT_EMAIL: ${{ secrets.BIGQUERY_DEMO_CLIENT_EMAIL}}
BIGQUERY_DEMO_CLIENT_ID: ${{ secrets.BIGQUERY_DEMO_CLIENT_ID}}
BIGQUERY_DEMO_CLIENT_X509_CERT_URL: ${{ secrets.BIGQUERY_DEMO_CLIENT_X509_CERT_URL}}
BIGQUERY_DEMO_DATASET: "${{ 'prod' }}"
- name: submit artifacts to datafold
run: |
set -ex
datafold dbt upload --ci-config-id 424 --run-type ${DATAFOLD_RUN_TYPE} --commit-sha ${GIT_SHA}
env:
DATAFOLD_API_KEY: ${{ secrets.DATAFOLD_APIKEY }}
DATAFOLD_RUN_TYPE: "${{ env.GH_REF == 'refs/heads/master-bigquery' && 'production' || 'pull_request' }}"
GIT_SHA: "${{ env.GH_REF == 'refs/heads/master-bigquery' && env.GH_SHA || github.event.pull_request.head.sha }}"