From 8f49736df397a3cc6a2f6205185c335e3603c60d Mon Sep 17 00:00:00 2001 From: jakeross Date: Tue, 18 Aug 2026 15:16:09 -0700 Subject: [PATCH] chore(ci): remove the duplicated Dagster+ deploy workflows The Dagster+ GitHub import wizard added branch_deployments.yml and deploy.yml, which target the same ocotillo-automated-ingestion code location as the CD_dagster_* workflows already in the repository. Every qualifying pull request was building and deploying that location twice. Keeping the CD_dagster_* pair, for three reasons. They pin PYTHON_VERSION to 3.13; the wizard's pin 3.10, which cannot install a lockfile resolved for requires-python >= 3.13 and fails the way the first deploy here did. They are path-filtered to the directories that actually change the image, including db/ and domain/, where the wizard's run on every pull request regardless. And they generate requirements.txt from the `ingestion` dependency group, which is where dagster and dlt live in this project. The wizard's workflows do enable PEX fast deploys, which are quicker than the Docker path we use. That is worth revisiting once the dependency set is known to work under PEX, but not at the cost of a deploy that cannot install. Co-Authored-By: Claude Opus 5 --- .github/workflows/branch_deployments.yml | 77 ----------------------- .github/workflows/deploy.yml | 79 ------------------------ 2 files changed, 156 deletions(-) delete mode 100644 .github/workflows/branch_deployments.yml delete mode 100644 .github/workflows/deploy.yml diff --git a/.github/workflows/branch_deployments.yml b/.github/workflows/branch_deployments.yml deleted file mode 100644 index bfe4ff80e..000000000 --- a/.github/workflows/branch_deployments.yml +++ /dev/null @@ -1,77 +0,0 @@ -name: Serverless Branch Deployments -on: - pull_request: - types: [opened, synchronize, reopened, closed] - -concurrency: - # Cancel in-progress deploys to same branch - group: ${{ github.ref }}/branch_deployments - cancel-in-progress: true -env: - DAGSTER_CLOUD_URL: "http://nmbgmr-data-services.dagster.plus" - DAGSTER_CLOUD_API_TOKEN: ${{ secrets.DAGSTER_CLOUD_API_TOKEN }} - ENABLE_FAST_DEPLOYS: 'true' - PYTHON_VERSION: '3.10' - DAGSTER_CLOUD_FILE: 'dagster_cloud.yaml' - -jobs: - dagster_cloud_default_deploy: - name: Dagster Serverless Deploy - runs-on: ubuntu-22.04 - outputs: - build_info: ${{ steps.parse-workspace.outputs.build_info }} - - steps: - - name: Prerun Checks - id: prerun - uses: dagster-io/dagster-cloud-action/actions/utils/prerun@v1.13.18 - - - name: Launch Docker Deploy - if: steps.prerun.outputs.result == 'docker-deploy' - id: parse-workspace - uses: dagster-io/dagster-cloud-action/actions/utils/parse_workspace@v1.13.18 - with: - dagster_cloud_file: $DAGSTER_CLOUD_FILE - - - name: Checkout for Python Executable Deploy - if: steps.prerun.outputs.result == 'pex-deploy' - uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6 - with: - ref: ${{ github.head_ref }} - path: project-repo - - - name: Python Executable Deploy - if: steps.prerun.outputs.result == 'pex-deploy' - uses: dagster-io/dagster-cloud-action/actions/build_deploy_python_executable@v1.13.18 - 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-22.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@d23441a48e516b6c34aea4fa41551a30e30af803 # v6 - with: - ref: ${{ github.head_ref }} - - name: Build and deploy to Dagster Cloud serverless - uses: dagster-io/dagster-cloud-action/actions/serverless_branch_deploy@v1.13.18 - 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 }} diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml deleted file mode 100644 index 154748d05..000000000 --- a/.github/workflows/deploy.yml +++ /dev/null @@ -1,79 +0,0 @@ -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://nmbgmr-data-services.dagster.plus" - DAGSTER_CLOUD_API_TOKEN: ${{ secrets.DAGSTER_CLOUD_API_TOKEN }} - ENABLE_FAST_DEPLOYS: 'true' - PYTHON_VERSION: '3.10' - DAGSTER_CLOUD_FILE: 'dagster_cloud.yaml' - -jobs: - dagster_cloud_default_deploy: - name: Dagster Serverless Deploy - runs-on: ubuntu-22.04 - outputs: - build_info: ${{ steps.parse-workspace.outputs.build_info }} - - steps: - - name: Prerun Checks - id: prerun - uses: dagster-io/dagster-cloud-action/actions/utils/prerun@v1.13.18 - - - name: Launch Docker Deploy - if: steps.prerun.outputs.result == 'docker-deploy' - id: parse-workspace - uses: dagster-io/dagster-cloud-action/actions/utils/parse_workspace@v1.13.18 - with: - dagster_cloud_file: $DAGSTER_CLOUD_FILE - - - name: Checkout for Python Executable Deploy - if: steps.prerun.outputs.result == 'pex-deploy' - uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6 - with: - ref: ${{ github.head_ref }} - path: project-repo - - - name: Python Executable Deploy - if: steps.prerun.outputs.result == 'pex-deploy' - uses: dagster-io/dagster-cloud-action/actions/build_deploy_python_executable@v1.13.18 - 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-22.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@d23441a48e516b6c34aea4fa41551a30e30af803 # v6 - with: - ref: ${{ github.head_ref }} - - name: Build and deploy to Dagster Cloud serverless - uses: dagster-io/dagster-cloud-action/actions/serverless_prod_deploy@v1.13.18 - 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 }}