Story #8741
closedFull support for "static_context" in modulemd documents
0%
Description
In libmodulemd, it is planned to introduce an extension to version 2 of modulemd documents which differ slightly from the current v2. A new, optional field is added, called "static_context", described thusly:
# context:
# Module context flag
# The context flag serves to distinguish module builds with the
# same name, stream and version and plays an important role in
# automatic module stream name expansion.
#
# If 'static_context' is unset or equal to FALSE:
# Filled in by the buildsystem. A short hash of the module's name,
# stream, version and its expanded runtime dependencies. The exact
# mechanism for generating the hash is unspecified.
#
# Type: AUTOMATIC
#
# Mandatory for module metadata in a yum/dnf repository.
#
# If 'static_context' is set to True:
# The context flag is a string of up to thirteen [a-zA-Z0-9_] characters
# representing a build and runtime configuration for this stream. This
# string is arbitrary but must be unique in this module stream.
#
# Type: MANDATORY
static_context: false
context: c0ffee43
(see that commit also for document examples, and the names of libmodulmd functions)
Basic support is added in a previous issue (linked).
For full support, we need to analyze the impacts of this new flag on dependency solving, and ensure that we do the correct thing, and potentially implement the new behavior
Related issues
Updated by dalley over 3 years ago
- Copied from Story #8638: Basic support for "static_context" in modulemd documents added
Updated by ipanova@redhat.com over 3 years ago
- Sprint changed from Sprint 101 to Sprint 102
Updated by rchan about 3 years ago
- Sprint changed from Sprint 103 to Sprint 104
Updated by dalley about 3 years ago
- Sprint deleted (
Sprint 104) - Quarter changed from Q3-2021 to Q4-2021
Updated by ggainey about 3 years ago
- Status changed from NEW to ASSIGNED
- Assignee set to ggainey
Updated by rchan about 3 years ago
- Sprint changed from Sprint 108 to Sprint 109
Updated by rchan about 3 years ago
- Sprint changed from Sprint 109 to Sprint 110
Updated by rchan almost 3 years ago
- Sprint changed from Sprint 110 to Sprint 111
Updated by ggainey almost 3 years ago
- Status changed from ASSIGNED to CLOSED - CURRENTRELEASE
Proving a negative ("prove static_context does NOT break Pulp3....somehow") is Hard.
After a lot of discussion among and between the Pulp team and the Modularity Gang, the implications of "static_context=True" should have no further impacts on Pulp3. I've done a lot of manual/ad-hoc testing using the released RHEL9-beta-appstream as a source, and have not seen any failures involving depsolving and modules.
You can see examples of the scripts I've been using here:
- https://github.com/ggainey/pulp_startup/blob/main/rhel/sync
- https://github.com/ggainey/pulp_startup/blob/main/rhel9_copy_test/copy.sh
I'm going to close this issue as CURRENTRELEASE. If static_context causes us a specific problem, that should get its own specific issue.