r10k 3.4.0 → 3.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/pull_request_template.md +1 -0
- data/.github/workflows/release.yml +36 -0
- data/.travis.yml +2 -0
- data/CHANGELOG.mkd +27 -0
- data/CODEOWNERS +1 -1
- data/README.mkd +2 -2
- data/doc/dynamic-environments/configuration.mkd +1 -1
- data/doc/dynamic-environments/git-environments.mkd +1 -1
- data/doc/dynamic-environments/master-configuration.mkd +28 -58
- data/integration/Rakefile +2 -2
- data/lib/r10k/action/deploy/module.rb +5 -1
- data/lib/r10k/cli/deploy.rb +1 -1
- data/lib/r10k/version.rb +4 -1
- data/r10k.gemspec +5 -1
- data/spec/unit/action/deploy/module_spec.rb +13 -0
- metadata +49 -16
- data/integration/scripts/README.mkd +0 -86
- data/integration/scripts/setup_r10k_env_centos5.sh +0 -23
- data/integration/scripts/setup_r10k_env_centos6.sh +0 -23
- data/integration/scripts/setup_r10k_env_rhel7.sh +0 -23
- data/integration/scripts/setup_r10k_env_sles11.sh +0 -23
- data/integration/scripts/setup_r10k_env_sles12.sh +0 -23
- data/integration/scripts/setup_r10k_env_ubuntu1004.sh +0 -23
- data/integration/scripts/setup_r10k_env_ubuntu1204.sh +0 -23
- data/integration/scripts/setup_r10k_env_ubuntu1404.sh +0 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 564ea5e6a1060b6ceb4a5986857b612de2b47179b57998dbdb2415be1e9e795a
|
4
|
+
data.tar.gz: 4f14b580320afc67069326a81d89e7335cdc6ffe1ec58f45edc497150fdb16e3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 93c8178a7c9dfa287c78d43e89685b68f27e330748d8865c9b9cb6f30b47a9012e33fed10c5b84d0ce37e14c133fc724506dcb57684a4c3f3e48fc2da884ddf2
|
7
|
+
data.tar.gz: b434ab7451f5f064a37de886673e9be6ebfc24628f496f262197a5f2a9c9cdb631922138aa67dd1f6173b1ce515c48bc028fd286939d4134dc0e8f610f4b7676
|
@@ -0,0 +1 @@
|
|
1
|
+
Please add all notable changes to the "Unreleased" section of the CHANGELOG.
|
@@ -0,0 +1,36 @@
|
|
1
|
+
name: Tag and release
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches:
|
6
|
+
- master
|
7
|
+
paths:
|
8
|
+
- 'lib/r10k/version.rb'
|
9
|
+
|
10
|
+
jobs:
|
11
|
+
release:
|
12
|
+
runs-on: ubuntu-latest
|
13
|
+
steps:
|
14
|
+
- uses: actions/checkout@v2
|
15
|
+
with:
|
16
|
+
fetch-depth: '0'
|
17
|
+
- name: Bump version and push tag
|
18
|
+
uses: anothrNick/github-tag-action@1.17.2
|
19
|
+
env:
|
20
|
+
GITHUB_TOKEN: ${{ secrets.PUPPET_RELEASE_GH_TOKEN }}
|
21
|
+
DEFAULT_BUMP: patch
|
22
|
+
WITH_V: false
|
23
|
+
# Uncomment this if the tag and version file become out-of-sync and
|
24
|
+
# you need to tag at a specific version.
|
25
|
+
# CUSTOM_TAG:
|
26
|
+
- name: Build gem
|
27
|
+
uses: scarhand/actions-ruby@master
|
28
|
+
with:
|
29
|
+
args: build *.gemspec
|
30
|
+
- name: Publish gem
|
31
|
+
uses: scarhand/actions-ruby@master
|
32
|
+
env:
|
33
|
+
RUBYGEMS_AUTH_TOKEN: ${{ secrets.RUBYGEMS_AUTH_TOKEN }}
|
34
|
+
with:
|
35
|
+
args: push *.gem
|
36
|
+
|
data/.travis.yml
CHANGED
data/CHANGELOG.mkd
CHANGED
@@ -1,6 +1,17 @@
|
|
1
1
|
CHANGELOG
|
2
2
|
=========
|
3
3
|
|
4
|
+
Unreleased
|
5
|
+
----
|
6
|
+
|
7
|
+
3.4.1
|
8
|
+
----
|
9
|
+
- Add support for Ruby 2.7
|
10
|
+
- (RK-357) Restrict gettext and fast_gettext versions for compatibility with Ruby 2.4
|
11
|
+
- Bump cri to 2.15.10
|
12
|
+
- (RK-360) Allow overriding the cachedir in `deploy module`
|
13
|
+
- Bump puppet_forge to 2.3.0
|
14
|
+
|
4
15
|
3.4.0
|
5
16
|
-----
|
6
17
|
|
@@ -144,6 +155,22 @@ Ruby >= 2.3 official and documented.
|
|
144
155
|
- Unable to parse Puppetfile
|
145
156
|
- Various perfomance improvements
|
146
157
|
|
158
|
+
2.6.8
|
159
|
+
----
|
160
|
+
|
161
|
+
### Changes
|
162
|
+
|
163
|
+
(RK-357) Restrict gettext and fast_gettext versions for compatibility with Ruby 2.4.
|
164
|
+
(RK-358) Update puppet_forge to ~> 2.3.0.
|
165
|
+
|
166
|
+
2.6.7
|
167
|
+
----
|
168
|
+
|
169
|
+
### Changes
|
170
|
+
|
171
|
+
(CDPE-1813) Add module deploy info to .r10k-deploy.json.
|
172
|
+
(RK-351) Update minitar to ~> 0.9.0.
|
173
|
+
|
147
174
|
2.6.6
|
148
175
|
----
|
149
176
|
|
data/CODEOWNERS
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
* @puppetlabs/puppetserver-maintainers
|
1
|
+
* @puppetlabs/puppetserver-maintainers @adrienthebo @dhollinger
|
2
2
|
/docker/ @puppetlabs/pupperware
|
data/README.mkd
CHANGED
@@ -8,11 +8,11 @@ Puppet environment and module deployment
|
|
8
8
|
Description
|
9
9
|
-----------
|
10
10
|
|
11
|
-
[workflow]:
|
11
|
+
[workflow]: https://puppet.com/docs/puppet/latest/environments_about.html
|
12
12
|
|
13
13
|
R10k provides a general purpose toolset for deploying Puppet environments and
|
14
14
|
modules. It implements the [Puppetfile](doc/puppetfile.mkd) format and provides a native
|
15
|
-
implementation of Puppet [
|
15
|
+
implementation of Puppet [environments][workflow].
|
16
16
|
|
17
17
|
Requirements
|
18
18
|
------------
|
@@ -48,7 +48,7 @@ cachedir: '/var/cache/r10k'
|
|
48
48
|
|
49
49
|
|
50
50
|
The cachedir setting defaults to `~/.r10k`. If the HOME environment variable is
|
51
|
-
unset r10k will assume that r10k is being run with the Puppet [`prerun_command`](
|
51
|
+
unset r10k will assume that r10k is being run with the Puppet [`prerun_command`](https://puppet.com/docs/puppet/latest/configuration.html#preruncommand)
|
52
52
|
setting and will set the cachedir default to `/root/.r10k`.
|
53
53
|
|
54
54
|
### proxy
|
@@ -29,7 +29,7 @@ seamlessly reflected in Puppet environments. This means that creating a new Git
|
|
29
29
|
branch creates a new Puppet environment, updating a Git branch will update that
|
30
30
|
environment, and deleting a Git branch will remove that environment.
|
31
31
|
|
32
|
-
R10k supports both [directory and config file environments](https://
|
32
|
+
R10k supports both [directory and config file environments](https://puppet.com/docs/puppet/latest/env_environments.html).
|
33
33
|
Ensure that the basedir for your sources and your puppet config align.
|
34
34
|
|
35
35
|
How it works
|
@@ -1,70 +1,40 @@
|
|
1
1
|
Puppet master configuration
|
2
2
|
===========================
|
3
3
|
|
4
|
-
In order to use
|
4
|
+
In order to use environments, your Puppet masters will need to be
|
5
5
|
configured to load manifests and modules relative to the requested environment.
|
6
|
-
The following settings should be configured in puppet.conf.
|
7
6
|
|
8
|
-
|
7
|
+
This is the default behavior in Puppet 4+
|
9
8
|
|
10
|
-
|
11
|
-
|
12
|
-
settings. When environments is loaded the settings are dynamically set based on
|
13
|
-
the name of the environment, thus allowing environments to be created on the
|
14
|
-
fly.
|
9
|
+
This behavior is controled by the following settings
|
10
|
+
(listed with their default values):
|
15
11
|
|
16
|
-
|
17
|
-
|
12
|
+
```
|
13
|
+
codedir = /etc/puppetlabs/code
|
14
|
+
environmentpath = $codedir/environments
|
15
|
+
basemodulepath = $codedir/modules:/opt/puppetlabs/puppet/share/modules
|
16
|
+
```
|
18
17
|
|
19
|
-
|
20
|
-
|
21
|
-
# If you use a specific site wide manifest
|
22
|
-
manifest = /etc/puppet/environments/$environment/manifests/nodes.pp
|
18
|
+
The environment requested by the agent or assigned to it by an ENC is looked
|
19
|
+
for at `$environmentpath/$environment`.
|
23
20
|
|
24
|
-
|
21
|
+
That environment may have an environment.conf file in its base directory that
|
22
|
+
specifies its own modulepath. If not, the default computed modulepath for that
|
23
|
+
environment is `$environmentpath/$environment/modules:$basemodulepath`.
|
25
24
|
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
25
|
+
These configuration variables are documented at
|
26
|
+
[Puppet Configuration Reference](https://puppet.com/docs/puppet/latest/configuration.html)
|
27
|
+
and their interaction in forming the modulepath is documented at
|
28
|
+
[Directories and the Modulepath](https://puppet.com/docs/puppet/latest/dirs_modulepath.html).
|
29
|
+
More information can be found about environments in general at
|
30
|
+
[Creating Environmnets](https://puppet.com/docs/puppet/latest/environments_creating.html).
|
30
31
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
32
|
+
The evolution to using environments in this way was a gradual one from community
|
33
|
+
conventions to supported feature and there were several intermediate stages that
|
34
|
+
had different configuration requirements within the puppet.conf. Some Puppet
|
35
|
+
documentation from the 3.x and 4.x series may no longer be applicable to the
|
36
|
+
above which solidified in Puppet 4.x.
|
36
37
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
## Puppet >= 3.6.0
|
42
|
-
|
43
|
-
[environmentconf]: http://docs.puppetlabs.com/puppet/latest/reference/config_file_environment.html
|
44
|
-
|
45
|
-
Puppet 3.6.0 adds more fine grained control over how directory environments are
|
46
|
-
configured. Each directory based environment can have an
|
47
|
-
[`environment.conf`][environmentconf] file in the root of that environment that
|
48
|
-
can specify the manifest, modulepath, config_version, and environment_timeout
|
49
|
-
for that specific environment.
|
50
|
-
|
51
|
-
# puppet.conf
|
52
|
-
[master]
|
53
|
-
# None of modulepath, manifestdir, or manifest should be enabled
|
54
|
-
# See http://docs.puppetlabs.com/puppet/latest/reference/environments.html#enabling-directory-environments
|
55
|
-
# for more information on the changes
|
56
|
-
environmentpath = $confdir/environments
|
57
|
-
|
58
|
-
- - -
|
59
|
-
|
60
|
-
# environment.conf
|
61
|
-
manifest = site.pp
|
62
|
-
moduledir = modules:dist
|
63
|
-
|
64
|
-
A deployed environment with a Puppetfile will look something like this:
|
65
|
-
|
66
|
-
.
|
67
|
-
├── Puppetfile
|
68
|
-
├── environment.conf
|
69
|
-
├── dist
|
70
|
-
└── modules
|
38
|
+
If you need to upgrade away from any intermediate setup see
|
39
|
+
[Environments in Puppet 3.8](https://puppet.com/docs/puppet/3.8/environments.html)
|
40
|
+
for examples that may help.
|
data/integration/Rakefile
CHANGED
@@ -44,8 +44,8 @@ EOS
|
|
44
44
|
|
45
45
|
t.add_env do |env|
|
46
46
|
env.name = 'pe_dist_dir'
|
47
|
-
env.message = 'The location to download PE from example "
|
48
|
-
ENV['pe_dist_dir'] ||= "
|
47
|
+
env.message = 'The location to download PE from, for example "https://artifactory.delivery.puppetlabs.net/artifactory/generic_enterprise__local/20XX.X/ci-ready"'
|
48
|
+
ENV['pe_dist_dir'] ||= "https://artifactory.delivery.puppetlabs.net/artifactory/generic_enterprise__local/#{ENV['PE_FAMILY']}/ci-ready"
|
49
49
|
end
|
50
50
|
|
51
51
|
t.add_env do |env|
|
@@ -72,7 +72,11 @@ module R10K
|
|
72
72
|
end
|
73
73
|
|
74
74
|
def allowed_initialize_opts
|
75
|
-
super.merge(environment: true,
|
75
|
+
super.merge(environment: true,
|
76
|
+
cachedir: :self,
|
77
|
+
'no-force': :self,
|
78
|
+
'generate-types': :self,
|
79
|
+
'puppet-path': :self)
|
76
80
|
end
|
77
81
|
end
|
78
82
|
end
|
data/lib/r10k/cli/deploy.rb
CHANGED
@@ -18,7 +18,7 @@ module R10K::CLI
|
|
18
18
|
|
19
19
|
description <<-DESCRIPTION
|
20
20
|
`r10k deploy` implements the Git branch to Puppet environment workflow
|
21
|
-
(https://
|
21
|
+
(https://puppet.com/docs/puppet/latest/environments_about.html).
|
22
22
|
DESCRIPTION
|
23
23
|
|
24
24
|
required nil, :cachedir, 'Specify a cachedir, overriding the value in config'
|
data/lib/r10k/version.rb
CHANGED
@@ -1,3 +1,6 @@
|
|
1
1
|
module R10K
|
2
|
-
|
2
|
+
# When updating to a new major (X) or minor (Y) version, include `#major` or
|
3
|
+
# `#minor` (respectively) in your commit message to trigger the appropriate
|
4
|
+
# release. Otherwise, a new patch (Z) version will be released.
|
5
|
+
VERSION = '3.4.1'
|
3
6
|
end
|
data/r10k.gemspec
CHANGED
@@ -23,7 +23,7 @@ Gem::Specification.new do |s|
|
|
23
23
|
s.license = 'Apache-2.0'
|
24
24
|
|
25
25
|
s.add_dependency 'colored2', '3.1.2'
|
26
|
-
s.add_dependency 'cri',
|
26
|
+
s.add_dependency 'cri', ['>= 2.15.10', '< 3.0.0']
|
27
27
|
|
28
28
|
s.add_dependency 'log4r', '1.1.10'
|
29
29
|
s.add_dependency 'multi_json', '~> 1.10'
|
@@ -31,6 +31,10 @@ Gem::Specification.new do |s|
|
|
31
31
|
s.add_dependency 'puppet_forge', '~> 2.3.0'
|
32
32
|
|
33
33
|
s.add_dependency 'gettext-setup', '~>0.24'
|
34
|
+
# These two pins narrow what is allowed by gettext-setup,
|
35
|
+
# to preserver compatability with Ruby 2.4
|
36
|
+
s.add_dependency 'fast_gettext', '~> 1.1.0'
|
37
|
+
s.add_dependency 'gettext', ['>= 3.0.2', '< 3.3.0']
|
34
38
|
|
35
39
|
s.add_development_dependency 'rspec', '~> 3.1'
|
36
40
|
|
@@ -25,6 +25,10 @@ describe R10K::Action::Deploy::Module do
|
|
25
25
|
it 'can accept a puppet-path option' do
|
26
26
|
described_class.new({ 'puppet-path': '/nonexistent' }, [])
|
27
27
|
end
|
28
|
+
|
29
|
+
it 'can accept a cachedir option' do
|
30
|
+
described_class.new({ cachedir: '/nonexistent' }, [])
|
31
|
+
end
|
28
32
|
end
|
29
33
|
|
30
34
|
describe "with no-force" do
|
@@ -123,4 +127,13 @@ describe R10K::Action::Deploy::Module do
|
|
123
127
|
expect(subject.instance_variable_get(:@puppet_path)).to eq('/nonexistent')
|
124
128
|
end
|
125
129
|
end
|
130
|
+
|
131
|
+
describe 'with cachedir' do
|
132
|
+
|
133
|
+
subject { described_class.new({ config: '/some/nonexistent/path', cachedir: '/nonexistent' }, []) }
|
134
|
+
|
135
|
+
it 'sets puppet_path' do
|
136
|
+
expect(subject.instance_variable_get(:@cachedir)).to eq('/nonexistent')
|
137
|
+
end
|
138
|
+
end
|
126
139
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: r10k
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.4.
|
4
|
+
version: 3.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adrien Thebo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-03-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: colored2
|
@@ -28,16 +28,22 @@ dependencies:
|
|
28
28
|
name: cri
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 2.15.
|
33
|
+
version: 2.15.10
|
34
|
+
- - "<"
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: 3.0.0
|
34
37
|
type: :runtime
|
35
38
|
prerelease: false
|
36
39
|
version_requirements: !ruby/object:Gem::Requirement
|
37
40
|
requirements:
|
38
|
-
- -
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 2.15.10
|
44
|
+
- - "<"
|
39
45
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
46
|
+
version: 3.0.0
|
41
47
|
- !ruby/object:Gem::Dependency
|
42
48
|
name: log4r
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -94,6 +100,40 @@ dependencies:
|
|
94
100
|
- - "~>"
|
95
101
|
- !ruby/object:Gem::Version
|
96
102
|
version: '0.24'
|
103
|
+
- !ruby/object:Gem::Dependency
|
104
|
+
name: fast_gettext
|
105
|
+
requirement: !ruby/object:Gem::Requirement
|
106
|
+
requirements:
|
107
|
+
- - "~>"
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 1.1.0
|
110
|
+
type: :runtime
|
111
|
+
prerelease: false
|
112
|
+
version_requirements: !ruby/object:Gem::Requirement
|
113
|
+
requirements:
|
114
|
+
- - "~>"
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
version: 1.1.0
|
117
|
+
- !ruby/object:Gem::Dependency
|
118
|
+
name: gettext
|
119
|
+
requirement: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: 3.0.2
|
124
|
+
- - "<"
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: 3.3.0
|
127
|
+
type: :runtime
|
128
|
+
prerelease: false
|
129
|
+
version_requirements: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - ">="
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 3.0.2
|
134
|
+
- - "<"
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: 3.3.0
|
97
137
|
- !ruby/object:Gem::Dependency
|
98
138
|
name: rspec
|
99
139
|
requirement: !ruby/object:Gem::Requirement
|
@@ -161,7 +201,9 @@ extensions: []
|
|
161
201
|
extra_rdoc_files: []
|
162
202
|
files:
|
163
203
|
- ".gitattributes"
|
204
|
+
- ".github/pull_request_template.md"
|
164
205
|
- ".github/workflows/docker.yml"
|
206
|
+
- ".github/workflows/release.yml"
|
165
207
|
- ".gitignore"
|
166
208
|
- ".travis.yml"
|
167
209
|
- CHANGELOG.mkd
|
@@ -222,15 +264,6 @@ files:
|
|
222
264
|
- integration/pre-suite/10_git_config.rb
|
223
265
|
- integration/pre-suite/20_pe_r10k.rb
|
224
266
|
- integration/pre-suite/README.mkd
|
225
|
-
- integration/scripts/README.mkd
|
226
|
-
- integration/scripts/setup_r10k_env_centos5.sh
|
227
|
-
- integration/scripts/setup_r10k_env_centos6.sh
|
228
|
-
- integration/scripts/setup_r10k_env_rhel7.sh
|
229
|
-
- integration/scripts/setup_r10k_env_sles11.sh
|
230
|
-
- integration/scripts/setup_r10k_env_sles12.sh
|
231
|
-
- integration/scripts/setup_r10k_env_ubuntu1004.sh
|
232
|
-
- integration/scripts/setup_r10k_env_ubuntu1204.sh
|
233
|
-
- integration/scripts/setup_r10k_env_ubuntu1404.sh
|
234
267
|
- integration/tests/Puppetfile/HTTP_PROXY_affects_forge_source.rb
|
235
268
|
- integration/tests/Puppetfile/HTTP_PROXY_affects_git_source.rb
|
236
269
|
- integration/tests/README.mkd
|
@@ -538,7 +571,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
538
571
|
- !ruby/object:Gem::Version
|
539
572
|
version: '0'
|
540
573
|
requirements: []
|
541
|
-
rubygems_version: 3.0.
|
574
|
+
rubygems_version: 3.0.3
|
542
575
|
signing_key:
|
543
576
|
specification_version: 4
|
544
577
|
summary: Puppet environment and module deployment
|
@@ -1,86 +0,0 @@
|
|
1
|
-
Scripts
|
2
|
-
=======
|
3
|
-
|
4
|
-
This folder contains helper scripts for setting up manual testing environments
|
5
|
-
using [Beaker](https://github.com/puppetlabs/beaker) configuration files. The
|
6
|
-
environments created by these scripts have "r10k" fully configured along with
|
7
|
-
a Git repository with a valid "production" environment.
|
8
|
-
|
9
|
-
These scripts are specific to the Puppet Labs environment and will not work in
|
10
|
-
other environments without alteration!
|
11
|
-
|
12
|
-
## Prerequisites
|
13
|
-
|
14
|
-
To utilize this test scripts you will need to have Ruby 1.9.3 or greater
|
15
|
-
installed on your system along with Bundler. Also, the scripts utilize the
|
16
|
-
"vmpooler" for virtual machine creation. Access to the "vmpooler" machines
|
17
|
-
require having valid SSH private keys located on your local computer. Speak
|
18
|
-
with a QA team member for more information on where to find the necessary
|
19
|
-
SSH keys.
|
20
|
-
|
21
|
-
## Usage
|
22
|
-
|
23
|
-
The scripts are written in Bash and should run on any Linux or Mac system as
|
24
|
-
long as the prerequisites mentioned above are satisfied.
|
25
|
-
|
26
|
-
### Cloning
|
27
|
-
|
28
|
-
First you will need to clone the "[r10k](https://github.com/puppetlabs/r10k)" repository on your local machine:
|
29
|
-
|
30
|
-
```bash
|
31
|
-
git clone git@github.com:puppetlabs/r10k.git
|
32
|
-
```
|
33
|
-
|
34
|
-
### Executing Script
|
35
|
-
|
36
|
-
Navigate to the integration tests "scripts" folder of the "r10k" repository
|
37
|
-
clone:
|
38
|
-
|
39
|
-
```bash
|
40
|
-
cd r10k/integration/scripts
|
41
|
-
```
|
42
|
-
|
43
|
-
There are separate scripts for each supported platform. Select a desired
|
44
|
-
platform and execute the script:
|
45
|
-
|
46
|
-
```bash
|
47
|
-
bash setup_r10k_env_centos6.sh
|
48
|
-
```
|
49
|
-
|
50
|
-
## Connecting to Machines
|
51
|
-
|
52
|
-
The setup process takes about 10 minutes to complete. Once finished Beaker
|
53
|
-
will report that all tests have been run successfully. The output log will
|
54
|
-
list the machines created. The Puppet master will have a name ending with
|
55
|
-
"-master" which you can scrape from the Beaker console output. Example:
|
56
|
-
|
57
|
-
```
|
58
|
-
a9lrs93vnujsrrg.delivery.puppetlabs.net (centos-6-x86_64-master) executed in 1.26 seconds
|
59
|
-
```
|
60
|
-
|
61
|
-
The FQDN of the Puppet master ("a9lrs93vnujsrrg.delivery.puppetlabs.net" in the
|
62
|
-
above example) will be printed to the left of the machine tag. The machine tag
|
63
|
-
is a combination of the platform and role of the virtual machine.
|
64
|
-
|
65
|
-
Now that you have the FQDN you can connect to the machine using SSH:
|
66
|
-
|
67
|
-
```bash
|
68
|
-
ssh -i private_key root@a9lrs93vnujsrrg.delivery.puppetlabs.net
|
69
|
-
```
|
70
|
-
|
71
|
-
*Note:* The correct SSH private key needs to be installed on your local machine
|
72
|
-
first. Speak with a QA representative to get the correct key for "vmpooler"
|
73
|
-
machines.
|
74
|
-
|
75
|
-
## Configuration Details
|
76
|
-
|
77
|
-
Now that you have successfully connected to the Puppet master you can begin
|
78
|
-
manual testing. The script has configured Git on the Puppet master to provide
|
79
|
-
a working "production" environment for "r10k" testing. The Git repository
|
80
|
-
serving the Puppet environments is located at "/git_repos/environments.git".
|
81
|
-
There is a Git clone of the remote repository located at "/root/environments".
|
82
|
-
|
83
|
-
When performing manual "r10k" testing you should utilize the Git clone
|
84
|
-
repository located at "/root/environments". The "r10k" configuration file
|
85
|
-
"/etc/puppetlabs/r10k/r10k.yaml" is already configured to use the remote Git
|
86
|
-
repository for deployments.
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
SCRIPT_PATH=$(pwd)
|
3
|
-
BASENAME_CMD="basename ${SCRIPT_PATH}"
|
4
|
-
SCRIPT_BASE_PATH=`eval ${BASENAME_CMD}`
|
5
|
-
|
6
|
-
if [ $SCRIPT_BASE_PATH = "scripts" ]; then
|
7
|
-
cd ../
|
8
|
-
fi
|
9
|
-
|
10
|
-
export pe_dist_dir=http://neptune.puppetlabs.lan/4.0/ci-ready/
|
11
|
-
export GIT_PROVIDER=shellgit
|
12
|
-
|
13
|
-
bundle install --path .bundle/gems
|
14
|
-
|
15
|
-
bundle exec beaker \
|
16
|
-
--preserve-hosts always \
|
17
|
-
--config configs/pe/centos-5-64mda \
|
18
|
-
--debug \
|
19
|
-
--keyfile ~/.ssh/id_rsa-acceptance \
|
20
|
-
--pre-suite pre-suite \
|
21
|
-
--load-path lib
|
22
|
-
|
23
|
-
rm -rf .bundle
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
SCRIPT_PATH=$(pwd)
|
3
|
-
BASENAME_CMD="basename ${SCRIPT_PATH}"
|
4
|
-
SCRIPT_BASE_PATH=`eval ${BASENAME_CMD}`
|
5
|
-
|
6
|
-
if [ $SCRIPT_BASE_PATH = "scripts" ]; then
|
7
|
-
cd ../
|
8
|
-
fi
|
9
|
-
|
10
|
-
export pe_dist_dir=http://neptune.puppetlabs.lan/4.0/ci-ready/
|
11
|
-
export GIT_PROVIDER=shellgit
|
12
|
-
|
13
|
-
bundle install --path .bundle/gems
|
14
|
-
|
15
|
-
bundle exec beaker \
|
16
|
-
--preserve-hosts always \
|
17
|
-
--config configs/pe/centos-6-64mda \
|
18
|
-
--debug \
|
19
|
-
--keyfile ~/.ssh/id_rsa-acceptance \
|
20
|
-
--pre-suite pre-suite \
|
21
|
-
--load-path lib
|
22
|
-
|
23
|
-
rm -rf .bundle
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
SCRIPT_PATH=$(pwd)
|
3
|
-
BASENAME_CMD="basename ${SCRIPT_PATH}"
|
4
|
-
SCRIPT_BASE_PATH=`eval ${BASENAME_CMD}`
|
5
|
-
|
6
|
-
if [ $SCRIPT_BASE_PATH = "scripts" ]; then
|
7
|
-
cd ../
|
8
|
-
fi
|
9
|
-
|
10
|
-
export pe_dist_dir=http://neptune.puppetlabs.lan/4.0/ci-ready/
|
11
|
-
export GIT_PROVIDER=shellgit
|
12
|
-
|
13
|
-
bundle install --path .bundle/gems
|
14
|
-
|
15
|
-
bundle exec beaker \
|
16
|
-
--preserve-hosts always \
|
17
|
-
--config configs/pe/redhat-7-64mda \
|
18
|
-
--debug \
|
19
|
-
--keyfile ~/.ssh/id_rsa-acceptance \
|
20
|
-
--pre-suite pre-suite \
|
21
|
-
--load-path lib
|
22
|
-
|
23
|
-
rm -rf .bundle
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
SCRIPT_PATH=$(pwd)
|
3
|
-
BASENAME_CMD="basename ${SCRIPT_PATH}"
|
4
|
-
SCRIPT_BASE_PATH=`eval ${BASENAME_CMD}`
|
5
|
-
|
6
|
-
if [ $SCRIPT_BASE_PATH = "scripts" ]; then
|
7
|
-
cd ../
|
8
|
-
fi
|
9
|
-
|
10
|
-
export pe_dist_dir=http://neptune.puppetlabs.lan/4.0/ci-ready/
|
11
|
-
export GIT_PROVIDER=shellgit
|
12
|
-
|
13
|
-
bundle install --path .bundle/gems
|
14
|
-
|
15
|
-
bundle exec beaker \
|
16
|
-
--preserve-hosts always \
|
17
|
-
--config configs/pe/sles-11-64mda \
|
18
|
-
--debug \
|
19
|
-
--keyfile ~/.ssh/id_rsa-acceptance \
|
20
|
-
--pre-suite pre-suite \
|
21
|
-
--load-path lib
|
22
|
-
|
23
|
-
rm -rf .bundle
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
SCRIPT_PATH=$(pwd)
|
3
|
-
BASENAME_CMD="basename ${SCRIPT_PATH}"
|
4
|
-
SCRIPT_BASE_PATH=`eval ${BASENAME_CMD}`
|
5
|
-
|
6
|
-
if [ $SCRIPT_BASE_PATH = "scripts" ]; then
|
7
|
-
cd ../
|
8
|
-
fi
|
9
|
-
|
10
|
-
export pe_dist_dir=http://neptune.puppetlabs.lan/4.0/ci-ready/
|
11
|
-
export GIT_PROVIDER=shellgit
|
12
|
-
|
13
|
-
bundle install --path .bundle/gems
|
14
|
-
|
15
|
-
bundle exec beaker \
|
16
|
-
--preserve-hosts always \
|
17
|
-
--config configs/pe/sles-12-64mda \
|
18
|
-
--debug \
|
19
|
-
--keyfile ~/.ssh/id_rsa-acceptance \
|
20
|
-
--pre-suite pre-suite \
|
21
|
-
--load-path lib
|
22
|
-
|
23
|
-
rm -rf .bundle
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
SCRIPT_PATH=$(pwd)
|
3
|
-
BASENAME_CMD="basename ${SCRIPT_PATH}"
|
4
|
-
SCRIPT_BASE_PATH=`eval ${BASENAME_CMD}`
|
5
|
-
|
6
|
-
if [ $SCRIPT_BASE_PATH = "scripts" ]; then
|
7
|
-
cd ../
|
8
|
-
fi
|
9
|
-
|
10
|
-
export pe_dist_dir=http://neptune.puppetlabs.lan/4.0/ci-ready/
|
11
|
-
export GIT_PROVIDER=shellgit
|
12
|
-
|
13
|
-
bundle install --path .bundle/gems
|
14
|
-
|
15
|
-
bundle exec beaker \
|
16
|
-
--preserve-hosts always \
|
17
|
-
--config configs/pe/ubuntu-1004-64mda \
|
18
|
-
--debug \
|
19
|
-
--keyfile ~/.ssh/id_rsa-acceptance \
|
20
|
-
--pre-suite pre-suite \
|
21
|
-
--load-path lib
|
22
|
-
|
23
|
-
rm -rf .bundle
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
SCRIPT_PATH=$(pwd)
|
3
|
-
BASENAME_CMD="basename ${SCRIPT_PATH}"
|
4
|
-
SCRIPT_BASE_PATH=`eval ${BASENAME_CMD}`
|
5
|
-
|
6
|
-
if [ $SCRIPT_BASE_PATH = "scripts" ]; then
|
7
|
-
cd ../
|
8
|
-
fi
|
9
|
-
|
10
|
-
export pe_dist_dir=http://neptune.puppetlabs.lan/4.0/ci-ready/
|
11
|
-
export GIT_PROVIDER=shellgit
|
12
|
-
|
13
|
-
bundle install --path .bundle/gems
|
14
|
-
|
15
|
-
bundle exec beaker \
|
16
|
-
--preserve-hosts always \
|
17
|
-
--config configs/pe/ubuntu-1204-64mda \
|
18
|
-
--debug \
|
19
|
-
--keyfile ~/.ssh/id_rsa-acceptance \
|
20
|
-
--pre-suite pre-suite \
|
21
|
-
--load-path lib
|
22
|
-
|
23
|
-
rm -rf .bundle
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
SCRIPT_PATH=$(pwd)
|
3
|
-
BASENAME_CMD="basename ${SCRIPT_PATH}"
|
4
|
-
SCRIPT_BASE_PATH=`eval ${BASENAME_CMD}`
|
5
|
-
|
6
|
-
if [ $SCRIPT_BASE_PATH = "scripts" ]; then
|
7
|
-
cd ../
|
8
|
-
fi
|
9
|
-
|
10
|
-
export pe_dist_dir=http://neptune.puppetlabs.lan/4.0/ci-ready/
|
11
|
-
export GIT_PROVIDER=shellgit
|
12
|
-
|
13
|
-
bundle install --path .bundle/gems
|
14
|
-
|
15
|
-
bundle exec beaker \
|
16
|
-
--preserve-hosts always \
|
17
|
-
--config configs/pe/ubuntu-1404-64mda \
|
18
|
-
--debug \
|
19
|
-
--keyfile ~/.ssh/id_rsa-acceptance \
|
20
|
-
--pre-suite pre-suite \
|
21
|
-
--load-path lib
|
22
|
-
|
23
|
-
rm -rf .bundle
|