Skip to content

Add V100, CPU coverage tests and release build pipelines#119

Open
fluidnumerics-joe wants to merge 4 commits intomainfrom
v100-builds
Open

Add V100, CPU coverage tests and release build pipelines#119
fluidnumerics-joe wants to merge 4 commits intomainfrom
v100-builds

Conversation

@fluidnumerics-joe
Copy link
Member

Summary

  • Split the monolithic Buildkite pipeline into per-target coverage test pipelines (AMD MI210, NVIDIA V100, x86 CPU) with separate build, test, and coverage steps
  • Add Dockerfiles for release builds (docker/x86_gfx90a/, docker/x86_sm70/, docker/x86/)
  • Add release build pipeline that builds, tests, and pushes Docker images to higherordermethods/self after coverage tests pass
  • SELFish base image SHA recorded as an OCI label on each release image

Test plan

  • Verify MI210 coverage pipeline runs (build → test → coverage → codecov upload)
  • Verify V100 coverage pipeline runs (build → test → coverage → codecov upload)
  • Verify x86 CPU coverage pipeline runs
  • Verify release Docker builds trigger after coverage tests pass
  • Verify release images pass ctest on target hardware
  • Verify release images are pushed to dockerhub with correct tags

🤖 Generated with Claude Code

fluidnumerics-joe and others added 4 commits March 14, 2026 20:20
Move MI210 pipeline to its own file and add a new V100 coverage
pipeline using CUDA backend. The parent pipeline.yml now uploads
both sub-pipelines.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add Dockerfiles for x86_gfx90a, x86_sm70, and x86 (CPU-only) release
builds. Add CPU coverage test pipeline. Add release-builds pipeline
that builds, tests, and pushes Docker images to dockerhub after
coverage tests pass.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Build steps no longer request GPU resources. Only test steps require
GPUs. Coverage generation and upload run without GPU allocation.
Release pipeline depends_on updated to match new test step keys.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
PRs run coverage tests then release build/test (no push). Main branch
runs only release build, test, and push to dockerhub. Uses Buildkite
if conditions to select the appropriate pipeline.

Co-Authored-By: Claude Opus 4.6 (1M context) <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