Skip to content

Test all warehouse platforms #1098

Test all warehouse platforms

Test all warehouse platforms #1098

name: Test all warehouse platforms
on:
schedule:
- cron: "0 */8 * * *"
workflow_dispatch:
inputs:
elementary-ref:
type: string
required: false
description: Branch or tag to checkout for 'elementary' repository
dbt-data-reliability-ref:
type: string
required: false
description: Branch or tag to checkout for 'dbt-data-reliability' repository
dbt-version:
type: string
required: false
description: dbt's version to test with
generate-data:
type: boolean
required: false
default: false
description: Whether to generate new data
jobs:
test:
strategy:
fail-fast: false
matrix:
dbt-version: ${{ inputs.dbt-version && fromJSON(format('["{0}"]', inputs.dbt-version)) || fromJSON('["1.3.0", null]') }}
warehouse-type:
[
postgres,
snowflake,
bigquery,
redshift,
databricks,
databricks_catalog,
]
uses: ./.github/workflows/test-warehouse.yml
with:
warehouse-type: ${{ matrix.warehouse-type }}
elementary-ref: ${{ inputs.elementary-ref }}
dbt-data-reliability-ref: ${{ inputs.dbt-data-reliability-ref }}
dbt-version: ${{ matrix.dbt-version }}
generate-data: ${{ inputs.generate-data || false }}
secrets: inherit
notify_failures:
name: Notify Slack
secrets: inherit
needs: [test]
if: |
always() &&
! cancelled() &&
! contains(needs.test.result, 'success') &&
! contains(needs.test.result, 'cancelled')
uses: ./.github/workflows/notify_slack.yml
with:
result: "failure"
run_id: ${{ github.run_id }}
workflow_name: "Test all warehouse platforms"