]> review.fuel-infra Code Review - puppet-modules/puppetlabs-apt.git/commitdiff
Revert "Undo backwards-incompatible changes and features."
authorHunter Haugen <hunter@puppetlabs.com>
Fri, 14 Feb 2014 22:49:43 +0000 (14:49 -0800)
committerHunter Haugen <hunter@puppetlabs.com>
Fri, 14 Feb 2014 22:49:43 +0000 (14:49 -0800)
This reverts commit f9e2fe2a7ce3b2aee5535591b9f6882c29ccc2cb.

manifests/force.pp
manifests/ppa.pp
spec/acceptance/apt_ppa_spec.rb
spec/acceptance/force_spec.rb
spec/defines/force_spec.rb

index 70b7d47239b29a362428f12afafac3fb5d53a20f..152bb67354db6fa8960a20a942329f0cf5d7b147 100644 (file)
@@ -2,7 +2,7 @@
 # force a package from a specific release
 
 define apt::force(
-  $release = 'testing',
+  $release = false,
   $version = false,
   $timeout = 300
 ) {
index caff436bdf542c7fbaa23a5752ef81feb7912158..14fbbceba41089f3e7ee683724c748c8c65c5941 100644 (file)
@@ -1,10 +1,10 @@
 # ppa.pp
 
 define apt::ppa(
+  $ensure  = 'present',
   $release = $::lsbdistcodename,
   $options = '-y'
 ) {
-  $ensure  = 'present'
   include apt::params
   include apt::update
 
index 2b156bc53288138df583c5ab292b09bc6a82a644..c0d216107de96913cebfaae9de713df8eff30958 100644 (file)
@@ -51,12 +51,51 @@ if fact('operatingsystem') == 'Ubuntu'
       end
     end
 
+    context 'ensure' do
+      context 'present' do
+        it 'works without failure' do
+          pp = <<-EOS
+          include '::apt'
+          apt::ppa { 'ppa:canonical-kernel-team/ppa': ensure => present }
+          EOS
+
+          apply_manifest(pp, :catch_failures => true)
+        end
+
+        describe 'contains the source file' do
+          it 'contains a kernel ppa source' do
+            shell('ls /etc/apt/sources.list.d/canonical-kernel-team-ppa-*', :acceptable_exit_codes => [0])
+          end
+        end
+      end
+    end
+
+    context 'ensure' do
+      context 'absent' do
+        it 'works without failure' do
+          pp = <<-EOS
+          include '::apt'
+          apt::ppa { 'ppa:canonical-kernel-team/ppa': ensure => absent }
+          EOS
+
+          apply_manifest(pp, :catch_failures => true)
+        end
+
+        describe 'doesnt contain the source file' do
+          it 'fails' do
+            shell('ls /etc/apt/sources.list.d/canonical-kernel-team-ppa-*', :acceptable_exit_codes => [2])
+          end
+        end
+      end
+    end
+
     context 'release' do
       context 'precise' do
         it 'works without failure' do
           pp = <<-EOS
           include '::apt'
           apt::ppa { 'ppa:canonical-kernel-team/ppa':
+            ensure  => present,
             release => precise,
           }
           EOS
@@ -77,6 +116,7 @@ if fact('operatingsystem') == 'Ubuntu'
           pp = <<-EOS
           include '::apt'
           apt::ppa { 'ppa:canonical-kernel-team/ppa':
+            ensure  => present,
             release => precise,
             options => '-y',
           }
index aab77a1a766497fd9ad702f71ffa57aadfe73023..c364d5fe157fdb05ea4b7e2fa6ff235841e3ee8d 100644 (file)
@@ -7,7 +7,7 @@ describe 'apt::force define' do
     it 'should work with no errors' do
       pp = <<-EOS
       include apt
-      apt::force { 'vim': release => false, }
+      apt::force { 'vim': }
       EOS
 
       shell('apt-get remove -y vim')
@@ -41,7 +41,7 @@ describe 'apt::force define' do
     it 'should work with no errors' do
       pp = <<-EOS
       include apt
-      apt::force { 'vim': version => '1.1.1', release => false, }
+      apt::force { 'vim': version => '1.1.1' }
       EOS
 
       shell('apt-get remove -y vim')
@@ -59,7 +59,7 @@ describe 'apt::force define' do
     it 'should work with no errors' do
       pp = <<-EOS
       include apt
-      apt::force { 'vim': release => false, timeout => '1' }
+      apt::force { 'vim': timeout => '1' }
       EOS
 
       shell('apt-get clean')
index 829ec4748f788999d34d291e25ab890b7b847139..84231fa233b1082f42132f618680f95e767c78a8 100644 (file)
@@ -10,7 +10,7 @@ describe 'apt::force', :type => :define do
 
   let :default_params do
     {
-      :release => 'testing',
+      :release => false,
       :version => false
     }
   end
@@ -19,18 +19,18 @@ describe 'apt::force', :type => :define do
     let :params do
       default_params
     end
-    it { should contain_exec("/usr/bin/apt-get -y -t #{params[:release]} install #{title}").with(
-      :unless => "/usr/bin/test \$(/usr/bin/apt-cache policy -t #{params[:release]} #{title} | /bin/grep -E 'Installed|Candidate' | /usr/bin/uniq -s 14 | /usr/bin/wc -l) -eq 1",
+    it { should contain_exec("/usr/bin/apt-get -y  install #{title}").with(
+      :unless  => "/usr/bin/dpkg -s #{title} | grep -q 'Status: install'",
       :timeout => '300'
     ) }
   end
 
-  describe "when specifying false release parameter" do
+  describe "when specifying release parameter" do
     let :params do
-      default_params.merge(:release => false)
+      default_params.merge(:release => 'testing')
     end
-    it { should contain_exec("/usr/bin/apt-get -y  install #{title}").with(
-      :unless  => "/usr/bin/dpkg -s #{title} | grep -q 'Status: install'"
+    it { should contain_exec("/usr/bin/apt-get -y -t #{params[:release]} install #{title}").with(
+      :unless => "/usr/bin/test \$(/usr/bin/apt-cache policy -t #{params[:release]} #{title} | /bin/grep -E 'Installed|Candidate' | /usr/bin/uniq -s 14 | /usr/bin/wc -l) -eq 1"
     ) }
   end
 
@@ -38,20 +38,20 @@ describe 'apt::force', :type => :define do
     let :params do
       default_params.merge(:version => '1')
     end
-    it { should contain_exec("/usr/bin/apt-get -y -t #{params[:release]} install #{title}=#{params[:version]}").with(
-      :unless => "/usr/bin/apt-cache policy -t #{params[:release]} #{title} | /bin/grep -q 'Installed: #{params[:version]}'"
+    it { should contain_exec("/usr/bin/apt-get -y  install #{title}=#{params[:version]}").with(
+      :unless => "/usr/bin/dpkg -s #{title} | grep -q 'Version: #{params[:version]}'"
     ) }
   end
 
-  describe "when specifying false release and version parameters" do
+  describe "when specifying release and version parameters" do
     let :params do
       default_params.merge(
-        :release => false,
+        :release => 'testing',
         :version => '1'
       )
     end
-    it { should contain_exec("/usr/bin/apt-get -y  install #{title}=1").with(
-      :unless => "/usr/bin/dpkg -s #{title} | grep -q 'Version: #{params[:version]}'"
+    it { should contain_exec("/usr/bin/apt-get -y -t #{params[:release]} install #{title}=1").with(
+      :unless => "/usr/bin/apt-cache policy -t #{params[:release]} #{title} | /bin/grep -q 'Installed: #{params[:version]}'"
     ) }
   end
 end