name: dbt_run_adhoc run-name: dbt_run_adhoc on: workflow_dispatch: branches: - "main" inputs: environment: type: choice description: DBT Run Environment required: true options: - dev - prod default: dev warehouse: type: choice description: Snowflake warehouse required: true options: - DBT - DBT_CLOUD - DBT_EMERGENCY dbt_command: type: string description: 'DBT Run Command' required: true env: 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.WAREHOUSE }}" SCHEMA: "${{ vars.SCHEMA }}" concurrency: group: ${{ github.workflow }} cancel-in-progress: true jobs: run_dbt_jobs: runs-on: ubuntu-latest environment: name: workflow_${{ inputs.environment }} steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: "${{ vars.PYTHON_VERSION }}" cache: "pip" - name: install dependencies run: | pip install -r requirements.txt dbt deps - name: Run DBT Jobs run: | ${{ inputs.dbt_command }}