Skip to content

Commit c1051c6

Browse files
gibsondanclaude
andauthored
Split dagster-cloud.pex by runner architecture (#247)
split dagster-cloud.pex by runner arch Build two PEX variants — dagster-cloud-x86_64.pex (x86 runners + manylinux docker, ~80MB) and dagster-cloud-aarch64.pex (ARM runners, ~50MB) — instead of one ~96MB fat PEX. Keeps every file comfortably under GitHub's 100MB per-file limit. action.yml call sites route by runner.arch; src/Dockerfile pins to the x86_64 variant; deploy_pex.py picks by platform.machine() at runtime. generated/gha/dagster-cloud.pex becomes a symlink to the x86_64 variant for one release so external consumers reaching past the public action API continue to work on x86 runners. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 658d4b3 commit c1051c6

13 files changed

Lines changed: 76 additions & 50 deletions

File tree

actions/build_deploy_python_executable/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ runs:
7272
- if: ${{ inputs.deploy != 'true' }}
7373
run: >
7474
cd $ACTION_REPO &&
75-
generated/gha/dagster-cloud.pex -m dagster_cloud_cli.entrypoint
75+
generated/gha/dagster-cloud-${{ runner.arch == 'ARM64' && 'aarch64' || 'x86_64' }}.pex -m dagster_cloud_cli.entrypoint
7676
serverless build-python-executable
7777
$SOURCE_DIRECTORY ${{ inputs.build_output_dir }}
7878
--python-version=${{ inputs.python_version }}

actions/utils/ci-init/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ runs:
2121
steps:
2222
- name: init-env-vars
2323
run: >
24-
echo "DAGSTER_CLOUD_PEX=$GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud.pex" >> $GITHUB_ENV &&
24+
echo "DAGSTER_CLOUD_PEX=$GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud-${{ runner.arch == 'ARM64' && 'aarch64' || 'x86_64' }}.pex" >> $GITHUB_ENV &&
2525
echo "DAGSTER_BUILD_STATEDIR=/tmp/statedir-$GITHUB_RUN_ID" >> $GITHUB_ENV
2626
shell: bash
2727

actions/utils/dagster-cloud-cli/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ runs:
99
using: "composite"
1010
steps:
1111
- id: dagster-cloud-cli
12-
run: $GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud.pex -m dagster_cloud_cli.entrypoint ${{ inputs.command }}
12+
run: $GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud-${{ runner.arch == 'ARM64' && 'aarch64' || 'x86_64' }}.pex -m dagster_cloud_cli.entrypoint ${{ inputs.command }}
1313
shell: bash

actions/utils/dg-cli/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ runs:
99
using: "composite"
1010
steps:
1111
- id: dg-cli
12-
run: $GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud.pex -m dagster_dg_cli.cli.entrypoint ${{ inputs.command }}
12+
run: $GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud-${{ runner.arch == 'ARM64' && 'aarch64' || 'x86_64' }}.pex -m dagster_dg_cli.cli.entrypoint ${{ inputs.command }}
1313
shell: bash

actions/utils/dg-deploy-init/action.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ runs:
1717
steps:
1818
- name: init-env-vars
1919
run: >
20-
echo "DAGSTER_CLOUD_PEX=$GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud.pex" >> $GITHUB_ENV &&
20+
echo "DAGSTER_CLOUD_PEX=$GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud-${{ runner.arch == 'ARM64' && 'aarch64' || 'x86_64' }}.pex" >> $GITHUB_ENV &&
2121
echo "DAGSTER_BUILD_STATEDIR=/tmp/statedir-$GITHUB_RUN_ID" >> $GITHUB_ENV
2222
shell: bash
2323

actions/utils/prerun/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ runs:
2626
# closed PRs, this marks the pr_status=closed and attaches the merge commit details.
2727
run: >
2828
echo "::notice title=Closed Pull Request::Marking branch deployment closed for this PR, will skip remaining workflow" &&
29-
$GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud.pex -m dagster_cloud_cli.entrypoint ci branch-deployment prerun_checkout_dir > /tmp/closed-branch-deployment.txt &&
29+
$GITHUB_ACTION_PATH/../../../generated/gha/dagster-cloud-${{ runner.arch == 'ARM64' && 'aarch64' || 'x86_64' }}.pex -m dagster_cloud_cli.entrypoint ci branch-deployment prerun_checkout_dir > /tmp/closed-branch-deployment.txt &&
3030
echo "closed_branch_deployment=$(cat /tmp/closed-branch-deployment.txt)" >> "$GITHUB_OUTPUT" &&
3131
echo 'result=skip' >> "$GITHUB_OUTPUT"
3232
shell: bash
50.1 MB
Binary file not shown.
80.2 MB
Binary file not shown.

generated/gha/dagster-cloud.pex

-77.6 MB
Binary file not shown.

generated/gha/dagster-cloud.pex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
dagster-cloud-x86_64.pex

0 commit comments

Comments
 (0)