build(refactor-release): publish edge artifact aliases - #12750
DariuszPorowski wants to merge 3 commits into
Conversation
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dp/split-build-workflows #12750 +/- ##
============================================================
- Coverage 59.80% 59.79% -0.01%
============================================================
Files 777 777
Lines 45906 45906
============================================================
- Hits 27452 27451 -1
- Misses 18454 18455 +1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Functional Tests - upgrade-noncloud1 tests 0 ✅ 5m 5s ⏱️ For more details on these failures, see this check. Results for commit f902278. ♻️ This comment has been updated with latest results. |
There was a problem hiding this comment.
Pull request overview
This PR updates the Radius release/build and install surfaces to treat edge as the mutable “main-branch” alias for Radius-owned OCI artifacts and multi-arch container images, while preserving latest temporarily for compatibility. It also adjusts the Helm chart logic to keep externally published images (Deployment Engine and dashboard) on latest when deploying edge charts.
Changes:
- Add
latest→edgealiasing for main-branch CLI OCI artifacts and multi-arch images in GitHub Actions / Make targets. - Switch edge installer paths (
install.sh,install.ps1) and test coverage (test-install.sh) to pull:edge. - Update Helm chart image tag behavior and unit tests to use
edgefor Radius-owned images while retaininglatestfor externally published images on edge charts.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/__build-cli.yaml |
Tags main-branch CLI OCI artifacts from latest to edge. |
.github/workflows/__build-images.yaml |
Adds a main-branch job step to alias multi-arch images from latest to edge. |
build/docker.mk |
Introduces docker-multi-arch-tag targets to create manifest-only alias tags. |
deploy/install.sh |
Switches edge CLI pull reference from :latest to :edge. |
deploy/install.ps1 |
Switches edge CLI pull reference from :latest to :edge. |
deploy/test-install.sh |
Updates the edge-with-oras test to stub oras and assert the :edge OCI reference. |
deploy/Chart/templates/_helpers.tpl |
Makes edge a first-class tag for Radius-owned images and adds helper logic for external-image tagging. |
deploy/Chart/templates/de/deployment.yaml |
Routes the Deployment Engine image tag through the external-image tag helper. |
deploy/Chart/templates/dashboard/deployment.yaml |
Routes the dashboard image tag through the external-image tag helper. |
deploy/Chart/tests/helpers_test.yaml |
Updates assertions for edge tag usage and adds coverage for external images staying on latest for edge charts. |
deploy/Chart/README.md |
Documents the latest deprecation for main-branch consumption and the move to edge. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| echo "$*" > "${ORAS_ARGS_FILE}" | ||
| while [[ $# -gt 0 ]]; do | ||
| if [[ "$1" == "-o" ]]; then | ||
| output_dir="$2" | ||
| break |
480fc37 to
e0c4a70
Compare
Functional Tests - corerp-cloud32 tests 31 ✅ 19m 3s ⏱️ Results for commit 8c43de5. ♻️ This comment has been updated with latest results. |
e0c4a70 to
1911077
Compare
1911077 to
8c025fa
Compare
8c025fa to
8c43de5
Compare
8c43de5 to
4757e88
Compare
4757e88 to
11de984
Compare
Functional Tests - corerp-noncloud190 tests 188 ✅ 59m 4s ⏱️ Results for commit f33dc86. ♻️ This comment has been updated with latest results. |
ead6402 to
f33dc86
Compare
Functional Tests - kubernetes-noncloud23 tests 23 ✅ 8m 32s ⏱️ Results for commit 7aac739. ♻️ This comment has been updated with latest results. |
There was a problem hiding this comment.
🟡 Changes recommended
The PowerShell edge path lacks regression coverage, and related contributor documentation remains stale.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 11/11 changed files
- Comments generated: 3
- Review effort level: Balanced
| } | ||
|
|
||
| $downloadURL = "ghcr.io/$GitHubOrg/rad/$DetectedOS-$($DetectedArch):latest" | ||
| $downloadURL = "ghcr.io/$GitHubOrg/rad/$DetectedOS-$($DetectedArch):edge" |
| .PHONY: docker-multi-arch-tag | ||
| docker-multi-arch-tag: $(DOCKER_TAG_MULTI_TARGETS) ## Adds a tag to all published multi-architecture images. |
| {{/* External images retain their independently published latest tag for edge charts. */}} | ||
| {{- define "radius.externalversiontag" -}} | ||
| {{- $version := . | toString -}} | ||
| {{- if eq $version "edge" -}}latest{{- else -}}{{ $version }}{{- end -}} |
bba3fdc to
7aac739
Compare
46859ac to
53efc93
Compare
d277966 to
d787043
Compare
d787043 to
aef976b
Compare
aef976b to
ca3692f
Compare
Radius functional test overviewClick here to see the test run details
Test Status⌛ Building Radius and pushing container images for functional tests... |
Signed-off-by: Dariusz Porowski <3431813+DariuszPorowski@users.noreply.github.com>
Signed-off-by: Dariusz Porowski <3431813+DariuszPorowski@users.noreply.github.com>
Signed-off-by: Dariusz Porowski <3431813+DariuszPorowski@users.noreply.github.com>
ca3692f to
f902278
Compare
Radius functional test overviewClick here to see the test run details
Test Status |
Summary
Publish mutable
edgealiases for main-branch CLI OCI artifacts and multi-architecture container images while retaininglatestas a temporary compatibility alias. Switch edge Helm charts and installers to consumeedgefor Radius-owned artifacts.Deployment Engine and dashboard images remain on their independently published
latesttags until those repositories adopt theedgeconvention.Reason for change
This is PR 6 in GitHub stack #12738 and depends on #12749. It gives development artifacts their target
edgesemantics beforelatestis repointed to the most recent stable release at cutover.How to test
make test-helmhelm lint deploy/Chartmake -n docker-multi-arch-tag DOCKER_REGISTRY=ghcr.io/radius-project DOCKER_SOURCE_TAG_VERSION=latest DOCKER_TAG_VERSION=edgeactionlint .github/workflows/__build-cli.yaml .github/workflows/__build-images.yamlghalint runscoped to the changed workflowszizmor --pedantic .github/workflows/__build-cli.yaml .github/workflows/__build-images.yamlshellcheck deploy/install.sh deploy/test-install.shpnpm exec markdownlint-cli2 deploy/Chart/README.md --config ./.github/linters/.markdownlint-cli2.yamlFile change summary
.github/workflows/__build-cli.yamllatesttoedge..github/workflows/__build-images.yaml,build/docker.mklatesttoedgealiases for all published images.deploy/Chart/templates/,deploy/Chart/tests/helpers_test.yamledge, retain external image compatibility, and test both paths.deploy/install.sh,deploy/install.ps1,deploy/test-install.sh:edgeand verify the OCI reference deterministically.deploy/Chart/README.mdlatestdeprecation and migration toedge.eng/design-notes/tools/2026-09-goreleaser-stack-review/pr-06-edge-tags.md