Skip to content

fix(builder): read an archive suite not published yet as empty - #30

Merged
bpapaspyros merged 1 commit into
mainfrom
fix/archive-missing-suite
Oct 28, 2026
Merged

bpapaspyros merged 1 commit into
mainfrom
fix/archive-missing-suite

Conversation

@bpapaspyros

Copy link
Copy Markdown
Contributor

What and why

A build with ARCHIVE_URL reads one suite per channel, <ubuntu>-<channel>. A suite exists only once something was published into it: noble-edge before the first build of main, jammy-stable before the first humble release. apt fails apt-get update --error-on=any on the missing InRelease, so every build reading such a suite stops there, whether or not the package needs anything from it.

  • build_pkg.sh asks for each suite's InRelease before setting the archive up:
    • a 404, or a missing file for a file: archive, leaves that suite out, with <suite> is not published yet;
    • with no suite published, the build goes ahead without the archive. A package that needs a dependency from it still fails at bloom on the unresolved key;
    • any other failure to reach it stops the build with FATAL: <url>: <reason>.
  • archive_build_test.sh (new): build_pkg.sh in ros:jazzy-ros-base against a signed local archive that publishes noble-stable only. CI runs it on the jazzy leg of the builder job.
  • READMEs: the behaviour, and the new test.

Testing

  • packaging/tests/archive_build_test.sh, building duatic_probe_exec: 5 passed.
    • a dependency resolves from stable, and the .deb has Depends: ros-jazzy-duatic-helper-msgs;
    • edge stable with noble-edge missing builds, and says the suite is not published yet;
    • edge alone, with no suite published, builds without the archive and fails at bloom on the unresolved key;
    • an archive signed by another key is refused;
    • an archive at a host that does not resolve is refused with FATAL.
  • The same test against the builder on main: 2 passed, 3 failed, the missing suite among them.
  • Not covered: an HTTP error other than 404, and shellcheck, which is not installed locally.
  • Tests updated, or not applicable
  • Docs updated, or not applicable
  • This changes or removes something existing (if so, title needs ! and means the next release is a major version bump)

@bpapaspyros bpapaspyros self-assigned this Oct 28, 2026
@bpapaspyros
bpapaspyros merged commit f5d4384 into main Oct 28, 2026
8 checks passed
@bpapaspyros
bpapaspyros deleted the fix/archive-missing-suite branch October 28, 2026 12:44
@duatic-release duatic-release Bot mentioned this pull request Oct 28, 2026
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