puppet 2.6.0 → 2.6.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- data/CHANGELOG +123 -0
- data/conf/redhat/puppet.spec +8 -2
- data/conf/solaris/smf/svc-puppetd +1 -1
- data/conf/solaris/smf/svc-puppetmasterd +1 -1
- data/conf/suse/client.init +4 -4
- data/conf/suse/fileserver.conf +12 -0
- data/conf/suse/logrotate +10 -0
- data/conf/suse/puppet.conf +25 -0
- data/conf/suse/puppet.spec +114 -49
- data/conf/suse/ruby-env.patch +17 -0
- data/conf/suse/server.init +4 -4
- data/ext/logcheck/puppet +23 -23
- data/ext/puppet-load.rb +357 -0
- data/ext/puppetstoredconfigclean.rb +3 -3
- data/ext/rack/files/config.ru +3 -5
- data/ext/vim/syntax/puppet.vim +6 -5
- data/install.rb +12 -11
- data/lib/puppet.rb +1 -1
- data/lib/puppet/agent.rb +3 -1
- data/lib/puppet/application.rb +2 -3
- data/lib/puppet/application/agent.rb +4 -0
- data/lib/puppet/application/apply.rb +14 -6
- data/lib/puppet/application/describe.rb +1 -1
- data/lib/puppet/application/doc.rb +2 -36
- data/lib/puppet/application/master.rb +0 -3
- data/lib/puppet/application/queue.rb +1 -0
- data/lib/puppet/configurer.rb +4 -0
- data/lib/puppet/daemon.rb +1 -1
- data/lib/puppet/defaults.rb +38 -44
- data/lib/puppet/file_serving/indirection_hooks.rb +2 -2
- data/lib/puppet/indirector/facts/memory.rb +1 -1
- data/lib/puppet/indirector/node/exec.rb +1 -1
- data/lib/puppet/indirector/node/ldap.rb +9 -53
- data/lib/puppet/indirector/node/memory.rb +1 -1
- data/lib/puppet/indirector/yaml.rb +6 -9
- data/lib/puppet/network/format_handler.rb +6 -0
- data/lib/puppet/network/formats.rb +4 -4
- data/lib/puppet/network/http/handler.rb +1 -1
- data/lib/puppet/network/http/rack.rb +3 -0
- data/lib/puppet/network/http/rack/rest.rb +1 -1
- data/lib/puppet/network/rest_authconfig.rb +6 -3
- data/lib/puppet/node/environment.rb +15 -5
- data/lib/puppet/parameter/value_collection.rb +3 -3
- data/lib/puppet/parser/ast/function.rb +0 -1
- data/lib/puppet/parser/ast/leaf.rb +1 -1
- data/lib/puppet/parser/ast/resource.rb +4 -3
- data/lib/puppet/parser/ast/resource_reference.rb +9 -2
- data/lib/puppet/parser/compiler.rb +12 -14
- data/lib/puppet/parser/files.rb +1 -1
- data/lib/puppet/parser/functions.rb +2 -2
- data/lib/puppet/parser/functions/defined.rb +1 -1
- data/lib/puppet/parser/functions/extlookup.rb +157 -0
- data/lib/puppet/parser/functions/file.rb +1 -1
- data/lib/puppet/parser/functions/inline_template.rb +6 -5
- data/lib/puppet/parser/functions/md5.rb +5 -0
- data/lib/puppet/parser/functions/realize.rb +1 -1
- data/lib/puppet/parser/functions/regsubst.rb +19 -19
- data/lib/puppet/parser/functions/require.rb +2 -3
- data/lib/puppet/parser/functions/split.rb +1 -1
- data/lib/puppet/parser/functions/sprintf.rb +1 -1
- data/lib/puppet/parser/functions/template.rb +4 -2
- data/lib/puppet/parser/functions/versioncmp.rb +12 -12
- data/lib/puppet/parser/lexer.rb +13 -14
- data/lib/puppet/parser/resource.rb +2 -7
- data/lib/puppet/parser/resource/param.rb +1 -1
- data/lib/puppet/parser/scope.rb +35 -0
- data/lib/puppet/parser/type_loader.rb +1 -1
- data/lib/puppet/property.rb +5 -5
- data/lib/puppet/provider.rb +3 -3
- data/lib/puppet/provider/group/groupadd.rb +1 -1
- data/lib/puppet/provider/group/ldap.rb +3 -3
- data/lib/puppet/provider/group/pw.rb +1 -1
- data/lib/puppet/provider/package/apple.rb +1 -1
- data/lib/puppet/provider/package/apt.rb +5 -1
- data/lib/puppet/provider/package/aptitude.rb +1 -1
- data/lib/puppet/provider/package/aptrpm.rb +1 -1
- data/lib/puppet/provider/package/blastwave.rb +1 -1
- data/lib/puppet/provider/package/dpkg.rb +2 -2
- data/lib/puppet/provider/package/fink.rb +1 -1
- data/lib/puppet/provider/package/gem.rb +1 -1
- data/lib/puppet/provider/package/openbsd.rb +1 -1
- data/lib/puppet/provider/package/rpm.rb +1 -1
- data/lib/puppet/provider/package/rug.rb +1 -1
- data/lib/puppet/provider/package/sunfreeware.rb +2 -2
- data/lib/puppet/provider/package/up2date.rb +1 -1
- data/lib/puppet/provider/package/urpmi.rb +1 -1
- data/lib/puppet/provider/package/yum.rb +1 -1
- data/lib/puppet/provider/package/zypper.rb +1 -1
- data/lib/puppet/provider/service/base.rb +1 -1
- data/lib/puppet/provider/service/bsd.rb +2 -2
- data/lib/puppet/provider/service/debian.rb +2 -2
- data/lib/puppet/provider/service/gentoo.rb +2 -2
- data/lib/puppet/provider/service/init.rb +2 -2
- data/lib/puppet/provider/service/redhat.rb +2 -2
- data/lib/puppet/provider/user/ldap.rb +3 -3
- data/lib/puppet/provider/user/pw.rb +1 -1
- data/lib/puppet/provider/user/user_role_add.rb +1 -1
- data/lib/puppet/provider/user/useradd.rb +1 -1
- data/lib/puppet/rails/host.rb +1 -0
- data/lib/puppet/reference/configuration.rb +37 -34
- data/lib/puppet/reference/indirection.rb +3 -4
- data/lib/puppet/reference/metaparameter.rb +0 -8
- data/lib/puppet/reference/network.rb +6 -4
- data/lib/puppet/reference/providers.rb +4 -4
- data/lib/puppet/reference/report.rb +5 -6
- data/lib/puppet/reference/type.rb +14 -14
- data/lib/puppet/reports/http.rb +1 -1
- data/lib/puppet/reports/rrdgraph.rb +8 -9
- data/lib/puppet/reports/store.rb +2 -2
- data/lib/puppet/reports/tagmail.rb +12 -13
- data/lib/puppet/resource.rb +15 -115
- data/lib/puppet/resource/catalog.rb +1 -1
- data/lib/puppet/resource/type.rb +26 -3
- data/lib/puppet/resource/type_collection.rb +3 -6
- data/lib/puppet/simple_graph.rb +4 -5
- data/lib/puppet/transaction/resource_harness.rb +1 -1
- data/lib/puppet/type.rb +100 -92
- data/lib/puppet/type/augeas.rb +44 -45
- data/lib/puppet/type/computer.rb +2 -2
- data/lib/puppet/type/cron.rb +29 -29
- data/lib/puppet/type/exec.rb +66 -67
- data/lib/puppet/type/file.rb +25 -25
- data/lib/puppet/type/file/content.rb +7 -1
- data/lib/puppet/type/file/ensure.rb +13 -13
- data/lib/puppet/type/file/mode.rb +6 -6
- data/lib/puppet/type/file/selcontext.rb +5 -5
- data/lib/puppet/type/file/source.rb +36 -26
- data/lib/puppet/type/filebucket.rb +5 -6
- data/lib/puppet/type/group.rb +1 -2
- data/lib/puppet/type/host.rb +3 -6
- data/lib/puppet/type/k5login.rb +3 -3
- data/lib/puppet/type/macauthorization.rb +1 -2
- data/lib/puppet/type/mailalias.rb +0 -1
- data/lib/puppet/type/maillist.rb +0 -1
- data/lib/puppet/type/mcx.rb +9 -9
- data/lib/puppet/type/mount.rb +9 -10
- data/lib/puppet/type/notify.rb +0 -1
- data/lib/puppet/type/package.rb +34 -36
- data/lib/puppet/type/resources.rb +1 -5
- data/lib/puppet/type/schedule.rb +9 -12
- data/lib/puppet/type/selboolean.rb +2 -7
- data/lib/puppet/type/selmodule.rb +3 -4
- data/lib/puppet/type/service.rb +9 -9
- data/lib/puppet/type/ssh_authorized_key.rb +2 -3
- data/lib/puppet/type/sshkey.rb +4 -7
- data/lib/puppet/type/stage.rb +5 -4
- data/lib/puppet/type/tidy.rb +3 -3
- data/lib/puppet/type/user.rb +1 -2
- data/lib/puppet/type/whit.rb +7 -0
- data/lib/puppet/type/yumrepo.rb +16 -3
- data/lib/puppet/type/zfs.rb +1 -2
- data/lib/puppet/type/zone.rb +28 -28
- data/lib/puppet/type/zpool.rb +10 -5
- data/lib/puppet/util/autoload.rb +17 -5
- data/lib/puppet/util/cacher.rb +15 -10
- data/lib/puppet/util/command_line/puppetdoc +5 -5
- data/lib/puppet/util/command_line/puppetrun +0 -2
- data/lib/puppet/util/command_line/ralsh +13 -13
- data/lib/puppet/util/docs.rb +5 -12
- data/lib/puppet/util/monkey_patches.rb +5 -2
- data/lib/puppet/util/nagios_maker.rb +4 -5
- data/lib/puppet/util/provider_features.rb +2 -2
- data/lib/puppet/util/rdoc.rb +1 -1
- data/lib/puppet/util/rdoc/parser.rb +5 -3
- data/lib/puppet/util/reference.rb +3 -52
- data/man/man5/puppet.conf.5 +2072 -1526
- data/man/man8/filebucket.8 +104 -106
- data/man/man8/pi.8 +14 -47
- data/man/man8/puppet.8 +8 -9
- data/man/man8/puppetca.8 +168 -129
- data/man/man8/puppetd.8 +282 -226
- data/man/man8/puppetdoc.8 +103 -103
- data/man/man8/puppetmasterd.8 +51 -71
- data/man/man8/puppetqd.8 +18 -53
- data/man/man8/puppetrun.8 +163 -143
- data/man/man8/ralsh.8 +77 -114
- data/spec/integration/indirector/bucket_file/rest_spec.rb +1 -0
- data/spec/integration/indirector/certificate/rest_spec.rb +1 -0
- data/spec/integration/indirector/certificate_request/rest_spec.rb +1 -0
- data/spec/integration/indirector/certificate_revocation_list/rest_spec.rb +1 -0
- data/spec/integration/indirector/report/rest_spec.rb +1 -0
- data/spec/integration/indirector/rest_spec.rb +1 -0
- data/spec/integration/network/server/webrick_spec.rb +1 -0
- data/spec/integration/parser/compiler_spec.rb +43 -0
- data/spec/integration/provider/mailalias/aliases_spec.rb +5 -5
- data/spec/integration/ssl/certificate_authority_spec.rb +1 -0
- data/spec/integration/ssl/certificate_request_spec.rb +1 -0
- data/spec/integration/ssl/certificate_revocation_list_spec.rb +1 -0
- data/spec/integration/ssl/host_spec.rb +1 -0
- data/spec/monkey_patches/add_confine_and_runnable_to_rspec_dsl.rb +0 -1
- data/spec/monkey_patches/publicize_methods.rb +11 -0
- data/spec/shared_behaviours/file_serving.rb +12 -1
- data/spec/spec_helper.rb +6 -25
- data/spec/unit/application/apply_spec.rb +22 -4
- data/spec/unit/application/cert_spec.rb +1 -1
- data/spec/unit/application/doc_spec.rb +0 -19
- data/spec/unit/application/master_spec.rb +1 -1
- data/spec/unit/application_spec.rb +2 -12
- data/spec/unit/indirector/node/ldap_spec.rb +19 -21
- data/spec/unit/indirector/yaml_spec.rb +18 -6
- data/spec/unit/network/http/rack/rest_spec.rb +3 -3
- data/spec/unit/network/http/webrick/rest_spec.rb +1 -0
- data/spec/unit/node/environment_spec.rb +32 -3
- data/spec/unit/node/facts_spec.rb +13 -2
- data/spec/unit/parameter/value_collection_spec.rb +2 -2
- data/spec/unit/parser/ast/leaf_spec.rb +4 -0
- data/spec/unit/parser/ast/resource_reference_spec.rb +0 -5
- data/spec/unit/parser/ast/resource_spec.rb +7 -0
- data/spec/unit/parser/compiler_spec.rb +12 -1
- data/spec/unit/parser/files_spec.rb +3 -3
- data/spec/unit/parser/functions/extlookup_spec.rb +95 -0
- data/spec/unit/parser/functions/include_spec.rb +33 -0
- data/spec/unit/parser/functions/require_spec.rb +1 -1
- data/spec/unit/parser/functions/tag_spec.rb +1 -0
- data/spec/unit/parser/lexer_spec.rb +10 -1
- data/spec/unit/parser/resource_spec.rb +3 -9
- data/spec/unit/parser/type_loader_spec.rb +1 -1
- data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +4 -2
- data/spec/unit/rails/resource_spec.rb +1 -1
- data/spec/unit/reports/tagmail_spec.rb +2 -2
- data/spec/unit/resource/catalog_spec.rb +1 -1
- data/spec/unit/resource/type_collection_spec.rb +35 -0
- data/spec/unit/resource/type_spec.rb +19 -1
- data/spec/unit/resource_spec.rb +0 -36
- data/spec/unit/simple_graph_spec.rb +12 -2
- data/spec/unit/transaction/resource_harness_spec.rb +1 -1
- data/spec/unit/type/file/content_spec.rb +2 -1
- data/spec/unit/type/schedule_spec.rb +1 -1
- data/spec/unit/type/service_spec.rb +8 -0
- data/spec/unit/type/user_spec.rb +5 -0
- data/spec/unit/util/backups_spec.rb +0 -1
- data/spec/unit/util/rdoc/parser_spec.rb +3 -3
- data/spec/unit/util/rdoc_spec.rb +13 -0
- data/test/certmgr/support.rb +2 -1
- data/test/language/parser.rb +6 -6
- data/test/lib/puppettest.rb +3 -23
- data/test/lib/puppettest/fakes.rb +1 -1
- data/test/lib/puppettest/support/assertions.rb +0 -2
- data/test/lib/puppettest/support/utils.rb +25 -20
- data/test/ral/manager/attributes.rb +4 -1
- metadata +15 -9
- data/conf/suse/puppet.suse.patch +0 -16
- data/ext/extlookup.rb +0 -181
- data/ext/puppetlast +0 -16
- data/tasks/rake/tracdocs.rake +0 -8
- data/test/lib/mocha_standalone.rb +0 -2
@@ -439,7 +439,8 @@ describe Puppet::SimpleGraph do
|
|
439
439
|
@middle = Container.new("middle", ["e", "f", @two])
|
440
440
|
@top = Container.new("top", ["g", "h", @middle, @one, @three])
|
441
441
|
@empty = Container.new("empty", [])
|
442
|
-
|
442
|
+
|
443
|
+
@whit = Puppet::Type.type(:whit)
|
443
444
|
@stage = Puppet::Type.type(:stage).new(:name => "foo")
|
444
445
|
|
445
446
|
@contgraph = @top.to_graph
|
@@ -499,8 +500,17 @@ describe Puppet::SimpleGraph do
|
|
499
500
|
end
|
500
501
|
end
|
501
502
|
|
503
|
+
it "should contain a whit-resource to mark the place held by the empty container" do
|
504
|
+
@depgraph.vertices.find_all { |v| v.is_a?(@whit) }.length.should == 1
|
505
|
+
end
|
506
|
+
|
507
|
+
it "should replace edges to empty containers with edges to their residual whit" do
|
508
|
+
emptys_whit = @depgraph.vertices.find_all { |v| v.is_a?(@whit) }.first
|
509
|
+
@depgraph.should be_edge("c", emptys_whit)
|
510
|
+
end
|
511
|
+
|
502
512
|
it "should no longer contain anything but the non-container objects" do
|
503
|
-
@depgraph.vertices.find_all { |v| ! v.is_a?(String) }.should be_empty
|
513
|
+
@depgraph.vertices.find_all { |v| ! v.is_a?(String) and ! v.is_a?(@whit)}.should be_empty
|
504
514
|
end
|
505
515
|
|
506
516
|
it "should copy labels" do
|
@@ -50,7 +50,7 @@ describe Puppet::Transaction::ResourceHarness do
|
|
50
50
|
end
|
51
51
|
|
52
52
|
it "should cache and log the current value if no cached values are present" do
|
53
|
-
@resource.expects(:
|
53
|
+
@resource.expects(:debug)
|
54
54
|
@harness.copy_audited_parameters(@resource, {:mode => "755"}).should == []
|
55
55
|
|
56
56
|
@harness.cached(@resource, :mode).should == "755"
|
@@ -6,6 +6,7 @@ content = Puppet::Type.type(:file).attrclass(:content)
|
|
6
6
|
describe content do
|
7
7
|
before do
|
8
8
|
@resource = Puppet::Type.type(:file).new :path => "/foo/bar"
|
9
|
+
content.stubs(:standalone?).returns(false)
|
9
10
|
end
|
10
11
|
|
11
12
|
it "should be a subclass of Property" do
|
@@ -362,7 +363,7 @@ describe content do
|
|
362
363
|
end
|
363
364
|
|
364
365
|
it "should send the correct indirection uri" do
|
365
|
-
@conn.expects(:request_get).with { |uri,headers| uri == "/production/file_content
|
366
|
+
@conn.expects(:request_get).with { |uri,headers| uri == "/production/file_content/path/to/source" }.yields(@response)
|
366
367
|
@content.write(@fh)
|
367
368
|
end
|
368
369
|
|
@@ -76,10 +76,18 @@ describe Puppet::Type.type(:service), "when validating attribute values" do
|
|
76
76
|
|
77
77
|
it "should allow setting the :enable parameter if the provider has the :enableable feature" do
|
78
78
|
Puppet::Type.type(:service).defaultprovider.stubs(:supports_parameter?).returns(true)
|
79
|
+
Puppet::Type.type(:service).defaultprovider.expects(:supports_parameter?).with(Puppet::Type.type(:service).attrclass(:enable)).returns(true)
|
79
80
|
svc = Puppet::Type.type(:service).new(:name => "yay", :enable => true)
|
80
81
|
svc.should(:enable).should == :true
|
81
82
|
end
|
82
83
|
|
84
|
+
it "should not allow setting the :enable parameter if the provider is missing the :enableable feature" do
|
85
|
+
Puppet::Type.type(:service).defaultprovider.stubs(:supports_parameter?).returns(true)
|
86
|
+
Puppet::Type.type(:service).defaultprovider.expects(:supports_parameter?).with(Puppet::Type.type(:service).attrclass(:enable)).returns(false)
|
87
|
+
svc = Puppet::Type.type(:service).new(:name => "yay", :enable => true)
|
88
|
+
svc.should(:enable).should be_nil
|
89
|
+
end
|
90
|
+
|
83
91
|
it "should split paths on ':'" do
|
84
92
|
FileTest.stubs(:exist?).returns(true)
|
85
93
|
FileTest.stubs(:directory?).returns(true)
|
data/spec/unit/type/user_spec.rb
CHANGED
@@ -262,6 +262,11 @@ describe user do
|
|
262
262
|
end
|
263
263
|
|
264
264
|
describe "when user has roles" do
|
265
|
+
before do
|
266
|
+
# To test this feature, we have to support it.
|
267
|
+
user.new(:name => "foo").provider.class.stubs(:feature?).returns(true)
|
268
|
+
end
|
269
|
+
|
265
270
|
it "should autorequire roles" do
|
266
271
|
testuser = Puppet::Type.type(:user).new(:name => "testuser")
|
267
272
|
testuser[:roles] = "testrole"
|
@@ -85,8 +85,8 @@ describe RDoc::Parser do
|
|
85
85
|
@parser.scan_top_level(@topcontainer)
|
86
86
|
end
|
87
87
|
|
88
|
-
it "should set the module as global if we parse the global manifests (ie
|
89
|
-
@parser.stubs(:split_module).returns(
|
88
|
+
it "should set the module as global if we parse the global manifests (ie __site__ module)" do
|
89
|
+
@parser.stubs(:split_module).returns(RDoc::Parser::SITE)
|
90
90
|
@parser.stubs(:parse_elements)
|
91
91
|
|
92
92
|
@topcontainer.expects(:global=).with(true)
|
@@ -131,7 +131,7 @@ describe RDoc::Parser do
|
|
131
131
|
it "should return <site> for manifests not under module path" do
|
132
132
|
File.stubs(:expand_path).returns("/path/to/manifests/init.pp")
|
133
133
|
File.stubs(:identical?).returns(false)
|
134
|
-
@parser.split_module("/path/to/manifests/init.pp").should ==
|
134
|
+
@parser.split_module("/path/to/manifests/init.pp").should == RDoc::Parser::SITE
|
135
135
|
end
|
136
136
|
end
|
137
137
|
|
data/spec/unit/util/rdoc_spec.rb
CHANGED
@@ -75,6 +75,19 @@ describe Puppet::Util::RDoc do
|
|
75
75
|
Puppet::Util::RDoc.manifestdoc([])
|
76
76
|
end
|
77
77
|
|
78
|
+
it "should use a parser with the correct environment" do
|
79
|
+
FileTest.stubs(:file?).returns(true)
|
80
|
+
Puppet::Util::RDoc.stubs(:output)
|
81
|
+
|
82
|
+
parser = stub_everything
|
83
|
+
Puppet::Parser::Parser.stubs(:new).with{ |env| env.is_a?(Puppet::Node::Environment) }.returns(parser)
|
84
|
+
|
85
|
+
parser.expects(:file=).with("file")
|
86
|
+
parser.expects(:parse)
|
87
|
+
|
88
|
+
Puppet::Util::RDoc.manifestdoc(["file"])
|
89
|
+
end
|
90
|
+
|
78
91
|
it "should puppet parse all given files" do
|
79
92
|
FileTest.stubs(:file?).returns(true)
|
80
93
|
Puppet::Util::RDoc.stubs(:output)
|
data/test/certmgr/support.rb
CHANGED
@@ -89,8 +89,9 @@ class TestCertSupport < Test::Unit::TestCase
|
|
89
89
|
should_path = Puppet[:hostprivkey]
|
90
90
|
|
91
91
|
dir, file = File.split(should_path)
|
92
|
-
newfile = file.sub(/^([a-z.]+)\./) { $1.upcase + "."}
|
92
|
+
newfile = file.sub(/^([-a-z.0-9]+)\./) { $1.upcase + "."}
|
93
93
|
upper_path = File.join(dir, newfile)
|
94
|
+
p upper_path
|
94
95
|
File.open(upper_path, "w") { |f| f.print key.to_s }
|
95
96
|
|
96
97
|
user = CertUser.new
|
data/test/language/parser.rb
CHANGED
@@ -97,7 +97,7 @@ class TestParser < Test::Unit::TestCase
|
|
97
97
|
}
|
98
98
|
|
99
99
|
4.times { |i|
|
100
|
-
path = File.join(basedir, subdir, "subfile#{i}")
|
100
|
+
path = File.join(basedir, subdir, "subfile#{i}.pp")
|
101
101
|
mkmanifest(path)
|
102
102
|
}
|
103
103
|
|
@@ -137,8 +137,8 @@ class TestParser < Test::Unit::TestCase
|
|
137
137
|
end
|
138
138
|
|
139
139
|
def test_importedclasses
|
140
|
-
imported = tempfile
|
141
|
-
importer = tempfile
|
140
|
+
imported = tempfile '.pp'
|
141
|
+
importer = tempfile '.pp'
|
142
142
|
|
143
143
|
made = tempfile
|
144
144
|
|
@@ -655,9 +655,9 @@ file { "/tmp/yayness":
|
|
655
655
|
end
|
656
656
|
|
657
657
|
def test_multiple_imports_on_one_line
|
658
|
-
one = tempfile
|
659
|
-
two = tempfile
|
660
|
-
base = tempfile
|
658
|
+
one = tempfile '.pp'
|
659
|
+
two = tempfile '.pp'
|
660
|
+
base = tempfile '.pp'
|
661
661
|
File.open(one, "w") { |f| f.puts "$var = value" }
|
662
662
|
File.open(two, "w") { |f| f.puts "$var = value" }
|
663
663
|
File.open(base, "w") { |f| f.puts "import '#{one}', '#{two}'" }
|
data/test/lib/puppettest.rb
CHANGED
@@ -6,17 +6,6 @@ mainlib = File.expand_path(File.join(File.dirname(__FILE__), '../../lib'))
|
|
6
6
|
$LOAD_PATH.unshift(mainlib) unless $LOAD_PATH.include?(mainlib)
|
7
7
|
|
8
8
|
require 'puppet'
|
9
|
-
|
10
|
-
# include any gems in vendor/gems
|
11
|
-
Dir["#{mainlib}/../vendor/gems/**"].each do |path|
|
12
|
-
libpath = File.join(path, "lib")
|
13
|
-
if File.directory?(libpath)
|
14
|
-
$LOAD_PATH.unshift(libpath)
|
15
|
-
else
|
16
|
-
$LOAD_PATH.unshift(path)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
9
|
require 'mocha'
|
21
10
|
|
22
11
|
# Only load the test/unit class if we're not in the spec directory.
|
@@ -31,16 +20,7 @@ if ARGV.include?("-d")
|
|
31
20
|
$console = true
|
32
21
|
end
|
33
22
|
|
34
|
-
|
35
|
-
class Class
|
36
|
-
def publicize_methods(*methods)
|
37
|
-
saved_private_instance_methods = methods.empty? ? self.private_instance_methods : methods
|
38
|
-
|
39
|
-
self.class_eval { public(*saved_private_instance_methods) }
|
40
|
-
yield
|
41
|
-
self.class_eval { private(*saved_private_instance_methods) }
|
42
|
-
end
|
43
|
-
end
|
23
|
+
require File.expand_path(File.join(File.dirname(__FILE__), '../../spec/monkey_patches/publicize_methods'))
|
44
24
|
|
45
25
|
module PuppetTest
|
46
26
|
# These need to be here for when rspec tests use these
|
@@ -227,14 +207,14 @@ module PuppetTest
|
|
227
207
|
#Facter.stubs(:to_hash).returns({})
|
228
208
|
end
|
229
209
|
|
230
|
-
def tempfile
|
210
|
+
def tempfile(suffix = '')
|
231
211
|
if defined?(@@tmpfilenum)
|
232
212
|
@@tmpfilenum += 1
|
233
213
|
else
|
234
214
|
@@tmpfilenum = 1
|
235
215
|
end
|
236
216
|
|
237
|
-
f = File.join(self.tmpdir, "tempfile_" + @@tmpfilenum.to_s)
|
217
|
+
f = File.join(self.tmpdir, "tempfile_" + @@tmpfilenum.to_s + suffix)
|
238
218
|
@@tmpfiles ||= []
|
239
219
|
@@tmpfiles << f
|
240
220
|
f
|
@@ -1,5 +1,3 @@
|
|
1
|
-
require 'puppettest'
|
2
|
-
|
3
1
|
module PuppetTest::Support
|
4
2
|
end
|
5
3
|
module PuppetTest::Support::Utils
|
@@ -7,6 +5,30 @@ module PuppetTest::Support::Utils
|
|
7
5
|
Puppet.warning "#{type}: #{ObjectSpace.each_object(type) { |o| }}"
|
8
6
|
end
|
9
7
|
|
8
|
+
def basedir(*list)
|
9
|
+
unless defined? @@basedir
|
10
|
+
Dir.chdir(File.dirname(__FILE__)) do
|
11
|
+
@@basedir = File.dirname(File.dirname(File.dirname(File.dirname(Dir.getwd))))
|
12
|
+
end
|
13
|
+
end
|
14
|
+
if list.empty?
|
15
|
+
@@basedir
|
16
|
+
else
|
17
|
+
File.join(@@basedir, *list)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def fakedata(dir,pat='*')
|
22
|
+
glob = "#{basedir}/test/#{dir}/#{pat}"
|
23
|
+
files = Dir.glob(glob,File::FNM_PATHNAME)
|
24
|
+
raise Puppet::DevError, "No fakedata matching #{glob}" if files.empty?
|
25
|
+
files
|
26
|
+
end
|
27
|
+
|
28
|
+
def datadir(*list)
|
29
|
+
File.join(basedir, "test", "data", *list)
|
30
|
+
end
|
31
|
+
|
10
32
|
#
|
11
33
|
# TODO: I think this method needs to be renamed to something a little more
|
12
34
|
# explanatory.
|
@@ -38,10 +60,6 @@ module PuppetTest::Support::Utils
|
|
38
60
|
config
|
39
61
|
end
|
40
62
|
|
41
|
-
# stop any services that might be hanging around
|
42
|
-
def stopservices
|
43
|
-
end
|
44
|
-
|
45
63
|
# TODO: rewrite this to use the 'etc' module.
|
46
64
|
|
47
65
|
# Define a variable that contains the name of my user.
|
@@ -84,7 +102,7 @@ module PuppetTest::Support::Utils
|
|
84
102
|
end
|
85
103
|
|
86
104
|
def fakefile(name)
|
87
|
-
ary = [
|
105
|
+
ary = [basedir, "test"]
|
88
106
|
ary += name.split("/")
|
89
107
|
file = File.join(ary)
|
90
108
|
raise Puppet::DevError, "No fakedata file #{file}" unless FileTest.exists?(file)
|
@@ -140,16 +158,3 @@ module PuppetTest::Support::Utils
|
|
140
158
|
config
|
141
159
|
end
|
142
160
|
end
|
143
|
-
|
144
|
-
module PuppetTest
|
145
|
-
include PuppetTest::Support::Utils
|
146
|
-
|
147
|
-
def fakedata(dir,pat='*')
|
148
|
-
glob = "#{basedir}/test/#{dir}/#{pat}"
|
149
|
-
files = Dir.glob(glob,File::FNM_PATHNAME)
|
150
|
-
raise Puppet::DevError, "No fakedata matching #{glob}" if files.empty?
|
151
|
-
files
|
152
|
-
end
|
153
|
-
module_function :fakedata
|
154
|
-
|
155
|
-
end
|
@@ -229,7 +229,10 @@ class TestTypeAttributes < Test::Unit::TestCase
|
|
229
229
|
end
|
230
230
|
yes.each { |a| assert(resource.should(a), "Did not get value for #{a} in #{prov.name}") }
|
231
231
|
no.each do |a|
|
232
|
-
|
232
|
+
assert_nil(resource.should(a), "Got value for unsupported %s in %s" % [a, prov.name])
|
233
|
+
if Puppet::Util::Log.sendlevel?(:info)
|
234
|
+
assert(@logs.find { |l| l.message =~ /not managing attribute #{a}/ and l.level == :info }, "No warning about failed %s" % a)
|
235
|
+
end
|
233
236
|
end
|
234
237
|
|
235
238
|
@logs.clear
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: puppet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 21
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 2
|
8
8
|
- 6
|
9
|
-
-
|
10
|
-
version: 2.6.
|
9
|
+
- 1
|
10
|
+
version: 2.6.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Puppet Labs
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-
|
18
|
+
date: 2010-09-14 00:00:00 +10:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -222,6 +222,7 @@ files:
|
|
222
222
|
- lib/puppet/parser/resource.rb
|
223
223
|
- lib/puppet/parser/templatewrapper.rb
|
224
224
|
- lib/puppet/parser/functions/template.rb
|
225
|
+
- lib/puppet/parser/functions/md5.rb
|
225
226
|
- lib/puppet/parser/functions/include.rb
|
226
227
|
- lib/puppet/parser/functions/realize.rb
|
227
228
|
- lib/puppet/parser/functions/versioncmp.rb
|
@@ -236,6 +237,7 @@ files:
|
|
236
237
|
- lib/puppet/parser/functions/tagged.rb
|
237
238
|
- lib/puppet/parser/functions/split.rb
|
238
239
|
- lib/puppet/parser/functions/file.rb
|
240
|
+
- lib/puppet/parser/functions/extlookup.rb
|
239
241
|
- lib/puppet/parser/functions/fail.rb
|
240
242
|
- lib/puppet/parser/functions/fqdn_rand.rb
|
241
243
|
- lib/puppet/parser/functions/require.rb
|
@@ -580,6 +582,7 @@ files:
|
|
580
582
|
- lib/puppet/type/nagios_servicegroup.rb
|
581
583
|
- lib/puppet/type/k5login.rb
|
582
584
|
- lib/puppet/type/nagios_service.rb
|
585
|
+
- lib/puppet/type/whit.rb
|
583
586
|
- lib/puppet/type/nagios_contactgroup.rb
|
584
587
|
- lib/puppet/type/nagios_hostgroup.rb
|
585
588
|
- lib/puppet/type/nagios_hostextinfo.rb
|
@@ -629,9 +632,12 @@ files:
|
|
629
632
|
- conf/freebsd/puppetmasterd
|
630
633
|
- conf/epm.list
|
631
634
|
- conf/suse/client.init
|
632
|
-
- conf/suse/
|
635
|
+
- conf/suse/fileserver.conf
|
636
|
+
- conf/suse/ruby-env.patch
|
633
637
|
- conf/suse/puppet.spec
|
634
638
|
- conf/suse/server.init
|
639
|
+
- conf/suse/puppet.conf
|
640
|
+
- conf/suse/logrotate
|
635
641
|
- conf/puppet-queue.conf
|
636
642
|
- conf/redhat/client.init
|
637
643
|
- conf/redhat/fileserver.conf
|
@@ -703,6 +709,7 @@ files:
|
|
703
709
|
- ext/emacs/puppet-mode.el
|
704
710
|
- ext/dbfix.sql
|
705
711
|
- ext/puppetstoredconfigclean.rb
|
712
|
+
- ext/puppet-load.rb
|
706
713
|
- ext/autotest/readme.rst
|
707
714
|
- ext/autotest/Rakefile
|
708
715
|
- ext/autotest/config
|
@@ -726,8 +733,6 @@ files:
|
|
726
733
|
- ext/vim/syntax/puppet.vim
|
727
734
|
- ext/vim/README
|
728
735
|
- ext/yaml_nodes.rb
|
729
|
-
- ext/extlookup.rb
|
730
|
-
- ext/puppetlast
|
731
736
|
- tasks/rake/sign.rake
|
732
737
|
- tasks/rake/testbranch.rake
|
733
738
|
- tasks/rake/dailybuild.rake
|
@@ -737,7 +742,6 @@ files:
|
|
737
742
|
- tasks/rake/gem.rake
|
738
743
|
- tasks/rake/yard.rake
|
739
744
|
- tasks/rake/git_workflow.rake
|
740
|
-
- tasks/rake/tracdocs.rake
|
741
745
|
- test/data/reports/tagmail_failers.conf
|
742
746
|
- test/data/reports/1.yaml
|
743
747
|
- test/data/reports/tagmail_passers.conf
|
@@ -887,7 +891,6 @@ files:
|
|
887
891
|
- test/test
|
888
892
|
- test/lib/rake/puppet_testtask.rb
|
889
893
|
- test/lib/rake/puppet_test_loader.rb
|
890
|
-
- test/lib/mocha_standalone.rb
|
891
894
|
- test/lib/puppettest.rb
|
892
895
|
- test/lib/puppettest/filetesting.rb
|
893
896
|
- test/lib/puppettest/runnable_test.rb
|
@@ -932,6 +935,7 @@ files:
|
|
932
935
|
- test/util/log.rb
|
933
936
|
- test/util/fileparsing.rb
|
934
937
|
- spec/fixtures/yaml/test.local.yaml
|
938
|
+
- spec/monkey_patches/publicize_methods.rb
|
935
939
|
- spec/monkey_patches/alias_should_to_must.rb
|
936
940
|
- spec/monkey_patches/add_confine_and_runnable_to_rspec_dsl.rb
|
937
941
|
- spec/shared_behaviours/memory_terminus.rb
|
@@ -1050,11 +1054,13 @@ files:
|
|
1050
1054
|
- spec/unit/parser/functions/regsubst_spec.rb
|
1051
1055
|
- spec/unit/parser/functions/template_spec.rb
|
1052
1056
|
- spec/unit/parser/functions/fqdn_rand_spec.rb
|
1057
|
+
- spec/unit/parser/functions/include_spec.rb
|
1053
1058
|
- spec/unit/parser/functions/sprintf_spec.rb
|
1054
1059
|
- spec/unit/parser/functions/tag_spec.rb
|
1055
1060
|
- spec/unit/parser/functions/versioncmp_spec.rb
|
1056
1061
|
- spec/unit/parser/functions/split_spec.rb
|
1057
1062
|
- spec/unit/parser/functions/generate_spec.rb
|
1063
|
+
- spec/unit/parser/functions/extlookup_spec.rb
|
1058
1064
|
- spec/unit/parser/functions/shellquote_spec.rb
|
1059
1065
|
- spec/unit/parser/functions/inline_template_spec.rb
|
1060
1066
|
- spec/unit/parser/functions/realize_spec.rb
|