This project is still in a prototype development stage.
Vlad's Puppet Control Repo.
Contains various executable scripts.
Contains the hiera data files. It's intended to serve as a base only, for public data, with sane defaults. It should be overwritten or amended with data from private sources.
Contains organization-specific roles and profiles. This directory is specified as a modulepath in environment.conf Designing Puppet – Roles and Profiles.
Contains Puppet's manifests:
site.pp: the main manifest
Contains test definitions.
Contains private environment variables.
This file can override several settings whenever the Puppet master is serving nodes assigned to that environment. Config Files: environment.conf
This file contains global variables. All variables declared here are public
This file configures Hiera per environment
r10k needs this file to figure out what component modules you want from the Forge. The result is a modules directory containing all the modules specified in this file, for each environment/branch. The modules directory is listed in environment.conf's modulepath.
- Vagrant: https://www.vagrantup.com/
- Docker: https://www.docker.com/
- RVM: https://rvm.io/
- GIT: https://git-scm.com/
cd dist/profile
bundle install
cd dist/profile
bundle exec rake test
Run default set for the first time (default is just the base profile):
PUPPET_INSTALL_TYPE=agent ORDERING=manifest BEAKER_destroy=no bundle exec rake integration
Subsequent runs:
PUPPET_INSTALL_TYPE=agent ORDERING=manifest BEAKER_destroy=no BEAKER_provision=no bundle exec rake integration
Last run (will destroy the machines):
PUPPET_INSTALL_TYPE=agent ORDERING=manifest BEAKER_provision=no bundle exec rake integration
Complete example:
PUPPET_INSTALL_TYPE=agent ORDERING=manifest BEAKER_destroy=no BEAKER_provision=yes BEAKER_debug=yes BEAKER_set=default BEAKER_role=none bundle exec rake integration
Other commands:
- List nodes:
bundle exec rake beaker_nodes
The following environment variables can be used to influence how beaker works:
BEAKER_role: choose a role fromspec/acceptance/support/roles/*.ymlBEAKER_set: choose a nodeset fromspec/acceptance/nodesets/*.ymldefaults todefaultBEAKER_setfile: specify a nodeset using a full pathBEAKER_provision: set tonoto re-use existing VMsBEAKER_keyfile: specify alternate SSH keyBEAKER_debug: set to any value to enable beaker debug loggingBEAKER_color: set tonoto disable color outputBEAKER_destroy: set tonoto keep the VMs after the test run. Set toonpassto keep the VMs around only after a test failure.ORDERING: How unrelated resources should be ordered when applying a catalog (https://docs.puppetlabs.com/puppet/latest/reference/configuration.html#ordering)PUPPET_INSTALL_TYPE: specify puppet type (one of: pe, foss, agent)PUPPET_INSTALL_VERSION: specify the version to install
cd dist/profile
bundle exec rake test_clean
See CONTRIBUTING.md file.
Licensed under the Apache License, Version 2.0. See LICENSE file.