Add DBT_TARGET env var to deploy.yml #4
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Serverless Prod Deployment | |
on: | |
push: | |
branches: | |
- "main" | |
- "master" | |
concurrency: | |
# Cancel in-progress deploys to same branch | |
group: ${{ github.ref }}/deploy | |
cancel-in-progress: true | |
env: | |
DAGSTER_CLOUD_URL: "http://davidbooke.dagster.cloud" | |
DAGSTER_CLOUD_API_TOKEN: ${{ secrets.DAGSTER_CLOUD_API_TOKEN }} | |
ENABLE_FAST_DEPLOYS: 'true' | |
PYTHON_VERSION: '3.8' | |
DAGSTER_CLOUD_FILE: 'dagster_cloud.yaml' | |
DBT_TARGET: 'prod' | |
jobs: | |
dagster_cloud_default_deploy: | |
name: Dagster Serverless Deploy | |
runs-on: ubuntu-20.04 | |
outputs: | |
build_info: ${{ steps.parse-workspace.outputs.build_info }} | |
steps: | |
- name: Prerun Checks | |
id: prerun | |
uses: dagster-io/dagster-cloud-action/actions/utils/[email protected] | |
- name: Launch Docker Deploy | |
if: steps.prerun.outputs.result == 'docker-deploy' | |
id: parse-workspace | |
uses: dagster-io/dagster-cloud-action/actions/utils/[email protected] | |
with: | |
dagster_cloud_file: $DAGSTER_CLOUD_FILE | |
- name: Checkout for Python Executable Deploy | |
if: steps.prerun.outputs.result == 'pex-deploy' | |
uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.head_ref }} | |
path: project-repo | |
- name: Prepare DBT project for deployment | |
if: steps.prerun.outputs.result == 'pex-deploy' | |
run: | | |
python -m pip install pip --upgrade | |
cd project-repo | |
pip install . --upgrade --upgrade-strategy eager | |
dagster-dbt project prepare-and-package --file dagster_university/project.py | |
shell: bash | |
- name: Python Executable Deploy | |
if: steps.prerun.outputs.result == 'pex-deploy' | |
uses: dagster-io/dagster-cloud-action/actions/[email protected] | |
with: | |
dagster_cloud_file: "$GITHUB_WORKSPACE/project-repo/$DAGSTER_CLOUD_FILE" | |
build_output_dir: "$GITHUB_WORKSPACE/build" | |
python_version: "${{ env.PYTHON_VERSION }}" | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
dagster_cloud_docker_deploy: | |
name: Docker Deploy | |
runs-on: ubuntu-20.04 | |
if: needs.dagster_cloud_default_deploy.outputs.build_info | |
needs: dagster_cloud_default_deploy | |
strategy: | |
fail-fast: false | |
matrix: | |
location: ${{ fromJSON(needs.dagster_cloud_default_deploy.outputs.build_info) }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.head_ref }} | |
- name: Build and deploy to Dagster Cloud serverless | |
uses: dagster-io/dagster-cloud-action/actions/[email protected] | |
with: | |
dagster_cloud_api_token: ${{ secrets.DAGSTER_CLOUD_API_TOKEN }} | |
location: ${{ toJson(matrix.location) }} | |
base_image: "python:${{ env.PYTHON_VERSION }}-slim" | |
# Uncomment to pass through Github Action secrets as a JSON string of key-value pairs | |
# env_vars: ${{ toJson(secrets) }} | |
organization_id: ${{ secrets.ORGANIZATION_ID }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |