Skip to content

CI: opt-in apt-only focal/amd64 and bullseye/armhf targets (3.1.x) - #1741

Merged
FelixHelin merged 2 commits into
release/3.1.xfrom
felixhelin-3.1.x-legacy-apt-targets
Oct 31, 2026
Merged

FelixHelin merged 2 commits into
release/3.1.xfrom
felixhelin-3.1.x-legacy-apt-targets

Conversation

@FelixHelin

@FelixHelin FelixHelin commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Backwards-compat apt packages for existing installs: build and publish fledge 3.1.x for Ubuntu 20.04 (focal) amd64 and Debian bullseye armhf, apt only (no Docker images).

  • New targets workflow_dispatch input plus a plan job that generates the build and apt-install-test matrices from a single table.
  • focal/amd64 and bullseye/armhf are opt-in only, so default PR, push and release runs build exactly the same set as before.
  • With targets set:
    • Docker jobs are skipped.
    • Only codenames that received packages are regenerated, signed and published. Other suites are left untouched, so 3.1.1 debs already in the pool are not rebuilt.
  • DOCKER_BUILD_RECORD_UPLOAD=false: .dockerbuild record artifacts matched pattern: fledge-* and broke the v3.1.1 publish (attempts 3 and 4).

Intended use after merge: push a bare tag v3.1.1-rc.1 on the merge commit (no GitHub Release, so nothing triggers automatically), then dispatch this workflow on that tag with dry_run=false and targets="focal/amd64 bullseye/armhf". That publishes fledge 3.1.1~rc.1 to focal-rc and bullseye-rc (armhf) only. v3.1.1 is untouched.

Add a 'targets' workflow_dispatch input and a plan job that builds the
build/apt-install-test matrices from one table. focal/amd64 and
bullseye/armhf are opt-in only, so default PR/release runs are unchanged.
When targets is set, Docker images are skipped and only the codenames
that got packages are regenerated, signed and published.

Also stop docker/build-push-action uploading .dockerbuild record
artifacts, which the fledge-* download pattern picked up and broke the
v3.1.1 publish.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: FelixHelin <felix.dumitrascu@helindata.com>
@FelixHelin
FelixHelin requested a review from helin-ado October 30, 2026 18:59
Light builds were only used for noble; bullseye/armhf now uses them too.
Same sed as the full plugin Dockerfile.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: FelixHelin <felix.dumitrascu@helindata.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The post-publish sanity check still hardcodes bookworm/amd64 instead of a selected target, so targeted RC publishing can fail after upload or validate an untouched package.

1 open issue
What changed in this PR

Adds opt-in, apt-only builds for existing Fledge 3.1.x installations on focal/amd64 and bullseye/armhf, while preserving the default build targets.

Changes:

  • Generates build and apt-install-test matrices from a shared target table.
  • Scopes repository updates to selected suites, skips Docker jobs for targeted runs, and disables Docker build-record uploads.
  • Updates the lightweight C++ plugin build image to use Debian archive repositories for bullseye.
File Description
.github/​workflows/​publish-apt-azure.yml Adds target selection, dynamic matrices, scoped apt publishing, and Docker controls.
.ci/​plugin-deb/​cpp/​Dockerfile.light Redirects bullseye package sources to Debian archives and disables expiry checks.

Review effort: Balanced

Comment thread .github/workflows/publish-apt-azure.yml Resolved
@FelixHelin
FelixHelin merged commit 785c9f5 into release/3.1.x Oct 31, 2026
27 checks passed
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.

2 participants