Project

Profile

Help

Story #984

As a user, all metadata.json fields are stored as Pulp first-class metadata

Added by bmbouter over 5 years ago. Updated over 1 year ago.

Status:
CLOSED - WONTFIX
Priority:
Normal
Assignee:
-
Start date:
Due date:
% Done:

0%

Estimated time:
Platform Release:
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Quarter:

Description

Story #948 causes Pulp to store metadata.json from Puppet modules as a blob on the puppet module unit. Also, Pulp 2.x stores puppet fields like author and name which it introspects from the name of the .tar.gz file. This limits searches from benefitting from the structured form of metadata.json data and is confusing because of similar names in multiple places.

The metadata.json data should become the first class metadata that Pulp tracks. Additionally the fields 'module' and 'username' should be captured from the filename to provide that data for forge API purposes. The final result will be all metadata.json fields

This also should have some unit key implications. The unit key should continue to be <author, name, version> but this metadata.json change will change the semantics of those fields to be driven by metadata.json instead of the .tar.gz filename.

The install distributor will need to be modified to publish the folder name so that it matches the puppet class name in the module's init.pp file. This is due to inconsistency between running puppet modules on the filesystem and the name field specified in many puppet module's metadata.json in practice. For example on the filesystem the apache module needs to be in a directory called apache which matches the puppet class name in init.pp however the name field in metadata.json contains "puppetlabs-apache". If we publish with the name as it would become with the work in this story puppet installs would break.

This has some CLI implications that are described in the deliverables.

Deliverables

  • server side changes described
  • adjust the install distributor so that it doesn't break as described ^
  • A migration to move around all the data for existing puppet modules
  • CLI changes to remove the metadata listing options introduced with #948 since those will now be the default
  • CLI improvements to show more of the metadata.json info.
  • documentation
  • release notes on this change

Related issues

Blocked by Puppet Support - Story #948: Author field in metadata.json not parsedCLOSED - WONTFIX

<a title="Actions" class="icon-only icon-actions js-contextmenu" href="#">Actions</a>

History

#1 Updated by bmbouter over 5 years ago

  • Related to Story #948: Author field in metadata.json not parsed added

#2 Updated by bmbouter over 5 years ago

  • Related to deleted (Story #948: Author field in metadata.json not parsed)

#3 Updated by bmbouter over 5 years ago

  • Blocked by Story #948: Author field in metadata.json not parsed added

#4 Updated by bmbouter over 4 years ago

  • Description updated (diff)

#5 Updated by bmbouter over 4 years ago

  • Description updated (diff)

#6 Updated by ipanova@redhat.com over 4 years ago

This patch could be useful for the implementation of this story. It ensures that puppet module's name corresponds to the name mentioned in metadata.json

#7 Updated by bmbouter over 1 year ago

  • Status changed from NEW to CLOSED - WONTFIX

Pulp 2 is approaching maintenance mode, and this Pulp 2 ticket is not being actively worked on. As such, it is being closed as WONTFIX. Pulp 2 is still accepting contributions though, so if you want to contribute a fix for this ticket, please reopen or comment on it. If you don't have permissions to reopen this ticket, or you want to discuss an issue, please reach out via the developer mailing list.

#8 Updated by bmbouter over 1 year ago

  • Tags Pulp 2 added

Please register to edit this issue

Also available in: Atom PDF