rspec-system-puppet 0.2.0 → 0.3.0
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.
- data/lib/rspec-system-puppet/helpers.rb +38 -3
- data/rspec-system-puppet.gemspec +2 -2
- data/spec/system/basic_spec.rb +9 -2
- metadata +6 -6
@@ -5,7 +5,7 @@ module RSpecSystemPuppet::Helpers
|
|
5
5
|
include RSpecSystem::Log
|
6
6
|
|
7
7
|
# Basic helper to install puppet
|
8
|
-
def
|
8
|
+
def puppet_install(options = {})
|
9
9
|
# Grab facts from node
|
10
10
|
facts = system_node.facts
|
11
11
|
|
@@ -19,7 +19,16 @@ module RSpecSystemPuppet::Helpers
|
|
19
19
|
# Grab PL repository and install PL copy of puppet
|
20
20
|
log.info "Starting installation of puppet from PL repos"
|
21
21
|
if facts['osfamily'] == 'RedHat'
|
22
|
-
|
22
|
+
if facts['operatingsystem'] == 'Fedora'
|
23
|
+
# Fedora testing is probably the best for now
|
24
|
+
system_run('sed -i "0,/RE/s/enabled=0/enabled=1/" /etc/yum.repos.d/fedora-updates-testing.repo')
|
25
|
+
else
|
26
|
+
if facts['operatingsystemrelease'] =~ /^6\./
|
27
|
+
system_run('rpm -ivh http://yum.puppetlabs.com/el/6/products/x86_64/puppetlabs-release-6-6.noarch.rpm')
|
28
|
+
else
|
29
|
+
system_run('rpm -ivh http://yum.puppetlabs.com/el/5/products/x86_64/puppetlabs-release-5-6.noarch.rpm')
|
30
|
+
end
|
31
|
+
end
|
23
32
|
system_run('yum install -y puppet')
|
24
33
|
elsif facts['osfamily'] == 'Debian'
|
25
34
|
system_run("wget http://apt.puppetlabs.com/puppetlabs-release-#{facts['lsbdistcodename']}.deb")
|
@@ -34,7 +43,7 @@ module RSpecSystemPuppet::Helpers
|
|
34
43
|
end
|
35
44
|
|
36
45
|
# Helper to copy a module onto a node from source
|
37
|
-
def
|
46
|
+
def puppet_module_install(options)
|
38
47
|
# Defaults etc.
|
39
48
|
options = {
|
40
49
|
:node => rspec_system_node_set.default_node,
|
@@ -51,4 +60,30 @@ module RSpecSystemPuppet::Helpers
|
|
51
60
|
log.info("Now transferring module onto node")
|
52
61
|
system_rcp(:sp => source, :d => node, :dp => File.join(module_path, module_name))
|
53
62
|
end
|
63
|
+
|
64
|
+
# Runs puppet resource commands
|
65
|
+
def puppet_resource(opts)
|
66
|
+
if opts.is_a?(String)
|
67
|
+
opts = {:resource => opts}
|
68
|
+
end
|
69
|
+
|
70
|
+
# Defaults
|
71
|
+
opts = {
|
72
|
+
:node => rspec_system_node_set.default_node
|
73
|
+
}.merge(opts)
|
74
|
+
|
75
|
+
resource = opts[:resource]
|
76
|
+
node = opts[:node]
|
77
|
+
|
78
|
+
raise 'Must provide resource' unless resource
|
79
|
+
|
80
|
+
log.info("Now running puppet resource")
|
81
|
+
result = system_run(:n => node, :c => "puppet resource #{resource}")
|
82
|
+
|
83
|
+
if block_given?
|
84
|
+
yield(result)
|
85
|
+
else
|
86
|
+
result
|
87
|
+
end
|
88
|
+
end
|
54
89
|
end
|
data/rspec-system-puppet.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
Gem::Specification.new do |s|
|
3
3
|
# Metadata
|
4
4
|
s.name = "rspec-system-puppet"
|
5
|
-
s.version = "0.
|
5
|
+
s.version = "0.3.0"
|
6
6
|
s.authors = ["Ken Barber"]
|
7
7
|
s.email = ["ken@bob.sh"]
|
8
8
|
s.homepage = "https://github.com/kbarber/rspec-system-puppet"
|
@@ -16,5 +16,5 @@ Gem::Specification.new do |s|
|
|
16
16
|
|
17
17
|
# Dependencies
|
18
18
|
s.required_ruby_version = '>= 1.8.7'
|
19
|
-
s.add_runtime_dependency "rspec-system", '~> 0.
|
19
|
+
s.add_runtime_dependency "rspec-system", '~> 0.3.0'
|
20
20
|
end
|
data/spec/system/basic_spec.rb
CHANGED
@@ -1,7 +1,14 @@
|
|
1
1
|
require 'spec_helper_system'
|
2
2
|
|
3
3
|
describe "basic tests:" do
|
4
|
-
it "check
|
5
|
-
|
4
|
+
it "check puppet_install works" do
|
5
|
+
puppet_install()
|
6
|
+
end
|
7
|
+
|
8
|
+
it 'check puppet_resource returns an exit code of 0' do
|
9
|
+
puppet_resource('user') do |r|
|
10
|
+
r[:exit_code].should == 0
|
11
|
+
r[:stderr].should == ''
|
12
|
+
end
|
6
13
|
end
|
7
14
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec-system-puppet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
8
|
+
- 3
|
9
9
|
- 0
|
10
|
-
version: 0.
|
10
|
+
version: 0.3.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Ken Barber
|
@@ -25,12 +25,12 @@ dependencies:
|
|
25
25
|
requirements:
|
26
26
|
- - ~>
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
hash:
|
28
|
+
hash: 19
|
29
29
|
segments:
|
30
30
|
- 0
|
31
|
-
-
|
31
|
+
- 3
|
32
32
|
- 0
|
33
|
-
version: 0.
|
33
|
+
version: 0.3.0
|
34
34
|
type: :runtime
|
35
35
|
version_requirements: *id001
|
36
36
|
description:
|