onceover 3.3.1 → 3.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +1 -0
- data/features/cache.feature +33 -0
- data/features/step_definitions/cache.rb +38 -0
- data/features/step_definitions/common.rb +3 -3
- data/features/support/cache_helper.rb +55 -0
- data/lib/onceover/testconfig.rb +32 -13
- data/onceover.gemspec +1 -1
- data/spec/fixtures/controlrepos/caching/.gitignore +1 -0
- data/spec/fixtures/controlrepos/caching/.travis.yml +2 -0
- data/spec/fixtures/controlrepos/caching/Gemfile +5 -0
- data/spec/fixtures/controlrepos/caching/Puppetfile +17 -0
- data/spec/fixtures/controlrepos/caching/Rakefile +1 -0
- data/spec/fixtures/controlrepos/caching/deleteme.txt +0 -0
- data/spec/fixtures/controlrepos/caching/environment.conf +2 -0
- data/spec/fixtures/controlrepos/caching/hieradata/common.yaml +2 -0
- data/spec/fixtures/controlrepos/caching/hieradata/nodes/example-node.yaml +1 -0
- data/spec/fixtures/controlrepos/caching/manifests/site.pp +32 -0
- data/spec/fixtures/controlrepos/caching/site/profile/manifests/base.pp +5 -0
- data/spec/fixtures/controlrepos/caching/site/profile/manifests/example.pp +3 -0
- data/spec/fixtures/controlrepos/caching/site/role/manifests/database_server.pp +7 -0
- data/spec/fixtures/controlrepos/caching/site/role/manifests/example.pp +3 -0
- data/spec/fixtures/controlrepos/caching/site/role/manifests/webserver.pp +7 -0
- data/spec/fixtures/controlrepos/caching/spec/factsets/README.md +7 -0
- data/spec/fixtures/controlrepos/caching/spec/onceover.yaml +53 -0
- data/spec/fixtures/controlrepos/caching/spec/pre_conditions/README.md +24 -0
- metadata +24 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8516d34019e0c6c9d8f09fcd8e6f7249dec8b8dd
|
4
|
+
data.tar.gz: b569f4341e7681fe099d090f0f9b245346110145
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b77f2b94c07a87304af205b19bb4cf6ad4c7d7c89b67067c47275b5e20dfcb064cb4bf4d1edca03dd337ffaada10dcecd434c086d90a0104e855e64a14c1175f
|
7
|
+
data.tar.gz: 171dcee3922127e988696645a68fc48286ed2a54316d0dbbb86249650b9cda947ab01a01fe12f18a71dab0c8784bcf3c9ce9f3b3530d29f7643fbc953da66ccc
|
data/.travis.yml
CHANGED
@@ -0,0 +1,33 @@
|
|
1
|
+
@cache
|
2
|
+
Feature: Create and maintain a .onceover cache
|
3
|
+
Onceover should be able to cache things in the .onceover directory for speed
|
4
|
+
increases and debugging of external modules. This cache should remain
|
5
|
+
up-to-date and should exactly mirror what would be created on the Puppet
|
6
|
+
master.
|
7
|
+
|
8
|
+
Background:
|
9
|
+
Given onceover executable
|
10
|
+
|
11
|
+
Scenario: Creating a cache
|
12
|
+
Given control repo "caching"
|
13
|
+
When I run onceover command "run spec"
|
14
|
+
Then the cache should exist
|
15
|
+
And the cache should contain all controlrepo files
|
16
|
+
|
17
|
+
Scenario: Creating a new file
|
18
|
+
Given control repo "caching"
|
19
|
+
When I create a file "example.txt"
|
20
|
+
And I run onceover command "run spec"
|
21
|
+
Then "example.txt" should be cached correctly
|
22
|
+
|
23
|
+
Scenario: Deleting a file
|
24
|
+
Given control repo "caching"
|
25
|
+
When I delete a file "deleteme.txt"
|
26
|
+
And I run onceover command "run spec"
|
27
|
+
Then "deleteme.txt" should be deleted from the cache
|
28
|
+
|
29
|
+
Scenario: Caching hidden files
|
30
|
+
Given control repo "caching"
|
31
|
+
When I create a file ".hidden/.hiddenfile"
|
32
|
+
And I run onceover command "run spec"
|
33
|
+
Then ".hidden/.hiddenfile" should be cached correctly
|
@@ -0,0 +1,38 @@
|
|
1
|
+
Then(/^the cache should exist$/) do
|
2
|
+
cache_dir = File.join(@repo.root_folder,'.onceover')
|
3
|
+
expect(File.directory?(cache_dir)).to be true
|
4
|
+
end
|
5
|
+
|
6
|
+
Then(/^the cache should contain all controlrepo files/) do
|
7
|
+
# Get all root files
|
8
|
+
puts "Calculating MD5 hashes in repo"
|
9
|
+
repo_digest = Cache_Helper.digest(@repo.root_folder)
|
10
|
+
puts "#{repo_digest.count} MD5 hashes calculated"
|
11
|
+
puts "Calculating MD5 hashes in cache"
|
12
|
+
cache_digest = Cache_Helper.digest(File.join(@repo.root_folder,'.onceover/etc/puppetlabs/code/environments/production/'))
|
13
|
+
puts "#{cache_digest.count} MD5 hashes calculated"
|
14
|
+
expect(cache_digest).to include(repo_digest)
|
15
|
+
end
|
16
|
+
|
17
|
+
When(/^I (\w+) a file "(.*)"$/) do |action,file|
|
18
|
+
require 'securerandom'
|
19
|
+
actual_file = Pathname.new(File.join(@repo.root_folder,file))
|
20
|
+
case action
|
21
|
+
when "create"
|
22
|
+
FileUtils.mkdir_p(actual_file.dirname)
|
23
|
+
File.write(actual_file,SecureRandom.hex)
|
24
|
+
when "delete"
|
25
|
+
FileUtils.rm(actual_file)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
Then(/^"(.*)" should be cached correctly$/) do |file|
|
30
|
+
original_digest = Cache_Helper.digest(File.join(@repo.root_folder,file))
|
31
|
+
cache_digest = Cache_Helper.digest(File.join(@repo.root_folder,'.onceover/etc/puppetlabs/code/environments/production/',file))
|
32
|
+
expect(original_digest).to include(cache_digest)
|
33
|
+
end
|
34
|
+
|
35
|
+
Then(/^"([^"]*)" should be deleted from the cache$/) do |file|
|
36
|
+
deleted_file = Pathname.new(File.join(@repo.root_folder,'.onceover/etc/puppetlabs/code/environments/production/',file))
|
37
|
+
expect(deleted_file.exist?).to be false
|
38
|
+
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
Given
|
1
|
+
Given(/^onceover executable$/) do
|
2
2
|
@cmd = Command_Helper.new
|
3
3
|
end
|
4
4
|
|
@@ -20,13 +20,13 @@ Given(/^control repo "([^"]*)" without "([^"]*)"$/) do |controlrepo_name, filena
|
|
20
20
|
FileUtils.rm_rf "#{@repo.root_folder}/#{filename}"
|
21
21
|
end
|
22
22
|
|
23
|
-
When
|
23
|
+
When(/^I run onceover command "([^"]*)"$/) do |command|
|
24
24
|
@cmd.command = command
|
25
25
|
puts @cmd
|
26
26
|
@cmd.run
|
27
27
|
end
|
28
28
|
|
29
|
-
Then
|
29
|
+
Then(/^I see help for commands: "([^"]*)"$/) do |commands|
|
30
30
|
# Get chunk of output between COMMANDS and OPTION, there should be help section
|
31
31
|
commands_help = @cmd.output[/COMMANDS(.*)OPTIONS/m, 1]
|
32
32
|
commands.split(',').each do |command|
|
@@ -0,0 +1,55 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
|
3
|
+
class Cache_Helper
|
4
|
+
|
5
|
+
def cache_exists?
|
6
|
+
File.directory?(dir + '/.onceover')
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.digest(path, opts = {
|
10
|
+
exceptions: ['.','..','.onceover']
|
11
|
+
})
|
12
|
+
if File.directory?(path)
|
13
|
+
# Get the list of files
|
14
|
+
children = Cache_Helper.get_children(path, opts[:exceptions])
|
15
|
+
else
|
16
|
+
children = [File.expand_path(path)]
|
17
|
+
end
|
18
|
+
|
19
|
+
# Calculate hashes
|
20
|
+
hashes = children.map do |child_path|
|
21
|
+
if File.directory? child_path
|
22
|
+
:directory
|
23
|
+
else
|
24
|
+
Digest::MD5.file(child_path)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
root = Pathname.new(File.expand_path(path))
|
29
|
+
# Move pathnames back to relative
|
30
|
+
children.map! do |child_path|
|
31
|
+
Pathname.new(child_path).relative_path_from root
|
32
|
+
end
|
33
|
+
Hash[children.zip(hashes)]
|
34
|
+
end
|
35
|
+
|
36
|
+
def self.get_children(dir, exclusions)
|
37
|
+
root_files = []
|
38
|
+
files = []
|
39
|
+
Dir.chdir(dir) do
|
40
|
+
# Get all root files
|
41
|
+
root_files = Dir.glob('*',File::FNM_DOTMATCH)
|
42
|
+
root_files = root_files - exclusions
|
43
|
+
root_files.each do |file|
|
44
|
+
files << file
|
45
|
+
files << Dir.glob("#{file}/**/*",File::FNM_DOTMATCH)
|
46
|
+
end
|
47
|
+
files.flatten!
|
48
|
+
# Calculate absolue paths
|
49
|
+
files.map! do |file|
|
50
|
+
File.expand_path(file)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
files
|
54
|
+
end
|
55
|
+
end
|
data/lib/onceover/testconfig.rb
CHANGED
@@ -181,27 +181,33 @@ class Onceover
|
|
181
181
|
#
|
182
182
|
# If there are more situations like this we can add them to this array as
|
183
183
|
# full paths
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
184
|
+
excluded_dirs = []
|
185
|
+
excluded_dirs << Pathname.new("#{repo.root}/.onceover")
|
186
|
+
excluded_dirs << Pathname.new(ENV['GEM_HOME']) if ENV['GEM_HOME']
|
187
|
+
|
188
|
+
controlrepo_files = get_children_recursive(Pathname.new(repo.root))
|
189
|
+
|
190
|
+
# Exclude the files that should be skipped
|
191
|
+
controlrepo_files.delete_if do |path|
|
192
|
+
parents = [path]
|
193
|
+
path.ascend do |parent|
|
194
|
+
parents << parent
|
195
|
+
end
|
196
|
+
parents.any? { |x| excluded_dirs.include?(x) }
|
189
197
|
end
|
190
198
|
|
191
|
-
|
192
|
-
|
193
|
-
files_to_copy = (controlrepo_files - excluded_files).delete_if { |path| Pathname(path).directory? }
|
194
|
-
folders_to_copy = (controlrepo_files - excluded_files).keep_if { |path| Pathname(path).directory? }
|
199
|
+
folders_to_copy = controlrepo_files.select { |x| x.directory? }
|
200
|
+
files_to_copy = controlrepo_files.select { |x| x.file? }
|
195
201
|
|
196
202
|
logger.debug "Creating temp dir as a staging directory for copying the controlrepo to #{repo.tempdir}"
|
197
203
|
temp_controlrepo = Dir.mktmpdir('controlrepo')
|
198
204
|
|
199
205
|
logger.debug "Creating directories under #{temp_controlrepo}"
|
200
|
-
FileUtils.mkdir_p(folders_to_copy.map { |folder| "#{temp_controlrepo}/#{(
|
206
|
+
FileUtils.mkdir_p(folders_to_copy.map { |folder| "#{temp_controlrepo}/#{(folder.relative_path_from(Pathname(repo.root))).to_s}"})
|
201
207
|
|
202
208
|
logger.debug "Copying files to #{temp_controlrepo}"
|
203
209
|
files_to_copy.each do |file|
|
204
|
-
FileUtils.cp(file,"#{temp_controlrepo}/#{(
|
210
|
+
FileUtils.cp(file,"#{temp_controlrepo}/#{(file.relative_path_from(Pathname(repo.root))).to_s}")
|
205
211
|
end
|
206
212
|
|
207
213
|
# When using puppetfile vs deploy with r10k, we want to respect the :control_branch
|
@@ -219,10 +225,10 @@ class Onceover
|
|
219
225
|
File.write("#{temp_controlrepo}/Puppetfile", new_puppetfile_contents)
|
220
226
|
|
221
227
|
|
222
|
-
FileUtils.mkdir_p("#{repo.tempdir}/#{repo.environmentpath}
|
228
|
+
FileUtils.mkdir_p("#{repo.tempdir}/#{repo.environmentpath}")
|
223
229
|
|
224
230
|
logger.debug "Copying #{temp_controlrepo} to #{repo.tempdir}/#{repo.environmentpath}/production"
|
225
|
-
FileUtils.cp_r(
|
231
|
+
FileUtils.cp_r(temp_controlrepo, "#{repo.tempdir}/#{repo.environmentpath}/production")
|
226
232
|
FileUtils.rm_rf(temp_controlrepo)
|
227
233
|
|
228
234
|
# Pull the trigger! If it's not already been pulled
|
@@ -331,5 +337,18 @@ class Onceover
|
|
331
337
|
tests
|
332
338
|
end
|
333
339
|
|
340
|
+
private
|
341
|
+
|
342
|
+
def get_children_recursive(pathname)
|
343
|
+
results = []
|
344
|
+
results << pathname
|
345
|
+
pathname.each_child do |child|
|
346
|
+
results << child
|
347
|
+
if child.directory?
|
348
|
+
results << get_children_recursive(child)
|
349
|
+
end
|
350
|
+
end
|
351
|
+
results.flatten
|
352
|
+
end
|
334
353
|
end
|
335
354
|
end
|
data/onceover.gemspec
CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |s|
|
6
6
|
s.name = "onceover"
|
7
|
-
s.version = "3.3.
|
7
|
+
s.version = "3.3.2"
|
8
8
|
s.authors = ["Dylan Ratcliffe"]
|
9
9
|
s.email = ["dylan.ratcliffe@puppet.com"]
|
10
10
|
s.homepage = "https://github.com/dylanratcliffe/onceover"
|
@@ -0,0 +1 @@
|
|
1
|
+
.onceover
|
@@ -0,0 +1,17 @@
|
|
1
|
+
forge "http://forge.puppetlabs.com"
|
2
|
+
#
|
3
|
+
# I want to download some modules to check if r10k feature in Onceover works correctly.
|
4
|
+
#
|
5
|
+
|
6
|
+
# Versions should be updated to be the latest at the time you start
|
7
|
+
mod "puppetlabs/stdlib", '4.11.0'
|
8
|
+
|
9
|
+
# Modules from Git
|
10
|
+
# Examples: https://github.com/puppetlabs/r10k/blob/master/doc/puppetfile.mkd#examples
|
11
|
+
mod 'apache',
|
12
|
+
:git => 'https://github.com/puppetlabs/puppetlabs-apache',
|
13
|
+
:commit => '83401079053dca11d61945bd9beef9ecf7576cbf'
|
14
|
+
|
15
|
+
#mod 'apache',
|
16
|
+
# :git => 'https://github.com/puppetlabs/puppetlabs-apache',
|
17
|
+
# :branch => 'docs_experiment'
|
@@ -0,0 +1 @@
|
|
1
|
+
require 'onceover/rake_tasks'
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
---
|
@@ -0,0 +1,32 @@
|
|
1
|
+
## site.pp ##
|
2
|
+
|
3
|
+
# This file (/etc/puppetlabs/puppet/manifests/site.pp) is the main entry point
|
4
|
+
# used when an agent connects to a master and asks for an updated configuration.
|
5
|
+
#
|
6
|
+
# Global objects like filebuckets and resource defaults should go in this file,
|
7
|
+
# as should the default node definition. (The default node can be omitted
|
8
|
+
# if you use the console and don't define any other nodes in site.pp. See
|
9
|
+
# http://docs.puppetlabs.com/guides/language_guide.html#nodes for more on
|
10
|
+
# node definitions.)
|
11
|
+
|
12
|
+
## Active Configurations ##
|
13
|
+
|
14
|
+
# Disable filebucket by default for all File resources:
|
15
|
+
#https://docs.puppet.com/pe/2015.3/release_notes.html#filebucket-resource-no-longer-created-by-default
|
16
|
+
File { backup => false }
|
17
|
+
|
18
|
+
# DEFAULT NODE
|
19
|
+
# Node definitions in this file are merged with node data from the console. See
|
20
|
+
# http://docs.puppetlabs.com/guides/language_guide.html#nodes for more on
|
21
|
+
# node definitions.
|
22
|
+
|
23
|
+
# The default node definition matches any node lacking a more specific node
|
24
|
+
# definition. If there are no other nodes in this file, classes declared here
|
25
|
+
# will be included in every node's catalog, *in addition* to any classes
|
26
|
+
# specified in the console for that node.
|
27
|
+
|
28
|
+
node default {
|
29
|
+
# This is where you can declare classes for all nodes.
|
30
|
+
# Example:
|
31
|
+
# class { 'my_class': }
|
32
|
+
}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
# Factsets
|
2
|
+
|
3
|
+
This directory is where we put any custom factsets that we want to use. They can be generated by running `puppet facts` on the target system.
|
4
|
+
|
5
|
+
**Hot tip:** If you already have factsets in here when you run `onceover init` they will be picked up and added to the config file Automatically
|
6
|
+
|
7
|
+
More info: https://github.com/dylanratcliffe/onceover#factsets
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# Classes to be tested
|
2
|
+
classes:
|
3
|
+
- role::database_server
|
4
|
+
- role::webserver
|
5
|
+
- role::example
|
6
|
+
|
7
|
+
# Nodes to tests classes on, this refers to a 'factset' or 'nodeset'
|
8
|
+
# depending on weather you are running 'spec' or 'acceptance' tests
|
9
|
+
nodes:
|
10
|
+
- AIX-7.1-powerpc
|
11
|
+
- SLES-12.1-64
|
12
|
+
- Debian-6.0.10-32
|
13
|
+
- CentOS-6.6-64
|
14
|
+
- Ubuntu-12.04-32
|
15
|
+
- Ubuntu-12.04-64
|
16
|
+
- CentOS-6.6-32
|
17
|
+
- Debian-6.0.10-64
|
18
|
+
- AIX-6.1-powerpc
|
19
|
+
- Windows_Server-2012r2-64
|
20
|
+
- Debian-7.8-32
|
21
|
+
- Windows_Server-2008r2-64
|
22
|
+
- SLES-11.3-64
|
23
|
+
- Debian-7.8-64
|
24
|
+
- solaris-10_u9-sparc-64
|
25
|
+
- solaris-11.2-sparc-64
|
26
|
+
- Ubuntu-14.04-32
|
27
|
+
- CentOS-5.11-64
|
28
|
+
- CentOS-5.11-32
|
29
|
+
- CentOS-7.0-64
|
30
|
+
- Ubuntu-14.04-64
|
31
|
+
|
32
|
+
# You can group classes here to save typing
|
33
|
+
class_groups:
|
34
|
+
|
35
|
+
# You can group nodes here to save typing
|
36
|
+
# We have created a 'non_windows_nodes' group because we can't
|
37
|
+
# give you Windows vagrant boxes to test with because licensing,
|
38
|
+
# we can give you fact sets though so go crazy with spec testing!
|
39
|
+
node_groups:
|
40
|
+
windows_nodes:
|
41
|
+
- Windows_Server-2012r2-64
|
42
|
+
- Windows_Server-2008r2-64
|
43
|
+
non_windows_nodes:
|
44
|
+
include: 'all_nodes'
|
45
|
+
exclude: 'windows_nodes'
|
46
|
+
|
47
|
+
test_matrix:
|
48
|
+
- all_nodes:
|
49
|
+
classes: 'all_classes'
|
50
|
+
tests: 'spec'
|
51
|
+
- non_windows_nodes:
|
52
|
+
classes: 'all_classes'
|
53
|
+
tests: 'acceptance'
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# Pre Conditions
|
2
|
+
|
3
|
+
This folder should contain any \*.pp files that you want to be included in every test.
|
4
|
+
|
5
|
+
A common use of this is defining resources that may not exist in the catalog when you are running tests. For example, if we are using a resource that tries to restart the `pe-puppetserver` service, unless it is compiled on a Puppet Maser the `pe-puppetserver` service will not exist and the catalog will fail to compile. To get around this we can create a .pp file and define the resource like so:
|
6
|
+
|
7
|
+
``` puppet
|
8
|
+
# We are not going to actually have this service anywhere on our servers but
|
9
|
+
# our code needs to refresh it. This is to trick puppet into doing nothing
|
10
|
+
service { 'pe-puppetserver':
|
11
|
+
ensure => 'running',
|
12
|
+
enable => false,
|
13
|
+
hasrestart => false, # Force Puppet to use start and stop to restart
|
14
|
+
start => 'echo "Start"', # This will always exit 0
|
15
|
+
stop => 'echo "Stop"', # This will also always exit 0
|
16
|
+
hasstatus => false, # Force puppet to use our command for status
|
17
|
+
status => 'echo "Status"', # This will always exit 0 and therefore Puppet will think the service is running
|
18
|
+
provider => 'base',
|
19
|
+
}
|
20
|
+
```
|
21
|
+
|
22
|
+
This will mean that the `pe-puppetserver` service is in the catalog for spec testing and will even allow you to try to restart it during acceptance tests without the service actually being present.
|
23
|
+
|
24
|
+
More info: https://github.com/dylanratcliffe/onceover#using-workarounds
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onceover
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.3.
|
4
|
+
version: 3.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dylan Ratcliffe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-01-
|
11
|
+
date: 2018-01-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -341,13 +341,16 @@ files:
|
|
341
341
|
- factsets/Windows_Server-2012r2-64.json
|
342
342
|
- factsets/solaris-10_u9-sparc-64.json
|
343
343
|
- factsets/solaris-11.2-sparc-64.json
|
344
|
+
- features/cache.feature
|
344
345
|
- features/help.feature
|
345
346
|
- features/init.feature
|
346
347
|
- features/run.feature
|
347
348
|
- features/show.feature
|
349
|
+
- features/step_definitions/cache.rb
|
348
350
|
- features/step_definitions/common.rb
|
349
351
|
- features/step_definitions/init.rb
|
350
352
|
- features/step_definitions/run.rb
|
353
|
+
- features/support/cache_helper.rb
|
351
354
|
- features/support/command_helper.rb
|
352
355
|
- features/support/controlrepo_helper.rb
|
353
356
|
- features/support/env.rb
|
@@ -379,6 +382,24 @@ files:
|
|
379
382
|
- spec/fixtures/controlrepos/basic/site/role/manifests/database_server.pp
|
380
383
|
- spec/fixtures/controlrepos/basic/site/role/manifests/example.pp
|
381
384
|
- spec/fixtures/controlrepos/basic/site/role/manifests/webserver.pp
|
385
|
+
- spec/fixtures/controlrepos/caching/.gitignore
|
386
|
+
- spec/fixtures/controlrepos/caching/.travis.yml
|
387
|
+
- spec/fixtures/controlrepos/caching/Gemfile
|
388
|
+
- spec/fixtures/controlrepos/caching/Puppetfile
|
389
|
+
- spec/fixtures/controlrepos/caching/Rakefile
|
390
|
+
- spec/fixtures/controlrepos/caching/deleteme.txt
|
391
|
+
- spec/fixtures/controlrepos/caching/environment.conf
|
392
|
+
- spec/fixtures/controlrepos/caching/hieradata/common.yaml
|
393
|
+
- spec/fixtures/controlrepos/caching/hieradata/nodes/example-node.yaml
|
394
|
+
- spec/fixtures/controlrepos/caching/manifests/site.pp
|
395
|
+
- spec/fixtures/controlrepos/caching/site/profile/manifests/base.pp
|
396
|
+
- spec/fixtures/controlrepos/caching/site/profile/manifests/example.pp
|
397
|
+
- spec/fixtures/controlrepos/caching/site/role/manifests/database_server.pp
|
398
|
+
- spec/fixtures/controlrepos/caching/site/role/manifests/example.pp
|
399
|
+
- spec/fixtures/controlrepos/caching/site/role/manifests/webserver.pp
|
400
|
+
- spec/fixtures/controlrepos/caching/spec/factsets/README.md
|
401
|
+
- spec/fixtures/controlrepos/caching/spec/onceover.yaml
|
402
|
+
- spec/fixtures/controlrepos/caching/spec/pre_conditions/README.md
|
382
403
|
- spec/fixtures/controlrepos/control_branch/Puppetfile
|
383
404
|
- spec/fixtures/controlrepos/control_branch/environment.conf
|
384
405
|
- spec/fixtures/controlrepos/minimal/environment.conf
|
@@ -416,7 +437,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
416
437
|
version: '0'
|
417
438
|
requirements: []
|
418
439
|
rubyforge_project:
|
419
|
-
rubygems_version: 2.
|
440
|
+
rubygems_version: 2.6.14
|
420
441
|
signing_key:
|
421
442
|
specification_version: 4
|
422
443
|
summary: Testing tools for Puppet controlrepos
|