Skip to content

Move the CI Dockerfiles into dockerfiles/ and build them here - #577

Open
JRPan wants to merge 3 commits into
accel-sim:devfrom
purdue-aalp:docker-images
Open

JRPan wants to merge 3 commits into
accel-sim:devfrom
purdue-aalp:docker-images

Conversation

@JRPan

@JRPan JRPan commented Oct 31, 2026 •

Copy link
Copy Markdown
Collaborator

Retires accel-sim/Dockerfile. Its image branches move here, one file per image, and are built by a new workflow.

What moves

  • Each image branch becomes dockerfiles/<tag>.Dockerfile, built as ghcr.io/accel-sim/accel-sim-framework:<tag>.
  • Ubuntu-24.04-cuda-13.2-minimal comes from Ubuntu 24.04 CUDA 13.2.1 minimal Dockerfile#12. The branch of that name held a 12.8 Dockerfile (FROM ...cuda:12.8.0).
  • Ubuntu-24.04-cuda-12.8-minimal gains the AWS CLI and boto3, so CI's image can also run AWS Batch jobs.
  • Left out, all never published:
    • Ubuntu-18.04-cuda-11.0 and Ubuntu-22.04-cuda-11.7, from 2025.
    • Ubuntu-24.04-cuda-13.1.1-minimal, superseded by 13.2. CUDA 13 cannot build gpu-app-collection's sm_70 targets: nvcc fatal: Unsupported gpu architecture 'compute_70'.
  • Source labels now point at this repo.

When images build

.github/workflows/docker-images.yml builds only the Dockerfiles a change touches. The rules are in .github/scripts/docker-plan.sh, which logs a build/skip reason for each image to the job summary:

  • Pull request: builds the changed images, without pushing.
    • A modified file always builds.
    • An added file builds only if its tag is not on ghcr yet, so this import rebuilds nothing that already exists.
  • Merge to dev: builds again and pushes. pc02 has the PR build's layers cached, so the push is the only real work.
  • workflow_dispatch: builds the tags you name, with an optional no_cache.
  • The jobs run only in accel-sim/accel-sim-framework.

Builds run on tgrogers-raid, which has no docker daemon. The runner account's docker CLI and buildx drive tgrogers-pc02's daemon over DOCKER_HOST=ssh://tgrogers-pc02. The same setup published the current 12.8-minimal from accel-sim/Dockerfile (run 41171899169).

Expected on this PR

One full build, Ubuntu-24.04-cuda-13.2-minimal, which is not on ghcr yet. The other 7 images are skipped. 13.2 will likely hit the same compute_70 error until accel-sim/gpu-app-collection#91 adds CUDA 13 support.

Before merge

Give this repo Write on the ghcr package accel-sim-framework, under Package settings → Manage Actions access. Otherwise the post-merge push is denied.

Testing

  • docker-plan.sh was checked against real history:
    • this import builds only 13.1.1 and 13.2
    • modify / delete / add
    • no change
    • first push of a branch
    • dispatch, including a bad tag
  • All the Dockerfiles pass docker buildx build --call=check with dockerfiles/ as the context.

🤖 Generated with Claude Code

JRPan and others added 3 commits October 31, 2026 01:32
Every image branch of accel-sim/Dockerfile becomes dockerfiles/<tag>.Dockerfile,
with 13.2-minimal taken from accel-sim/Dockerfile#12 (the branch of that name
held a 12.8 Dockerfile). The two never-published 2025 images (18.04/11.0,
22.04/11.7) are left behind. 12.8-minimal gains the AWS CLI and boto3.

docker-images.yml builds only the Dockerfiles a change touches: a modified file
always, an added one only if its tag is not on ghcr yet. PRs build without
pushing; the merge to dev rebuilds from pc02's cache and pushes. Builds run on
tgrogers-raid with DOCKER_HOST pointing at tgrogers-pc02's daemon.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…n's sm_70 targets

It was never published and 13.2-minimal supersedes it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant