Skip to content

Preserve the source license when signing a payload package - #84

Closed
original-el8 wants to merge 1 commit into
mainfrom
fix/81-sign-license
Closed

original-el8 wants to merge 1 commit into
mainfrom
fix/81-sign-license

Conversation

@original-el8

@original-el8 original-el8 commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes #81. Reported by @mark-yong.

ignition sign replaced the publisher identity and copied the target's empty license fields over the source package's recorded license, so promoted packages loaded without a license disclosure.

Promotion now keeps the source package's license_name and license_link unless the target publisher supplies its own. Payloads, executable bytes, and execution contracts are unchanged.

Validation:

  • cargo test --locked --manifest-path helios/Cargo.toml --features runtime-package,server --lib package::conversion::tests — 43 passed.
  • .venv/bin/python -m pytest tests/preparation/test_native_publication.py tests/cli/test_production_signing.py -q — 22 passed.
  • Rebuilt flare-heliopause from the branch before the Python run.

Signing replaces the publisher identity, and promotion copied the target's
empty license fields over the source package's recorded license. The resulting
package loaded without a license disclosure. Carry the source license name and
link unless the target publisher supplies one.

Promotion metadata changes only; payloads, executable bytes, and execution
contracts are unchanged.

Validation: 4 conversion promotion tests; 22 native publication and production
signing tests.

Fixes #81
Reported by @mark-yong in #81.

Design-Signed-Off-By: ds41; design-review=babb
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.

ignition sign writes an empty license into the signed package

1 participant