Port OIDC/KMS trust architecture to release-julia-1.13#564
Open
Keno wants to merge 1 commit into
Open
Conversation
Bring the post-JuliaCI#544 CI architecture to the release-1.13 branch so that release-branch PRs run under the shared `julia-pr` pipeline and release nightlies run under `julia-ci` -> `julia-publish`, instead of the old per-release pipeline slugs (`julia-release-1-dot-13`, `julia-master-scheduled`, `julia-buildkite`). Per-release differences are now expressed as branch *content* selected by julia's in-repo `.buildkite-external-version` pointer, not by runtime `pipeline.slug` checks -- so no separate Buildkite pipelines are needed (the shared `julia-ci`/`julia-publish` already branch-limit to `master release-*`). What changed: * Retire the cryptic secret-management + signed/unsigned pipeline split (cryptic_repo_keys/, secrets/, *.signature, launch_signed_jobs.yml, launch_unsigned_*.yml, launch_upload_jobs.yml, platforms/upload_*.yml). * Adopt main's OIDC + AWS KMS trust infrastructure, the single-upload render_launch_pipeline.py launcher, and the trusted julia-publish / julia-publish-test pipelines. The trailing `wait` + `trigger: julia-publish` is gated on `pipeline.slug == "julia-ci"`. Preserved as release-1.13-specific: * The build/test matrix: every pipelines/**/platforms/*.arches file is kept verbatim from release-julia-1.13 (rootfs v6.00 / docker v7.10, mmtk on the `package_linux` image, Windows CFLAGS), plus launch_powerpc.jl. * The job set: render_launch_pipeline.py is trimmed to omit the JuliaSyntax and JuliaC launch groups (new on main; not part of release-1.13 CI). The juliasyntax.* / juliac/ YAMLs remain in-tree so either can be re-enabled by re-adding its `blocks.append(...)`. NOT yet validated on Buildkite -- needs a CI run under the shared pipelines. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Member
|
Can this be done as a cherry-pick of d52faac instead? Otherwise, I worry that future cherry-picks from master to release-* won't work. |
Member
Author
|
We can invert in and re-create a 1.13-specific commit on top of master rather than porting master to 1.13. |
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bring the post-#544 CI architecture to the release-1.13 branch so that release-branch PRs run under the shared
julia-prpipeline and release nightlies run underjulia-ci->julia-publish, instead of the old per-release pipeline slugs (julia-release-1-dot-13,julia-master-scheduled,julia-buildkite). Per-release differences are now expressed as branch content selected by julia's in-repo.buildkite-external-versionpointer, not by runtimepipeline.slugchecks -- so no separate Buildkite pipelines are needed (the sharedjulia-ci/julia-publishalready branch-limit tomaster release-*).What changed:
wait+trigger: julia-publishis gated onpipeline.slug == "julia-ci".Preserved as release-1.13-specific:
package_linuximage, Windows CFLAGS), plus launch_powerpc.jl.blocks.append(...).NOT yet validated on Buildkite -- needs a CI run under the shared pipelines.