summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Martin <max@puppetlabs.com>2011-04-08 14:47:01 -0700
committerMax Martin <max@puppetlabs.com>2011-04-08 14:47:01 -0700
commit7b23e59f64d75158e067fa41f9d41c257aa0bc4b (patch)
tree5430c4e5d5b660484182adf076a9492032434beb
parentda4457be4dedaed5368bacf81a08f0429e21cd45 (diff)
parente493f8acf9fe40baadf4fcd4e1176afa6264d768 (diff)
downloadpuppet-7b23e59f64d75158e067fa41f9d41c257aa0bc4b.tar.gz
puppet-7b23e59f64d75158e067fa41f9d41c257aa0bc4b.tar.xz
puppet-7b23e59f64d75158e067fa41f9d41c257aa0bc4b.zip
Merge branch 'ticket/2.6.next/6856-dangling-symlinks' into 2.6.next
* ticket/2.6.next/6856-dangling-symlinks: (#6856) Copy dangling symlinks with 'links => manage' File resource.
-rwxr-xr-xlib/puppet/type/file/source.rb1
-rwxr-xr-xspec/unit/type/file/source_spec.rb1
2 files changed, 2 insertions, 0 deletions
diff --git a/lib/puppet/type/file/source.rb b/lib/puppet/type/file/source.rb
index 6dda7957c..6ebec51fe 100755
--- a/lib/puppet/type/file/source.rb
+++ b/lib/puppet/type/file/source.rb
@@ -114,6 +114,7 @@ module Puppet
param_name = (metadata_method == :checksum) ? :content : metadata_method
next if metadata_method == :owner and !Puppet.features.root?
next if metadata_method == :checksum and metadata.ftype == "directory"
+ next if metadata_method == :checksum and metadata.ftype == "link" and metadata.links == :manage
if resource[param_name].nil? or resource[param_name] == :absent
resource[param_name] = metadata.send(metadata_method)
diff --git a/spec/unit/type/file/source_spec.rb b/spec/unit/type/file/source_spec.rb
index 00cc2f235..6e04fa2a5 100755
--- a/spec/unit/type/file/source_spec.rb
+++ b/spec/unit/type/file/source_spec.rb
@@ -187,6 +187,7 @@ describe Puppet::Type.type(:file).attrclass(:source) do
describe "and the source is a link" do
it "should set the target to the link destination" do
@metadata.stubs(:ftype).returns "link"
+ @metadata.stubs(:links).returns "manage"
@resource.stubs(:[])
@resource.stubs(:[]=)