diff options
author | Luke Kanies <luke@madstop.com> | 2009-07-23 23:52:44 -0700 |
---|---|---|
committer | Luke Kanies <luke@madstop.com> | 2009-08-01 12:50:41 -0700 |
commit | 6ed01037ad8b6d8d5ff7158ef6e09c785ed8b9fe (patch) | |
tree | c0c6e37e74d8fabaa95e32092b0d4296aa4542a5 /spec/integration | |
parent | 39320b8794549fa7806f2e9e57346242b0b7e847 (diff) | |
download | puppet-6ed01037ad8b6d8d5ff7158ef6e09c785ed8b9fe.tar.gz puppet-6ed01037ad8b6d8d5ff7158ef6e09c785ed8b9fe.tar.xz puppet-6ed01037ad8b6d8d5ff7158ef6e09c785ed8b9fe.zip |
Adding support for an external catalog version
This allows you to specify a command used to determine
the catalog version. Also added an integration test
to verify the version cascades.
Signed-off-by: Luke Kanies <luke@madstop.com>
Diffstat (limited to 'spec/integration')
-rwxr-xr-x | spec/integration/defaults.rb | 4 | ||||
-rwxr-xr-x | spec/integration/parser/compiler.rb | 29 |
2 files changed, 33 insertions, 0 deletions
diff --git a/spec/integration/defaults.rb b/spec/integration/defaults.rb index 72b5127e5..b2e5a829c 100755 --- a/spec/integration/defaults.rb +++ b/spec/integration/defaults.rb @@ -153,4 +153,8 @@ describe "Puppet defaults" do Puppet.settings[:storeconfigs].should be_true end end + + it "should have a setting for determining the configuration version and should default to an empty string" do + Puppet.settings[:config_version].should == "" + end end diff --git a/spec/integration/parser/compiler.rb b/spec/integration/parser/compiler.rb new file mode 100755 index 000000000..27666400b --- /dev/null +++ b/spec/integration/parser/compiler.rb @@ -0,0 +1,29 @@ +#!/usr/bin/env ruby + +require File.dirname(__FILE__) + '/../../spec_helper' + +describe Puppet::Parser::Compiler do + before :each do + @node = Puppet::Node.new "testnode" + + @scope_resource = stub 'scope_resource', :builtin? => true, :finish => nil, :ref => 'Class[main]' + @scope = stub 'scope', :resource => @scope_resource, :source => mock("source") + end + + after do + Puppet.settings.clear + end + + it "should be able to determine the configuration version from a local version control repository" do + # This should always work, because we should always be + # in the puppet repo when we run this. + version = %x{git rev-parse HEAD}.chomp + + Puppet.settings[:config_version] = 'git rev-parse HEAD' + + @parser = Puppet::Parser::Parser.new :environment => "development" + @compiler = Puppet::Parser::Compiler.new(@node, @parser) + + @compiler.catalog.version.should == version + end +end |