Story #897
closedAs a user, I'd like to get a listing of branches in a remote repository
100%
Description
An ostree repository can contain lots of branches. The structure of the repository makes finding the branch names less than straight forward.
For exmaple:
[jortel@localhost el7]$ tree refs
refs
├── heads
│ └── rhel-atomic-host
│ └── 7
│ └── x86_64
│ ├── pulp
│ └── standard
└── remotes
5 directories, 2 files
The branch names are:
- rhel-atomic-host/7/x86_64/pulp
- rhel-atomic-host/7/x86_64/standard
When users are creating an ostree repository in Pulp, they need to specify the list of branches they want synced which is information that users don't necessarily know. Recently, ostree has added support for Summary Files. This is a file contained in the repo that lists the branches. It would be very helpful if Pulp could grab the Summary information and store it in Pulp repository notes or perhaps a more suitable place such as the importer scratchpad.
Example (something like):
Notes:
Available Branches: [
rhel-atomic-host/7/x86_64/pulp,
rhel-atomic-host/7/x86_64/standard
]
The anticipated flow would be:
- User creates the Pulp repository and does NOT specify any branches.
- Sync the repository.
- Look at the updated information (wherever it's stored).
- Update the repository and specify the desired branches picked from the list.
- Sync the repository.
The libostree API needs to be augmented to support fetching the summary. This has been communicated to the ostree team and can be tracked with this bug [1]. I would be good if the Summary file also contains the branch HEAD (commit) metadata so that properties such as version can be provided in additional to just the branch names. Summary files are optional so, Pulp will need to indicates that the information is not available when the Summary does not exist.
Updated by bmbouter almost 8 years ago
- Sprint Candidate set to Yes
- Tags deleted (
Sprint Candidate)
Updated by mhrivnak almost 8 years ago
- Priority changed from Normal to High
- Groomed changed from No to Yes
Updated by jortel@redhat.com over 7 years ago
- % Done changed from 0 to 30
Added plugins.lib.Remote.list_refs().
https://github.com/pulp/pulp_ostree/pull/39
I'm still not convinced that the importer scratchpad is the appropriate place to store this information. It feels wrong to have external systems using scratchpad information. I don't think we guarantee semantic versioning for the scratchpad (nor should we). This is an odd case that needs further discussion.
Updated by jortel@redhat.com over 7 years ago
- Status changed from NEW to ASSIGNED
- Assignee set to jortel@redhat.com
Storing in the repository scratchpad.
Added by jortel@redhat.com over 7 years ago
Added by jortel@redhat.com over 7 years ago
ref #897 - fetch and store remote summary information in repo scratchpad.
Updated by jortel@redhat.com over 7 years ago
- Status changed from ASSIGNED to POST
- % Done changed from 90 to 100
https://github.com/pulp/pulp_ostree/pull/42
But, still need the platform to include the scratchpad in the serialized repository.
Updated by jortel@redhat.com over 7 years ago
- Status changed from POST to MODIFIED
Updated by jortel@redhat.com over 7 years ago
- Target Release - OSTree set to master
Updated by rbarlow about 7 years ago
- Status changed from MODIFIED to CLOSED - CURRENTRELEASE
- Target Release - OSTree changed from master to 1.0.0
ref #897 - support listing remote references.