From f6e472d80c0cdc0432bf74d57d6e01488e2c752e Mon Sep 17 00:00:00 2001 From: Jensen Yap Date: Wed, 3 Sep 2025 00:54:23 +0900 Subject: [PATCH] Update GitHub Actions workflow for dbt integration tests (#131) * Update GitHub Actions workflow for dbt integration tests - Renamed the workflow to 'dbt_run_integration_test' for clarity. - Removed the scheduled cron job to simplify the workflow. - Updated the job to use a template from FlipsideCrypto for better maintainability. - Adjusted the command to run integration tests using a selector. - Enhanced environment handling based on the branch context. * Update GitHub Actions workflow for dbt integration tests - Renamed the workflow to 'integration test' for clarity. - Added support for manual dispatch with environment input. - Implemented scheduled runs for both hosted and production environments. - Enhanced job configurations to streamline environment handling and command execution. - Updated commands to run specific integration tests for better accuracy. * Update dbt integration test workflow to enhance environment handling - Modified the warehouse selection logic to include 'workflow_prod' as a valid condition for using 'DBT_CLOUD'. - Updated the environment assignment to correctly map 'workflow_prod' to 'prod' and 'workflow_dev' to 'dev', improving clarity and functionality in the workflow. * Update dbt integration test workflow to refine environment conditions - Adjusted the warehouse selection logic to include 'workflow_dev' alongside 'workflow_prod' for using 'DBT_CLOUD'. - Enhanced the environment assignment to ensure accurate mapping for 'workflow_dev' and 'workflow_prod', improving the workflow's clarity and functionality. --- .github/workflows/dbt_integration_test.yml | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dbt_integration_test.yml b/.github/workflows/dbt_integration_test.yml index dc922dd..e16a798 100644 --- a/.github/workflows/dbt_integration_test.yml +++ b/.github/workflows/dbt_integration_test.yml @@ -3,14 +3,21 @@ run-name: ${{ github.event.inputs.branch }} on: workflow_dispatch: + inputs: + environment: + required: false + type: string + default: hosted schedule: - # Runs “Daily at midnight GMT” (see https://crontab.guru) + # Runs "Daily at midnight GMT" (see https://crontab.guru) - cron: '0 0 * * *' concurrency: ${{ github.workflow }} jobs: - test: + # For scheduled runs, run both environments + test-scheduled: + if: ${{ github.event_name == 'schedule' }} name: ${{ matrix.environment }} uses: ./.github/workflows/dbt.yml secrets: inherit @@ -26,3 +33,14 @@ jobs: warehouse: ${{ matrix.warehouse }} environment: ${{ matrix.environment }} command: dbt test -s test___utils_udf_introspect + + # For manual dispatch, run only the specified environment + test-dispatch: + if: ${{ github.event_name == 'workflow_dispatch' }} + name: ${{ github.event.inputs.environment }} + uses: ./.github/workflows/dbt.yml + secrets: inherit + with: + warehouse: ${{ (github.event.inputs.environment == 'workflow_prod' || github.event.inputs.environment == 'workflow_dev') && 'DBT_CLOUD' || 'XSMALL' }} + environment: ${{ github.event.inputs.environment == 'workflow_prod' && 'prod' || (github.event.inputs.environment == 'workflow_dev' && 'dev' || github.event.inputs.environment) }} + command: dbt test -s test___utils_udf_introspect