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 new control command for creating control repository #333

Closed
bittner opened this issue Oct 24, 2017 · 6 comments
Closed

Add new control command for creating control repository #333

bittner opened this issue Oct 24, 2017 · 6 comments

Comments

@bittner
Copy link

bittner commented Oct 24, 2017

PDK should support creating and extending a control-repository, which is enabled for validation and testing using PDK (just like the modules created by PDK).

Obsoletes #289 and #332 when implemented.
See also: puppetlabs/control-repo#52

Proposed Solution

Ideally,

  • the validation and test setup currently present in generated modules should be taken over to the proposed Puppet Labs control-repo, and
  • the pdk new control command should generate a control-repo setup that is equivalent to the proposed Puppet Labs control-repo on GitHub.

This way, whether you use PDK or just the GitHub repo as an example, you can trust to get a usable best-practice setup.

@cdenneen
Copy link

@bittner except for the metadata.json check the validation will work on existing control repo so far that I can tell.
The ability to generate a control repo would definitely need to be added and skip the metadata.json check in those cases.

@bittner
Copy link
Author

bittner commented Oct 25, 2017

The Gemfile is needed to make pdk validate work on a control repo, see #289 (comment).

The Rakefile, .fixtures.yml (with links: to the roles and profiles folders, and more dependencies specified in the forge_modules: section), spec/spec_helper.rb and specs in spec/classes/ is needed for pdk test unit.

Not sure how the examples/ would come into play. Then there are also acceptance tests (as seen in the PSICK repo). If that all makes sense it must be generated, and work out of the box. 👍

@ardrigh
Copy link
Contributor

ardrigh commented May 3, 2018

I was talking with my team about adopting PDK, and the files PDK adds when it converts modules, so that it can run the tests and validation.

Currently our control repo has 40+ internal Puppet modules, and converting them all with PDK would potentially add a huge number of duplicate files (Gemfile etc).

It would be good to know if support for testing across control repos is still on the development plan.

I am hopeful we will eventually be able migrate our TravisCI setup to test our control repo solely using simple PDK commands

@ardrigh
Copy link
Contributor

ardrigh commented May 3, 2018

Additional question, has any thought been given to integrating the onceover gem into PDK for control repo testing?

@Nekototori
Copy link

I'd second onceover. PDK is to modules as onceover is to control repos (as it stands today).

@scotje
Copy link
Contributor

scotje commented Jul 12, 2018

This issue was moved to puppetlabs/pdk-planning#10

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

No branches or pull requests

6 participants