Skip to content

Commit

Permalink
Merge pull request #54 from branan/python-software-properties-in-apt-ppa
Browse files Browse the repository at this point in the history
Move Package['python-software-properties'] to apt:ppa
  • Loading branch information
nanliu committed May 4, 2012
2 parents 669f5b5 + 0ffe484 commit 1c6b9d4
Show file tree
Hide file tree
Showing 4 changed files with 23 additions and 14 deletions.
4 changes: 0 additions & 4 deletions manifests/init.pp
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,6 @@

validate_bool($purge_sources_list, $purge_sources_list_d)

if ! defined(Package['python-software-properties']) {
package { 'python-software-properties': }
}

$sources_list_content = $purge_sources_list ? {
false => undef,
true => "# Repos managed by puppet.\n",
Expand Down
5 changes: 5 additions & 0 deletions manifests/ppa.pp
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,14 @@
$filename_without_ppa = regsubst($filename_without_slashes, '^ppa:','','G')
$sources_list_d_filename = "${filename_without_ppa}-${release}.list"

if ! defined(Package['python-software-properties']) {
package { 'python-software-properties': }
}

exec { "add-apt-repository-${name}":
command => "/usr/bin/add-apt-repository ${name}",
creates => "${sources_list_d}/${sources_list_d_filename}",
require => Package['python-software-properties'],
notify => Exec['apt_update'],
}

Expand Down
7 changes: 0 additions & 7 deletions spec/classes/apt_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,6 @@

it { should include_class("apt::params") }

it { should contain_package("python-software-properties") }

it {
if param_hash[:purge_sources_list]
should contain_file("sources.list").with({
Expand Down Expand Up @@ -128,9 +126,4 @@
end
end
end

describe "it should not error if package['python-software-properties'] is already defined" do
let(:pre_condition) { 'package { "python-software-properties": }->Class["Apt"]' }
it { should contain_package("python-software-properties") }
end
end
21 changes: 18 additions & 3 deletions spec/defines/ppa_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
t.sub(/^ppa:/,'').gsub('/','-') << "-" << "#{release}.list"
end

it { should contain_package("python-software-properties") }

it { should contain_exec("apt_update").with(
'command' => '/usr/bin/apt-get update',
'refreshonly' => true
Expand All @@ -26,8 +28,9 @@

it { should contain_exec("add-apt-repository-#{t}").with(
'command' => "/usr/bin/add-apt-repository #{t}",
'notify' => "Exec[apt_update]",
'creates' => "/etc/apt/sources.list.d/#{filename}"
'creates' => "/etc/apt/sources.list.d/#{filename}",
'require' => "Package[python-software-properties]",
'notify' => "Exec[apt_update]"
)
}

Expand All @@ -39,6 +42,19 @@
end
end

describe "it should not error if package['python-software-properties'] is already defined" do
let :pre_condition do
'class {"apt": }' +
'package { "python-software-properties": }->Apt::Ppa["ppa"]'
end
let :facts do
{:lsbdistcodename => 'natty'}
end
let(:title) { "ppa" }
let(:release) { "natty" }
it { should contain_package("python-software-properties") }
end

describe "without Class[apt] should raise a Puppet::Error" do
let(:release) { "natty" }
let(:title) { "ppa" }
Expand All @@ -49,5 +65,4 @@
let(:title) { "ppa:" }
it { expect { should contain_apt__ppa(:release) }.to raise_error(Puppet::Error) }
end

end

0 comments on commit 1c6b9d4

Please sign in to comment.