[Pkg-puppet-devel] Presenting dh-puppet
Antoine Beaupré
anarcat at debian.org
Wed Mar 6 15:27:12 GMT 2024
On 2024-03-01 21:09:53, Jérôme Charaoui wrote:
[...]
> * MODULE UPPER BOUNDS: A lot of modules define not only lower but also
> upper bounds for their dependencies. For example, it's common for
> modules to have a dependency on puppetlabs-stdlib in the form of ">=
> 9.0.0 < 10.0.0". This means that if we update stdlib to v10 in the
> archive, many modules built with dh-puppet would also need to be
> updated. This would help ensure modules packages are always kept up to
> date and working, at the expense of maintenance load. Also, in practice,
> it seems to me that most modules *usually* work anyway with the next
> major version. So, should we honor the upper bounds for module dependencies?
I would rather not, agreed with zigo on this.
> * PUPPET DEPENDENCY: Most module's metadata also declare a dependency
> on Puppet itself, in the "requirements" key. However, in the current
> state of affairs, only about 10% of the Puppet binary packages include
> "puppet" or "puppet-agent" in their dependencies. Should dh-puppet add
> puppet-agent to ${puppet:Depends} and if so, should it also honor the
> declared version requirements? This also might help to ensure the module
> packages are kept up to date as the Puppet agent/server packages
> continue to evolve. Alternatively, we could also choose to ignore this
> and only use "Enhances: puppet-agent" in the control files.
I wouldn't add a hard dependency, but not a strong LOGAF. My thinking is
we might run some CI job or linting task that does not require the
agent, but that could be usefully ran against the installed module...
> This dh-puppet project is only a beginning. If there's enthusiasm for
> it, I'm also planning to work on autodep8 integration. This is where it
> gets interesting, even for those of you who don't use module packages at
> all. Having autopkgtests on these packages will be a great help in
> identifying many Puppet module regressions in testing/sid. The issues
> identified (often trivial, like package name changes) will help us help
> module upstreams keep their modules compatible with the latest Debian,
> and make it easier and more convenient to puppetize our own testing/sid
> hosts.
autopkgtest would be *awesome*! I have slight concerns about the
direction you were taking with that however; on IRC, you seemed to be
saying you want to write manifests specific for the autopkgtest
suite... For me, we should just run the upstream test suite
directly.
I understand this might be more complicated to implement or might just
fail, so you're leaning towards writing a simple "smoke test" with a
`.pp` manifest, and I think that's a good short-term fix. But even if we
do go *that* way, I would much rather see those in the upstream
`examples/` directory, where it can (eventually!) be submitted upstream,
than having a permanent divergence in the `debian/tests/` dir.
Thanks!
a.
--
Don't just do something, sit there.
- Sylvia Boorstein
More information about the Pkg-puppet-devel
mailing list