Project

Profile

Help

Story #897

As a user, I'd like to get a listing of branches in a remote repository

Added by jortel@redhat.com over 5 years ago. Updated over 1 year ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
High
Start date:
Due date:
% Done:

100%

Estimated time:
Platform Release:
Target Release - OSTree:
1.0.0
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
Pulp 2
Sprint:
Quarter:

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:

  1. User creates the Pulp repository and does NOT specify any branches.
  2. Sync the repository.
  3. Look at the updated information (wherever it's stored).
  4. Update the repository and specify the desired branches picked from the list.
  5. 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.

[1] https://bugzilla.gnome.org/show_bug.cgi?id=748059

Associated revisions

Revision 1705938a View on GitHub
Added by jortel@redhat.com about 5 years ago

ref #897 - support listing remote references.

Revision 0d63af2a View on GitHub
Added by jortel@redhat.com about 5 years ago

ref #897 - fetch and store remote summary information in repo scratchpad.

History

#1 Updated by mhrivnak over 5 years ago

  • Tags Sprint Candidate added

#2 Updated by bmbouter over 5 years ago

  • Sprint Candidate set to Yes
  • Tags deleted (Sprint Candidate)

#3 Updated by bmbouter over 5 years ago

  • Groomed set to No

#4 Updated by jortel@redhat.com over 5 years ago

  • Description updated (diff)

#5 Updated by jortel@redhat.com over 5 years ago

  • Description updated (diff)

#6 Updated by mhrivnak over 5 years ago

  • Priority changed from Normal to High
  • Groomed changed from No to Yes

#7 Updated by jortel@redhat.com about 5 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.

#8 Updated by jortel@redhat.com about 5 years ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to jortel@redhat.com

Storing in the repository scratchpad.

#9 Updated by jortel@redhat.com about 5 years ago

  • % Done changed from 30 to 90

#10 Updated by jortel@redhat.com about 5 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.

#11 Updated by jortel@redhat.com about 5 years ago

  • Status changed from POST to MODIFIED

#12 Updated by jortel@redhat.com about 5 years ago

  • Target Release - OSTree set to master

#13 Updated by rbarlow over 4 years ago

  • Status changed from MODIFIED to CLOSED - CURRENTRELEASE
  • Target Release - OSTree changed from master to 1.0.0

#14 Updated by bmbouter over 1 year ago

  • Tags Pulp 2 added

Please register to edit this issue

Also available in: Atom PDF