Skip to content

ci(build-kernel): add flavours and s3_prefix inputs - #67

Merged
Bjordis Collaku (bjordiscollaku) merged 1 commit into
qualcomm-linux:mainfrom
GuanquanTian:ci/premerge-flavor-indep
Aug 6, 2026
Merged

ci(build-kernel): add flavours and s3_prefix inputs#67
Bjordis Collaku (bjordiscollaku) merged 1 commit into
qualcomm-linux:mainfrom
GuanquanTian:ci/premerge-flavor-indep

Conversation

@GuanquanTian

@GuanquanTian guanquan (GuanquanTian) commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Summary

flavours: ALL (default) builds every flavour for nightly/manual runs; any other value is a space-separated list of flavour names (e.g. "qcom", "qcom
qcom-rt"), matching how Canonical declares them in debian.qcom/rules.d/arm64.mk. binary-indep is always built alongside the selected flavours, since
linux-headers-/linux-tools- depend on it.

s3_prefix: callers declare their S3 destination prefix directly (e.g. premerge for premerge-pr.yml, default temp).

docs/PIPELINE.md documents both inputs.

@bjordiscollaku Bjordis Collaku (bjordiscollaku) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thanks Guanquan, this is what I asked for. Couple of things.

The S3 routing won't work as written. github.event_name in a reusable workflow is the caller's event, not workflow_call, so this always lands on temp. You can see it on the premerge run for #61, it reports event=pull_request with Build check / Build as a job inside it. Probably cleanest as an explicit s3_prefix input that premerge passes, rather than inferring it from the trigger.

And I want to walk back my own suggestion on binary-indep. I told you to fold it into the flavor list yesterday, but linux-headers-*-FLAVOUR and linux-tools-*-FLAVOUR both depend on the indep packages, so leaving it out gives you packages that won't install. Right now premerge is the only caller that passes it, everything else gets it for free via binary. Better if the input is just flavour names and indep always gets built. Still one input, just one you can't get wrong.

While we're at it, worth making the list space separated to match how Canonical declares them in debian.qcom/rules.d/arm64.mk (flavours = qcom qcom-rt) rather than a comma separated form we'd be inventing. Same unit, same separator, and it drops straight into the TARGET string make consumes.

Rest inline.

Comment thread .github/workflows/build-kernel.yml Outdated
Comment thread .github/workflows/build-kernel.yml Outdated
…lt, explicit s3_prefix

Rename the flavor input to flavours and switch from a comma-separated
token list to space-separated flavour names, matching how Canonical
declares flavours in debian.qcom/rules.d/arm64.mk (e.g. "qcom qcom-rt").
binary-indep is no longer an optional token: it is always built
alongside the selected flavours, since linux-headers-*/linux-tools-*
packages depend on it and previously could be built into an
uninstallable combination if the caller omitted it.

Replace the S3 upload destination's github.event_name check with an
explicit s3_prefix input. A reusable workflow's own github.event_name
reflects the caller's original triggering event, not "workflow_call",
so premerge-pr.yml calls were always landing under pkg/temp/ instead of
the intended pkg/premerge/. Callers now declare their prefix directly.

Updates docs/PIPELINE.md to match.

Signed-off-by: Guanquan Tian <guanquan@qti.qualcomm.com>
@GuanquanTian guanquan (GuanquanTian) changed the title ci(build-kernel): make flavor/binary-indep configurable inputs ci(build-kernel): add flavours and s3_prefix inputs Aug 6, 2026

@bjordiscollaku Bjordis Collaku (bjordiscollaku) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

All three addressed, thanks.

Traced the target resolution: ALL gives binary, qcom gives binary-indep binary-qcom, qcom qcom-rt gives binary-indep binary-qcom binary-qcom-rt, and an empty value falls back to ALL via inputs.flavours || 'ALL'. s3_prefix is declared on workflow_call only, so dispatch and schedule fall through to temp, and premerge passes premerge.

@bjordiscollaku
Bjordis Collaku (bjordiscollaku) merged commit 75955ff into qualcomm-linux:main Aug 6, 2026
11 of 12 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