From 1ed72b472b11cd29c08888b191393c5f24935bf7 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Mon, 4 May 2020 15:22:49 +0900 Subject: [PATCH] Use anchor to require necessary packages ... so that correct packages are required without re-defining them in resource implementations. Change-Id: I3d1d4438094bf964ce8933c6c4371a67c45c678c --- lib/puppet/type/tacker_config.rb | 4 ++-- spec/unit/type/tacker_config_spec.rb | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/puppet/type/tacker_config.rb b/lib/puppet/type/tacker_config.rb index 16388c0..ddb453e 100644 --- a/lib/puppet/type/tacker_config.rb +++ b/lib/puppet/type/tacker_config.rb @@ -46,8 +46,8 @@ Puppet::Type.newtype(:tacker_config) do defaultto('') end - autorequire(:package) do - 'tacker' + autorequire(:anchor) do + ['tacker::install::end'] end end diff --git a/spec/unit/type/tacker_config_spec.rb b/spec/unit/type/tacker_config_spec.rb index 84790c0..a7505fa 100644 --- a/spec/unit/type/tacker_config_spec.rb +++ b/spec/unit/type/tacker_config_spec.rb @@ -1,5 +1,6 @@ require 'puppet' require 'puppet/type/tacker_config' + describe 'Puppet::Type.type(:tacker_config)' do before :each do @tacker_config = Puppet::Type.type(:tacker_config).new(:name => 'DEFAULT/foo', :value => 'bar') @@ -52,12 +53,12 @@ describe 'Puppet::Type.type(:tacker_config)' do it 'should autorequire the package that install the file' do catalog = Puppet::Resource::Catalog.new - package = Puppet::Type.type(:package).new(:name => 'tacker') - catalog.add_resource package, @tacker_config + anchor = Puppet::Type.type(:anchor).new(:name => 'tacker::install::end') + catalog.add_resource anchor, @tacker_config dependency = @tacker_config.autorequire expect(dependency.size).to eq(1) expect(dependency[0].target).to eq(@tacker_config) - expect(dependency[0].source).to eq(package) + expect(dependency[0].source).to eq(anchor) end