Project

Profile

Help

Story #897

closed

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

Added by jortel@redhat.com almost 9 years ago. Updated almost 5 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
High
Sprint/Milestone:
-
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

Actions #1

Updated by mhrivnak almost 9 years ago

  • Tags Sprint Candidate added
Actions #2

Updated by bmbouter almost 9 years ago

  • Sprint Candidate set to Yes
  • Tags deleted (Sprint Candidate)
Actions #3

Updated by bmbouter almost 9 years ago

  • Groomed set to No
Actions #4

Updated by jortel@redhat.com almost 9 years ago

  • Description updated (diff)
Actions #5

Updated by jortel@redhat.com almost 9 years ago

  • Description updated (diff)
Actions #6

Updated by mhrivnak almost 9 years ago

  • Priority changed from Normal to High
  • Groomed changed from No to Yes
Actions #7

Updated by jortel@redhat.com over 8 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.

Actions #8

Updated by jortel@redhat.com over 8 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 8 years ago

Revision 1705938a | View on GitHub

ref #897 - support listing remote references.

Actions #9

Updated by jortel@redhat.com over 8 years ago

  • % Done changed from 30 to 90

Added by jortel@redhat.com over 8 years ago

Revision 0d63af2a | View on GitHub

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

Actions #10

Updated by jortel@redhat.com over 8 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.

Actions #11

Updated by jortel@redhat.com over 8 years ago

  • Status changed from POST to MODIFIED
Actions #12

Updated by jortel@redhat.com over 8 years ago

  • Target Release - OSTree set to master
Actions #13

Updated by rbarlow about 8 years ago

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

Updated by bmbouter almost 5 years ago

  • Tags Pulp 2 added

Also available in: Atom PDF