name: dbt_test_scheduled run-name: dbt_test_scheduled on: workflow_dispatch: schedule: # Run at 1600 UTC daily (see https://crontab.guru) - cron: "0 16 * * *" env: SLACK_WEBHOOK_URL: "${{ secrets.SLACK_WEBHOOK_URL }}" USE_VARS: "${{ vars.USE_VARS }}" DBT_PROFILES_DIR: "${{ vars.DBT_PROFILES_DIR }}" DBT_VERSION: "${{ vars.DBT_VERSION }}" ACCOUNT: "${{ vars.ACCOUNT }}" ROLE: "${{ vars.ROLE }}" USER: "${{ vars.USER }}" PASSWORD: "${{ secrets.PASSWORD }}" REGION: "${{ vars.REGION }}" DATABASE: "${{ vars.DATABASE }}" WAREHOUSE: "${{ vars.TEST_WAREHOUSE }}" SCHEMA: "${{ vars.SCHEMA }}" concurrency: group: ${{ github.workflow }} jobs: run_dbt_jobs: runs-on: ubuntu-latest environment: name: workflow_prod steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: "3.10" cache: "pip" - name: install dependencies run: | pip install -r requirements.txt dbt deps - name: Run DBT Jobs run: | dbt test -s "flow_models,models/gold" tag:observability tag:evm_gap_test tag:testnet_gold --exclude "flow_models,models/gold/rewards" --vars '{"TEST_RANGE": True, "START_HEIGHT": ${{ vars.STREAMLINE_START_BLOCK }}, "END_HEIGHT": 100000000}' continue-on-error: true - name: Log test results run: | python python/dbt_test_alert.py - name: Store logs uses: actions/upload-artifact@v4 with: name: dbt-logs path: | logs target