-
Notifications
You must be signed in to change notification settings - Fork 603
feat(container-base): add a development-oriented container image profile #15771
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: tomls/base/main
Are you sure you want to change the base?
Conversation
reubeno
commented
Feb 9, 2026
- Converts container-base.kiwi to define multiple kiwi profiles
- Adds new "Container-Build" profile as a dev-oriented build container image that mimics (most of) the contents of the 3.0 OneBranch container image.
- Imports components required for the new profile.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Adds a new development-oriented container image variant by introducing KIWI profiles for container-base and wiring the new profile into the image configuration and schema so it can be selected during builds.
Changes:
- Introduces
Container-BaseandContainer-Buildprofiles incontainer-base.kiwi, with additional dev tooling in the build profile. - Updates
base/images/images.tomlto buildcontainer-baseviaContainer-Baseand adds a newcontainer-buildimage usingContainer-Build. - Extends the
azldevJSON schema to support per-component%checkconfiguration and an image definitionprofilefield; imports additional components needed by the new build image.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| external/schemas/azldev.schema.json | Adds schema support for %check configuration and image build profile. |
| base/images/images.toml | Switches container-base to use a KIWI profile and adds container-build. |
| base/images/container-base/container-base.kiwi | Defines new KIWI profiles and adds dev-tool packages for the build container. |
| base/comps/components.toml | Imports additional components required by the new build-container package set. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "description": "Required justification for skipping the %check section" | ||
| } | ||
| }, | ||
| "additionalProperties": false, | ||
| "type": "object" |
Copilot
AI
Feb 10, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
skip_reason is described as required, but the schema doesn’t enforce it. Add conditional validation so when skip is true, skip_reason becomes required (and ideally non-empty) to keep validation consistent with the description.
| "description": "Required justification for skipping the %check section" | |
| } | |
| }, | |
| "additionalProperties": false, | |
| "type": "object" | |
| "description": "Required justification for skipping the %check section", | |
| "minLength": 1 | |
| } | |
| }, | |
| "additionalProperties": false, | |
| "type": "object", | |
| "allOf": [ | |
| { | |
| "if": { | |
| "properties": { | |
| "skip": { | |
| "const": true | |
| } | |
| }, | |
| "required": [ | |
| "skip" | |
| ] | |
| }, | |
| "then": { | |
| "required": [ | |
| "skip_reason" | |
| ] | |
| } | |
| } | |
| ] |
| "type": "string", | ||
| "title": "Path", | ||
| "description": "Path to the image definition file" | ||
| }, | ||
| "profile": { |
Copilot
AI
Feb 10, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ImageDefinition still doesn’t declare any required fields. Since type/path are essential for locating/building an image definition, consider adding required: ["type", "path"] (leaving profile optional) so invalid configs are rejected by schema validation.
| <package name="azure-cli" /> | ||
| <package name="cmake" /> | ||
| <package name="curl" /> | ||
| <package name="g++" /> |
Copilot
AI
Feb 10, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
g++ is unlikely to be a valid RPM package name in Fedora/Azure Linux (the C++ compiler package is typically gcc-c++). If left as-is, KIWI will fail package resolution for the build profile; switch to the correct package name.
| <package name="g++" /> | |
| <package name="gcc-c++" /> |