Feature request manager for puppet modules metadata.json #33411
Replies: 3 comments 1 reply
-
Hi there, You're asking us to support a new package manager. We need to know some basic information about this package manager first. Please copy/paste the new package manager questionnaire, and fill it out in full. Once the questionnaire is filled out we'll decide if we want to support this new manager. Good luck, The Renovate team |
Beta Was this translation helpful? Give feedback.
-
New package manager questionnaireDid you read our documentation on adding a package manager?
BasicsWhat's the name of the package manager?puppet-module What language(s) does this package manager support?puppet DSL How popular is this package manager?I would describe it as fairly popular. The puppetlabs registry (https://forge.puppet.com/modules) lists > 2000 modules with > 1 billion downloads. On top of that users usually have their own in-house modules which would also benefit from this. Does this language have other (competing?) package managers?
What are the big selling points for this package manager?When handling puppet modules a common maintenance task is to check and update the dependencies. Renovate could be a great help here. IMHO this is a low hanging fruit since the versioning logic (npm) and datasource (puppet-forge) required for this are already part of renovate. So very little implementation would be needed to add some very useful functionality for puppet users. Detecting package filesWhat kind of package files, and names, does this package manager use?Each puppet module contains a single file at the top level called Which
|
Beta Was this translation helpful? Give feedback.
-
Converted to issue: #33994 |
Beta Was this translation helpful? Give feedback.
-
Tell us more.
Puppet modules have a file
metadata.json
which, among other things, describes dependencies on other modules with a version specifier. These version specifiers need to be updated quite often and for many repositories, so an automation via renovate would be quite helpful.The version specifier is using npm smever (at least claimed here https://github.com/puppetlabs/semantic_puppet/blob/main/lib/semantic_puppet/version_range.rb#L6) so I assume the code in https://github.com/renovatebot/renovate/tree/main/lib/modules/versioning/npm can be re-used for parsing the version specs.
Beta Was this translation helpful? Give feedback.
All reactions