Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add missing dep on puppetlabs/selinux_core #355

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

jhoblitt
Copy link
Member

This module is using the selmodule resource type provided by
puppetlabs/selinux_core.

This module is using the `selmodule` resource type provided by
puppetlabs/selinux_core.
@jhoblitt jhoblitt requested a review from smortex July 14, 2022 22:42
@kenyon
Copy link
Member

kenyon commented Jul 14, 2022

I think we don't list core modules in metadata.json.

@jhoblitt
Copy link
Member Author

The dep not being declared breaks rspec tests on my control repo.

jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 14, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
@smortex
Copy link
Member

smortex commented Jul 15, 2022

Hum, yeah the *_core modules are bundled in the AIO packages, so I guess your tests are not running in an AIO context. On FreeBSD, we do not ship the *_core modules with the puppet package, so I add the *_core modules to my control-repo Puppetfile. Would that be an option for you?

Note that the bundled *_core module are not the latest ones, the only case I think we add dependencies for them to metadata.json is when we need a version that is more recent than what is shipped in the AIO package.

@ekohl
Copy link
Member

ekohl commented Jul 15, 2022

Yes, *_core modules are in a weird place. We do need to specify them in .fixtures.yml because we use the gem to install them (which does not contain them). I suppose your control repo has a similar problem.

@jhoblitt
Copy link
Member Author

I suspect everyone on this thread knows the history of the *_core modules and we don't need to rehash it.

The specific reason why this has caused me grief is that I use r10k with a branched env workflow. As everyone knows, r10k doesn't do [any] dependency resolution. The result of this is that changes to the Puppetfile have occasionally broken rspec tests as the *_core modules are not bundled with the rubygem puppet release (librarian-pupet is also run as a github action to catch incompatible recursive dependencies). Almost all of the *_core modules were already present in my Puppetfile and puppetlabs/selinux_core will have to be added.

However, I am arguing that puppetlabs/selinux_core is a proper dependency of this module. The fact that this module works on AIO without it declared does not mean this dependency does not exist. I would also argue that metadata.json would be usable as the source of fixtures for the vast majority of modules if the true dependencies on *_core were declared. The only downside to adding *_core deps into metadata.json is the potential maintenance burden of some day having to remove them if they become unnecessary.

The real question is: Do voxpupuli modules only support AIO provided puppet?

@jhoblitt
Copy link
Member Author

If stdlib is added to vendor_modules in a future AIO release, would we then have to remove the dep on stdlib from metadata.json in all voxpupuli modules?

jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 15, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 19, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 20, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 20, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 20, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 20, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 20, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 20, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 20, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 21, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 21, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 27, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 28, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 28, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 28, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 28, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 29, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
jhoblitt added a commit to lsst-it/lsst-control that referenced this pull request Jul 29, 2022
puppetlabs/selinux_core is an undeclared dep of puppet/selinux.

See: voxpupuli/puppet-selinux#355
@jcpunk
Copy link
Contributor

jcpunk commented Feb 22, 2023

Personally, I'd rather see the dependencies declared even if they are guaranteed to be satisfied. Completeness is nice.

@jhoblitt
Copy link
Member Author

I would like listing all deps to be the official voxpupuli policy.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants