controlrepo 2.0.2 → 2.0.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e3dbf4efa67f128e98f6fa56f518ded6d95df862
4
- data.tar.gz: 1a189ac805a6eb0ce897d021a8030062ea569627
3
+ metadata.gz: c6f1e530d2aac6db832e66b31b06ccda1536595e
4
+ data.tar.gz: c4de4272d509eae7a31ea656b6681f524956f6ef
5
5
  SHA512:
6
- metadata.gz: 306092ec87d7fc6ad9f7815e2c47814efb396b5deb93abcf9a05e5dbe9a47258601fb7203918b106de4ee60982dd39207711d96a334b52e240a54a7141a1593c
7
- data.tar.gz: 46cdb8dd9a2c19176c2cfe09d6b0d5a5a887b055ca2c159117c29b663cf55ec42a79f4b68023d4c809086c37fd22886085f90a976944f3caea7cac1892972486
6
+ metadata.gz: df2d05bb540e4b6f287745d563f609ab56ed660a51085100b2ff1890417924a6161d8304e03f4617207768aa206052b3a1e2921359fec71d484a27abe071dec2
7
+ data.tar.gz: d157c35ed069a7b32dceef4fdecf42f01091d8a71288db187915282dcf816304d84d501b9ac78fc21dbbae284c2f9229f54f47b1f2ba67875e119d8f7fdd302a
data/README.md CHANGED
@@ -44,16 +44,20 @@ Install all the gems:
44
44
  Add this to your [Rakefile](#rake-tasks):
45
45
 
46
46
  ```ruby
47
- require 'puppetlabs_spec_helper/rake_tasks'
47
+ require 'controlrepo/rake_tasks'
48
48
  ```
49
49
 
50
+ Create directories:
51
+
52
+ `mkdir -p spec/acceptance/nodesets`
53
+
50
54
  Generate your [controlrepo.yaml](#controlrepoyaml):
51
55
 
52
56
  `bundle exec rake generate_controlrepo_yaml > spec/controlrepo.yaml`
53
57
 
54
58
  Generate your [nodesets](#nodesets):
55
59
 
56
- `bundle exec rake generate_nodesets > spec/acceptance/controlrepo-nodes.yml`
60
+ `bundle exec rake generate_nodesets > spec/acceptance/nodesets/controlrepo-nodes.yml`
57
61
 
58
62
  *Optional:* [Get hiera working](#hiera-data)
59
63
 
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "controlrepo"
6
- s.version = "2.0.2"
6
+ s.version = "2.0.3"
7
7
  s.authors = ["Dylan Ratcliffe"]
8
8
  s.email = ["dylan.ratcliffe@puppetlabs.com"]
9
9
  s.homepage = ""
@@ -20,6 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.add_runtime_dependency 'json'
21
21
  s.add_runtime_dependency 'beaker-rspec'
22
22
  s.add_runtime_dependency 'rspec-puppet'
23
+ s.add_runtime_dependency 'puppetlabs_spec_helper'
23
24
  s.add_runtime_dependency 'rspec'
24
25
  s.add_runtime_dependency 'bundler'
25
26
  s.add_runtime_dependency 'r10k'
@@ -107,6 +107,8 @@ class Controlrepo
107
107
  spec_dir: #{@spec_dir}
108
108
  facts_files: #{@facts_files}
109
109
  nodeset_file: #{@nodeset_file}
110
+ roles: #{roles}
111
+ profiles #{profiles}
110
112
  END
111
113
  end
112
114
 
@@ -228,7 +230,8 @@ class Controlrepo
228
230
  begin
229
231
  YAML.load_file(hiera_config_file)
230
232
  rescue TypeError
231
- raise "Could not load hiera config file: #{hiera_config_file}"
233
+ puts "WARNING: Could not find hiera config file, continuing"
234
+ nil
232
235
  end
233
236
  end
234
237
 
@@ -250,6 +253,9 @@ class Controlrepo
250
253
  env_conf = File.read(@environment_conf)
251
254
  env_conf = env_conf.split("\n")
252
255
 
256
+ # Delete commented out lines
257
+ env_conf.delete_if { |l| l =~ /^\s*#/}
258
+
253
259
  # Map the lines into a hash
254
260
  environment_config = {}
255
261
  env_conf.each do |line|
@@ -102,9 +102,6 @@ task :controlrepo_autotest_prep do
102
102
  # Create spec_helper_accpetance.rb
103
103
  @config.write_spec_helper_acceptance("#{@repo.tempdir}/spec",@repo)
104
104
 
105
- # Create Gemfile
106
- @config.write_gemfile(@repo.tempdir)
107
-
108
105
  # Deduplicate and write the tests (Spec and Acceptance)
109
106
  Controlrepo::Test.deduplicate(@config.spec_tests).each do |test|
110
107
  @config.write_spec_test("#{@repo.tempdir}/spec/classes",test)
@@ -113,16 +110,17 @@ task :controlrepo_autotest_prep do
113
110
  @config.write_acceptance_tests("#{@repo.tempdir}/spec/acceptance",Controlrepo::Test.deduplicate(@config.acceptance_tests))
114
111
 
115
112
  # Parse the current hiera config, modify, and write it to the temp dir
116
- hiera_config = @repo.hiera_config
117
- hiera_config.each do |setting,value|
118
- if value.is_a?(Hash)
119
- if value.has_key?(:datadir)
120
- hiera_config[setting][:datadir] = "#{@repo.temp_environmentpath}/#{@config.environment}/#{value[:datadir]}"
113
+ unless @repo.hiera_config ==nil
114
+ hiera_config = @repo.hiera_config
115
+ hiera_config.each do |setting,value|
116
+ if value.is_a?(Hash)
117
+ if value.has_key?(:datadir)
118
+ hiera_config[setting][:datadir] = "#{@repo.temp_environmentpath}/#{@config.environment}/#{value[:datadir]}"
119
+ end
121
120
  end
122
121
  end
122
+ File.write("#{@repo.temp_environmentpath}/#{@config.environment}/hiera.yaml",hiera_config.to_yaml)
123
123
  end
124
- binding.pry
125
- File.write("#{@repo.temp_environmentpath}/#{@config.environment}/hiera.yaml",hiera_config.to_yaml)
126
124
 
127
125
  @config.create_fixtures_symlinks(@repo)
128
126
  end
@@ -131,7 +129,7 @@ task :controlrepo_autotest_spec do
131
129
  Dir.chdir(@repo.tempdir) do
132
130
  #`bundle install --binstubs`
133
131
  #`bin/rake spec_standalone`
134
- exec("bundle install --without acceptance; bundle exec rake spec_standalone")
132
+ exec("bundle exec rake spec_standalone")
135
133
  end
136
134
  end
137
135
 
@@ -139,7 +137,7 @@ task :controlrepo_autotest_acceptance do
139
137
  Dir.chdir(@repo.tempdir) do
140
138
  #`bundle install --binstubs`
141
139
  #`bin/rake spec_standalone`
142
- exec("bundle install; bundle exec rake acceptance")
140
+ exec("bundle exec rake acceptance")
143
141
  end
144
142
  end
145
143
 
@@ -37,10 +37,10 @@ class Controlrepo
37
37
  @node_groups << Controlrepo::Group.new('all_nodes',@nodes)
38
38
  @class_groups << Controlrepo::Group.new('all_classes',@classes)
39
39
 
40
- config['classes'].each { |clarse| @classes << Controlrepo::Class.new(clarse) }
41
- config['nodes'].each { |node| @nodes << Controlrepo::Node.new(node) }
42
- config['node_groups'].each { |name, members| @node_groups << Controlrepo::Group.new(name, members) }
43
- config['class_groups'].each { |name, members| @class_groups << Controlrepo::Group.new(name, members) }
40
+ config['classes'].each { |clarse| @classes << Controlrepo::Class.new(clarse) } unless config['classes'] == nil
41
+ config['nodes'].each { |node| @nodes << Controlrepo::Node.new(node) } unless config['nodes'] == nil
42
+ config['node_groups'].each { |name, members| @node_groups << Controlrepo::Group.new(name, members) } unless config['node_groups'] == nil
43
+ config['class_groups'].each { |name, members| @class_groups << Controlrepo::Group.new(name, members) } unless config['class_groups'] == nil
44
44
 
45
45
  config['test_matrix'].each do |test_hash|
46
46
  test_hash.each do |machines, settings|
@@ -159,12 +159,6 @@ class Controlrepo
159
159
  File.write("#{location}/Rakefile",ERB.new(rakefile_template, nil, '-').result(binding))
160
160
  end
161
161
 
162
- def write_gemfile(location)
163
- template_dir = File.expand_path('../../templates',File.dirname(__FILE__))
164
- gemfile_template = File.read(File.expand_path('./Gemfile.erb',template_dir))
165
- File.write("#{location}/Gemfile",ERB.new(gemfile_template, nil, '-').result(binding))
166
- end
167
-
168
162
  def write_spec_helper(location, repo)
169
163
  environmentpath = repo.temp_environmentpath
170
164
  modulepath = repo.config['modulepath']
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: controlrepo
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dylan Ratcliffe
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: puppetlabs_spec_helper
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: rspec
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -165,7 +179,6 @@ files:
165
179
  - lib/controlrepo/test.rb
166
180
  - lib/controlrepo/testconfig.rb
167
181
  - templates/.fixtures.yml.erb
168
- - templates/Gemfile.erb
169
182
  - templates/Rakefile.erb
170
183
  - templates/acceptance_test_spec.rb.erb
171
184
  - templates/controlrepo.yaml.erb
@@ -1,13 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- group :spec do
4
- gem 'rspec-puppet'
5
- gem 'puppetlabs_spec_helper'
6
- end
7
-
8
- group :acceptance do
9
- gem 'beaker-rspec'
10
- gem 'controlrepo', :git => 'https://github.com/dylanratcliffe/controlrepo_gem.git'
11
- end
12
-
13
- gem 'rake'