chore(comps): annotate temp-workaround overlays with metadata#17973
Open
liunan-ms wants to merge 3 commits into
Open
chore(comps): annotate temp-workaround overlays with metadata#17973liunan-ms wants to merge 3 commits into
liunan-ms wants to merge 3 commits into
Conversation
Add [metadata] blocks (category + upstream-status) to bootstrap and version-pin workaround overlays, and move rationale comments from the comp.toml files into their overlay files.
Sets default-component-config.overlay-files globally so the new *.overlay.toml files are exercised by PR checks. DO NOT MERGE — revert this commit before merging the PR.
Contributor
There was a problem hiding this comment.
Pull request overview
Moves temporary build workarounds into metadata-annotated per-file overlays and temporarily enables supporting azldev functionality.
Changes:
- Migrates inline overlays for eight components into nine overlay files.
- Adds intent and upstream-status metadata.
- Temporarily updates overlay discovery, azldev, and its schema.
Reviewed changes
Copilot reviewed 20 out of 20 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
.azldev-version |
Pins metadata-capable azldev. |
external/schemas/azldev.schema.json |
Regenerates the azldev schema. |
base/comps/components.toml |
Enables per-file overlay discovery. |
base/comps/pyOpenSSL/pyOpenSSL.comp.toml |
Removes migrated inline overlays. |
base/comps/pyOpenSSL/overlays/0001-pin-python3-cryptography-45.overlay.toml |
Adds cryptography pin overlays and metadata. |
base/comps/nbdkit/nbdkit.comp.toml |
Removes migrated inline overlays. |
base/comps/nbdkit/overlays/0001-disable-libguestfs-plugin-libguestfs.overlay.toml |
Disables unavailable plugins with metadata. |
base/comps/nbdkit/overlays/0002-disable-mingw-subpackage-ship.overlay.toml |
Disables permanent mingw packaging. |
base/comps/migrate/migrate.comp.toml |
Removes migrated inline overlay. |
base/comps/migrate/overlays/0001-add-missing-jmespath-buildrequires.overlay.toml |
Adds bootstrap dependency workaround. |
base/comps/libnbd/libnbd.comp.toml |
Removes migrated inline overlay. |
base/comps/libnbd/overlays/0001-disable-ocaml-bindings-ocaml.overlay.toml |
Disables incompatible OCaml bindings. |
base/comps/golang-mongodb-mongo-driver/golang-mongodb-mongo-driver.comp.toml |
Removes migrated inline overlay. |
base/comps/golang-mongodb-mongo-driver/overlays/0001-add-missing-transitive-buildrequires.overlay.toml |
Adds missing transitive dependency. |
base/comps/golang-github-prometheus-common/golang-github-prometheus-common.comp.toml |
Removes migrated inline overlay. |
base/comps/golang-github-prometheus-common/overlays/0001-add-missing-jmespath-buildrequires.overlay.toml |
Adds missing bootstrap dependency. |
base/comps/golang-github-envoyproxy-control-plane/golang-github-envoyproxy-control-plane.comp.toml |
Removes migrated inline overlay. |
base/comps/golang-github-envoyproxy-control-plane/overlays/0001-disable-dynamic-buildrequires-generation.overlay.toml |
Disables broken dependency generation. |
base/comps/erlang-rebar3/erlang-rebar3.comp.toml |
Removes migrated inline overlay. |
base/comps/erlang-rebar3/overlays/0001-enable-bootstrap-mode-break.overlay.toml |
Restores temporary bootstrap mode. |
| includes = ["**/*.comp.toml", "component-check-disablement.toml", "component-mingw-disablement.toml", "components-publish-channels.toml"] | ||
|
|
||
| [default-component-config] | ||
| overlay-files = ["overlays/*.overlay.toml"] |
Bump .azldev-version to 707663e64a5b07c0690cdc300006974376e6f414 and regenerate external/schemas/azldev.schema.json to match.
a0a06ba to
21c5047
Compare
| type = "spec-search-replace" | ||
| section = "%generate_buildrequires" | ||
| regex = "%go_generate_buildrequires" | ||
| replacement = "# Disabled: transitive dep on dead golang-github-sagikazarmark-crypt (see comp.toml)" |
Comment on lines
+3
to
+4
| [default-component-config] | ||
| overlay-files = ["overlays/*.overlay.toml"] |
| @@ -1 +1 @@ | |||
| 0256227f5434d9e00d7c8501b16848efa400a72b | |||
| 707663e64a5b07c0690cdc300006974376e6f414 | |||
Comment on lines
+122
to
+129
| "overlay-files": { | ||
| "items": { | ||
| "type": "string" | ||
| }, | ||
| "type": "array", | ||
| "title": "Overlay files", | ||
| "description": "Path or glob patterns (relative to the component config file or matched spec directory) matched against the filesystem to locate per-file overlay documents after component config resolution. Use an empty list to disable inherited overlay-file patterns" | ||
| }, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds per-file overlays (
overlays/*.overlay.toml) carrying file-level[metadata](category+upstream-status) for a set of temporary bootstrap / version-pin workarounds.The workarounds fall into two buckets:
category = "azl-temp-workaround",upstream-status = "inapplicable") — missing transitiveBuildRequiresand disabledbindings/plugins caused by bootstrap-mode builds stripping
golang(...)/auto-generated
Requires, or by OCaml/libguestfs not yet being buildable inthe bootstrap tag:
erlang-rebar3,golang-github-prometheus-common,golang-mongodb-mongo-driver,libnbd,migrate,nbdkit(0001),pyOpenSSL.golang-github-envoyproxy-control-planedisables dynamic
BuildRequiresgeneration due to the deadgolang-github-sagikazarmark-crypttransitive dep.nbdkit(0002) disables the mingw subpackage(
category = "azl-pruning",upstream-status = "needs-upstream-hook"); AZLnever ships mingw toolchains.
Changes
Three commits, deliberately kept separate so the two scaffolding pieces can be
dropped independently before merge:
chore(comps): annotate temp-workaround overlays with metadataAdds the per-file overlays with file-level
[metadata]and moves therationale comments out of the
comp.tomlfiles into their overlay files.TEMP: enable overlay-files loading for PR check—REVERT BEFORE MERGE
Sets
default-component-config.overlay-files = ["overlays/*.overlay.toml"]in
components.tomlso every component inherits per-file overlay discovery.Standalone so it can be reverted independently.
chore: pin azldev to 707663e and regenerate schema—ONLY, REVERT BEFORE MERGE
Bumps
.azldev-versionto707663e64a5b07c0690cdc300006974376e6f414andregenerates
external/schemas/azldev.schema.jsonso PR checks run against atool that understands the
overlay-files/metadatafields.Validation
azldev comp renderin the PR check pendingazl-temp-workaroundcategory is present in the pinned tool's schema).
metadatais fingerprint-excluded, so lock files are unaffected.