notify => Exec['apt_update'],
}
- # Need anchor to provide containment for dependencies.
- anchor { 'apt::update':
- require => Class['apt::update'],
- }
+ contain 'apt::update'
# manage sources if present
if $sources {
notify => Exec['apt_update'],
}
}
-
- # Need anchor to provide containment for dependencies.
- anchor { "apt::ppa::${name}":
- require => Class['apt::update'],
- }
}
source => $source,
notify => $_notify,
}
-
- if $notify_update {
- anchor { "apt::setting::${name}":
- require => Class['apt::update']
- }
- }
}
}
end
- describe 'apt included, no proxy' do
+ describe 'ppa depending on ppa, MODULES-1156' do
let :pre_condition do
'class { "apt": }'
end
+ end
+
+ describe 'apt included, no proxy' do
+ let :pre_condition do
+ 'class { "apt": }
+ apt::ppa { "ppa:foo2": }
+ '
+ end
let :facts do
{
:lsbdistrelease => '14.04',
end
let :params do
{
- :options => '',
+ :options => '',
:package_manage => true,
+ :require => 'Apt::Ppa[ppa:foo2]',
}
end
let(:title) { 'ppa:foo' }
+ it { is_expected.to compile.with_all_deps }
it { is_expected.to contain_package('software-properties-common') }
it { is_expected.to contain_exec('add-apt-repository-ppa:foo').that_notifies('Exec[apt_update]').with({
:environment => [],
end
end
+ describe 'settings requiring settings, MODULES-769' do
+ let(:pre_condition) do
+ 'class { "apt": }
+ apt::setting { "list-teddybear": content => "foo" }
+ '
+ end
+ let(:facts) { { :lsbdistid => 'Debian', :osfamily => 'Debian', :lsbdistcodename => 'wheezy' } }
+ let(:title) { 'conf-teddybear' }
+ let(:default_params) { { :content => 'di' } }
+
+ let(:params) { default_params.merge({ :require => 'Apt::Setting[list-teddybear]' }) }
+
+ it { is_expected.to compile.with_all_deps }
+ end
+
describe 'when trying to pull one over' do
context 'with source and content' do
let(:params) { default_params.merge({ :source => 'la' }) }