kitchen-puppet 0.0.14 → 0.0.15
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +7 -1
- data/lib/kitchen-puppet/version.rb +1 -1
- data/lib/kitchen/provisioner/puppet_agent.rb +359 -0
- data/lib/kitchen/provisioner/puppet_apply.rb +566 -552
- data/provisioner_options.md +77 -2
- metadata +3 -2
data/provisioner_options.md
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
# Provisioner Options
|
2
|
+
# Puppet Apply Provisioner Options
|
3
3
|
|
4
4
|
key | default value | Notes
|
5
5
|
----|---------------|--------
|
@@ -31,8 +31,9 @@ require_chef_for_busser | true | Install chef as currently needed by busser to r
|
|
31
31
|
resolve_with_librarian_puppet | true | Use librarian_puppet to resolve modules if a Puppetfile is found
|
32
32
|
puppet_config_path | | path of custom puppet.conf file
|
33
33
|
puppet_environment | nil | puppet environment for running puppet apply
|
34
|
+
remove_puppet_repo | false | remove copy of puppet repository on server after running puppet
|
34
35
|
|
35
|
-
## Configuring Provisioner Options
|
36
|
+
## Puppet Apply Configuring Provisioner Options
|
36
37
|
|
37
38
|
The provisioner can be configured globally or per suite, global settings act as defaults for all suites, you can then customise per suite, for example:
|
38
39
|
|
@@ -79,3 +80,77 @@ It can be beneficial to keep different Puppet layouts for different suites. Rath
|
|
79
80
|
When specifying a puppet version, you must use this format: "3.6.2-1puppetlabs1". I have
|
80
81
|
no idea why Puppet versioned their repository with a trailing
|
81
82
|
"-1puppetlabs1", but there it is.
|
83
|
+
|
84
|
+
|
85
|
+
# Puppet Agent Provisioner Options
|
86
|
+
|
87
|
+
key | default value | Notes
|
88
|
+
----|---------------|--------
|
89
|
+
puppet_version | "latest"| desired version, affects apt installs.
|
90
|
+
puppet_platform | naively tries to determine | OS platform of server
|
91
|
+
require_puppet_repo | true | Set if using a puppet install from yum or apt repo
|
92
|
+
puppet_apt_repo | "http://apt.puppetlabs.com/puppetlabs-release-precise.deb"| apt repo
|
93
|
+
puppet_yum_repo | "https://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm"| yum repo
|
94
|
+
require_puppet_omnibus | false | Set if using omnibus puppet install
|
95
|
+
puppet_omnibus_url | | omnibus puppet install location.
|
96
|
+
puppet_omnibus_remote_path | "/opt/puppet" | Server Installation location of an omnibus puppet install.
|
97
|
+
puppet_detailed_exitcodes | nil | Provide transaction information via exit codes.
|
98
|
+
puppet_logdest | nil | Where to send messages. Choose between syslog, the console, and a log file.
|
99
|
+
puppet_masterport | nil | The port on which to contact the puppet master.
|
100
|
+
puppet_test | false | Enable the most common options used for testing.
|
101
|
+
puppet_onetime | true | Run the configuration once.
|
102
|
+
puppet_no_daemonize | true | Do not send the process into the background.
|
103
|
+
puppet_server | nil | will default to 'puppet'. Useful for interactively running when used with the --no-daemonize option.
|
104
|
+
puppet_waitforcert | '0' | Time to wait for certificate if agent does not yet have certificates
|
105
|
+
puppet_certname | nil | Set the certname (unique ID) of the client
|
106
|
+
puppet_digest | nil | Change the certificate fingerprinting digest algorithm. The default is SHA256
|
107
|
+
puppet_debug| false| Enable full debugging logging on puppet run
|
108
|
+
puppet_verbose| false| Extra information logging on puppet run
|
109
|
+
puppet_noop| false| puppet runs in a no-op or dry-run mode
|
110
|
+
update_package_repos| true| update OS repository metadata
|
111
|
+
custom_facts| Hash.new | Hash to set the puppet facts before running puppet apply
|
112
|
+
chef_bootstrap_url |"https://www.getchef.com/chef/install.sh"| the chef (needed for busser to run tests)
|
113
|
+
puppet_agent_command | nil | Overwrite the puppet agent command. Needs "sudo -E puppet agent" as a prefix.
|
114
|
+
require_chef_for_busser | true | Install chef as currently needed by busser to run tests
|
115
|
+
puppet_config_path | | path of custom puppet.conf file
|
116
|
+
|
117
|
+
|
118
|
+
## Puppet Agent Configuring Provisioner Options
|
119
|
+
|
120
|
+
The provisioner can be configured globally or per suite, global settings act as defaults for all suites, you can then customise per suite, for example:
|
121
|
+
|
122
|
+
---
|
123
|
+
driver:
|
124
|
+
name: vagrant
|
125
|
+
|
126
|
+
provisioner:
|
127
|
+
name: puppet_agent
|
128
|
+
puppet_debug: true
|
129
|
+
puppet_verbose: true
|
130
|
+
puppet_server: puppetmaster-nocm-ubuntu-1204
|
131
|
+
|
132
|
+
platforms:
|
133
|
+
- name: nocm_ubuntu-12.04
|
134
|
+
driver_plugin: vagrant
|
135
|
+
driver_config:
|
136
|
+
box: nocm_ubuntu-12.04
|
137
|
+
box_url: http://puppet-vagrant-boxes.puppetlabs.com/ubuntu-server-12042-x64-vbox4210-nocm.box
|
138
|
+
|
139
|
+
suites:
|
140
|
+
- name: default
|
141
|
+
|
142
|
+
|
143
|
+
In this example, vagrant will download a box for ubuntu 1204 with no configuration management installed, then install the latest puppet and run puppet agent against a puppet master at puppetmaster-nocm-ubuntu-1204
|
144
|
+
|
145
|
+
NOTE: It is important that the server can resolve the hostname ip address of the puppetmaster, in this case puppetmaster-nocm-ubuntu-1204
|
146
|
+
and the puppetmaster must be able to resolve the hostname ip address address of the hostname of the node running puppet agent.
|
147
|
+
This can be done by settings in the /etc/hosts files before running puppet.
|
148
|
+
|
149
|
+
NOTE: For testing it is possible to set the puppetmaster to autosign the certificate of a node by created a file /etc/puppet/autosign.conf that contains an *.
|
150
|
+
|
151
|
+
|
152
|
+
To override a setting at the suite-level, specify the setting name under the suite:
|
153
|
+
|
154
|
+
suites:
|
155
|
+
- name: default
|
156
|
+
manifest: foobar.pp
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitchen-puppet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.15
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-10-
|
12
|
+
date: 2014-10-10 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: ! '== DESCRIPTION:
|
15
15
|
|
@@ -34,6 +34,7 @@ files:
|
|
34
34
|
- kitchen-puppet.gemspec
|
35
35
|
- lib/kitchen-puppet/version.rb
|
36
36
|
- lib/kitchen/provisioner/puppet/librarian.rb
|
37
|
+
- lib/kitchen/provisioner/puppet_agent.rb
|
37
38
|
- lib/kitchen/provisioner/puppet_apply.rb
|
38
39
|
- lib/kitchen/provisioner/puppet_apply_spec.rb
|
39
40
|
- provisioner_options.md
|