scripts: source nightly images from armbian/ci releases (moved from os) - #370
Conversation
Nightly (trunk) images now publish to GitHub releases under armbian/ci instead of armbian/os. Adjust the download-index generator accordingly: - generate-armbian-images-json.sh: pull the GitHub release feed from `ci` instead of `os` (community/ci/distribution), and key the dl.armbian.com `nightly/` path prefix on REPO == "ci". The nightly images' file_url now points at github.com/armbian/ci/releases, and REDI_URL keeps the same nightly/<board>/... layout. - update stale comments referencing armbian/os in both scripts. Note: the emitted `download_repository` column is now "ci" for nightly rows (was "os"), reflecting where the assets actually live. Signed-off-by: Igor Pecovnik <igor@armbian.com>
|
Warning Review limit reached
Next review available in: 28 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
WalkthroughUpdated image feed generation to use the GitHub Estimated code review effort: 1 (Trivial) | ~3 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
This PR updates the download-index generator scripts to source nightly (trunk) images from GitHub Releases under armbian/ci instead of armbian/os, aligning the generator with the new publishing location.
Changes:
- Update the GitHub release feed loop to iterate
community ci distribution(replacingoswithci). - Update nightly path prefixing to key off
REPO == "ci"to keepdl.armbian.com/nightly/<board>/...REDI layout. - Refresh stale comments referencing
armbian/osin both scripts.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| scripts/generate-armbian-images-json.sh | Switches nightly release sourcing from os to ci and updates nightly URL prefixing logic/comments. |
| scripts/generate_targets.py | Updates a comment to reflect nightly images now coming from armbian/ci. |
Comments suppressed due to low confidence (1)
scripts/generate-armbian-images-json.sh:623
gh release viewwithout an explicit tag uses GitHub's "latest release" behavior, which excludes prereleases. The new nightly source repoarmbian/cicurrently has its most recent trunk build as a prerelease, so this loop will likely fetch the older non-prerelease (or nothing relevant) instead of the newest nightly assets.
To ensure nightly indexing tracks trunk, resolve the most recent release tag for ci via the releases list endpoint (includes prereleases) and pass that tag to gh release view.
for repo in community ci distribution; do
gh release view --json assets --repo "github.com/armbian/$repo" |
jq -r '.assets[]
| select(.url | test("\\.txt($|\\?)") | not)
| select(.url | test("\\.(asc|sha|torrent)($|\\?)") | not)
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Nightly images moved to releases under armbian/ci, so the release-summary
version no longer comes from os/{nightly,stable}.json. Pull tags from
armbian/ci and pick by period: the newest tag with 'trunk' in its name is
the nightly version, the newest without it is stable. Drops the armbian/os
checkout.
Signed-off-by: Igor Pecovnik <igor@armbian.com>
The manual workflow_dispatch fallback was a stale 'cli/cli' placeholder. Nightly images now release under armbian/ci, so default the pull source there for bare manual runs. Payload-driven dispatches (from ci) still override it via client_payload.pull_repository. Signed-off-by: Igor Pecovnik <igor@armbian.com>
Match the PULL_REPOSITORY default: bare manual runs now fall back to the 'ci' CDN folder. Payload-driven dispatches still override via client_payload.cdn_tag. Signed-off-by: Igor Pecovnik <igor@armbian.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 4 out of 4 changed files in this pull request and generated no new comments.
Comments suppressed due to low confidence (2)
.github/workflows/reporting-release-summary.yml:202
- The stable-version selection uses
git ls-remote --sort=-v:refnameand then picks the first tag that does not containtrunk. Git’s version sort (-v:refname) does not reliably treat a plain release (e.g.v26.8.0) as newer than its prereleases (e.g.v26.8.0-rc1), so this can accidentally select an-rc/-betatag as the “stable” version. Consider filtering stable tags to the expected release-tag format (e.g.v<MAJOR>.<MINOR>.<PATCH>with no suffix) before takinghead -n1.
if [[ "$PERIOD" == "monthly" || "$PERIOD" == "quarterly" ]]; then
VERSION=$(grep -v -- trunk <<<"$TAGS" | head -n1 || true) # stable
else
VERSION=$(grep -- trunk <<<"$TAGS" | head -n1 || true) # nightly
fi
.github/workflows/infrastructure-mirror-repository-artifacts.yml:11
- This workflow’s defaults change from
cli/cli+ostoarmbian/ci+ci, but the PR description doesn’t mention updating this mirroring job. Since this job can be triggered viarepository_dispatchwithout payload overrides, the new defaults may change behavior for existing automation/users. Please confirm this is intentional and, if so, consider documenting it in the PR description (or restore the previous defaults).
PULL_REPOSITORY: "${{ github.event.client_payload.pull_repository || 'armbian/ci' }}" # username/repository
CDN_TAG: "${{ github.event.client_payload.cdn_tag || 'ci' }}" # folder on server
What
Nightly (trunk) images now publish to GitHub releases under
armbian/ciinstead ofarmbian/os. This moves the consuming scripts to the new location.Changes
scripts/generate-armbian-images-json.shcommunity os distribution→community ci distribution(~line 616).oshosted only the nightly images, so it's replaced byci.nightly/dl-path prefix now keys onREPO == "ci"(~line 667).get_download_repository()derives the repo from the asset URL, so nightly images atgithub.com/armbian/ci/releases/...resolve tociand keep thedl.armbian.com/nightly/<board>/...REDI layout.oscomments.scripts/generate_targets.py— refreshed the stalearmbian/oscomment..github/workflows/reporting-release-summary.yml— the release-summary version no longer readsos/{nightly,stable}.json. It now pulls tags fromarmbian/ciand selects by period: the newest tag withtrunkin its name is the nightly version, the newest without it is stable (git ls-remote --sort=-v:refnamefor version ordering). Drops thearmbian/oscheckout.VERSION_OVERRIDEstays a bare version — both consumers (cover.pngURL, releasetag:) re-add thev.The emitted
download_repositorycolumn is nowcifor nightly rows (wasos). If the public download portal categorizes "nightly vs stable" off this field'sosvalue, I can remap it — nothing in this repo depends on it.Still not touched
.github/workflows/data-update-download-index.ymlstill checks outarmbian/os. If the version metadata it reads has also moved, say so and I'll update that checkout too.