Merge pull request #79 from sathlan/feature/apt-force-timeout
authorDan Bode <bodepd@gmail.com>
Wed, 22 Aug 2012 13:47:01 +0000 (06:47 -0700)
committerDan Bode <bodepd@gmail.com>
Wed, 22 Aug 2012 13:47:01 +0000 (06:47 -0700)
Add a way to specify a timeout for the apt::force define.

manifests/backports.pp
manifests/conf.pp
manifests/init.pp
manifests/key.pp
manifests/pin.pp
manifests/ppa.pp
manifests/source.pp
spec/defines/source_spec.rb
templates/source.list.erb
tests/key.pp

index aafdf96578dfa35cc599cc0af821fd6ea67d2f30..e9180c48c22a80c69ff699e076ca482a46f621dd 100644 (file)
@@ -16,7 +16,8 @@
 #
 # == Authors
 #
-# Ben Hughes, I think. At least blame him if this goes wrong. I just added puppet doc.
+# Ben Hughes, I think. At least blame him if this goes wrong.
+# I just added puppet doc.
 #
 # == Copyright
 #
@@ -27,18 +28,20 @@ class apt::backports(
 ) inherits apt::params {
 
   $release_real = downcase($release)
+  $key = $::lsbdistid ? {
+    'debian' => '55BE302B',
+    'ubuntu' => '437D05B5',
+  }
+  $repos = $::lsbdistid ? {
+    'debian' => 'main contrib non-free',
+    'ubuntu' => 'main universe multiverse restricted',
+  }
 
   apt::source { 'backports':
     location   => $location,
     release    => "${release_real}-backports",
-    repos      => $::lsbdistid ? {
-      'debian' => 'main contrib non-free',
-      'ubuntu' => 'main universe multiverse restricted',
-    },
-    key        => $::lsbdistid ? {
-      'debian' => '55BE302B',
-      'ubuntu' => '437D05B5',
-    },
+    repos      => $repos,
+    key        => $key,
     key_server => 'pgp.mit.edu',
     pin        => '200',
   }
index 03aab8e00270fb40ca699d1e4e286a8dd949bb71..3c4cb1975cb3551a1a642f2155111e0932a118e2 100644 (file)
@@ -1,7 +1,7 @@
 define apt::conf (
+  $content,
   $ensure   = present,
-  $priority = '50',
-  $content
+  $priority = '50'
 ) {
 
   include apt::params
index 3587d21b5b00174c7b4ae3333ea96d01d773c132..442e04c5875262ec0c3564863527f47341db3d5e 100644 (file)
@@ -108,7 +108,7 @@ class apt(
   }
 
   # Need anchor to provide containment for dependencies.
-  anchor { "apt::update":
+  anchor { 'apt::update':
     require => Class['apt::update'],
   }
 }
index dbbed2bef0df5e58aea588e1b292d5a1a628359c..98a0f3a32c4b42192f33f6795689b3df939b24ea 100644 (file)
@@ -54,7 +54,7 @@ define apt::key (
         }
       }
 
-      Anchor["apt::key $upkey present"] -> Anchor["apt::key/$title"]
+      Anchor["apt::key ${upkey} present"] -> Anchor["apt::key/${title}"]
 
     }
     absent: {
index 14df14b5b3f370c8ec7bc7978f535ceb15e28548..4ef8953aa86ff1026ccda0902cbb3e5e63332253 100644 (file)
@@ -30,6 +30,6 @@ define apt::pin(
     owner   => root,
     group   => root,
     mode    => '0644',
-    content => template("apt/pin.pref.erb"),
+    content => template('apt/pin.pref.erb'),
   }
 }
index 9527e0d624d3113fa0f72a20d55e5364c3e6a4c2..0458589849e30ec90dcc8f7a7d6f0d73ef6f3c32 100644 (file)
@@ -25,8 +25,10 @@ define apt::ppa(
     command   => "/usr/bin/add-apt-repository ${name}",
     creates   => "${sources_list_d}/${sources_list_d_filename}",
     logoutput => 'on_failure',
-    require   => [ File[$sources_list_d],
-                   Package['python-software-properties'] ],
+    require   => [
+      File[$sources_list_d],
+      Package['python-software-properties'],
+    ],
     notify    => Exec['apt_update'],
   }
 
index 2c26227ec44f3b4b88f33dc28674e54040dd5182..a859174a1aaef9296a74bc8ec8c6acd51d096f1a 100644 (file)
@@ -4,7 +4,7 @@
 define apt::source(
   $ensure            = present,
   $location          = '',
-  $release           = $::lsbdistcodename,
+  $release           = 'UNDEF',
   $repos             = 'main',
   $include_src       = true,
   $required_packages = false,
@@ -21,8 +21,14 @@ define apt::source(
   $sources_list_d = $apt::params::sources_list_d
   $provider       = $apt::params::provider
 
-  if $release == undef {
-    fail('lsbdistcodename fact not available: release parameter required')
+  if $release == 'UNDEF' {
+    if $::lsbdistcodename == undef {
+      fail('lsbdistcodename fact not available: release parameter required')
+    } else {
+      $release_real = $::lsbdistcodename
+    }
+  } else {
+    $release_real = $release
   }
 
   file { "${name}.list":
index 583c6190d4689454ec5f95162a2363f4f5662037..0f37f6367bcbd761d966fe448caf18ea9dd71163 100644 (file)
@@ -42,6 +42,12 @@ describe 'apt::source', :type => :define do
       :location           => 'http://example.com',
       :release            => 'precise',
       :repos              => 'security',
+    },
+    {
+      :release            => '',
+    },
+    {
+      :release            => 'custom',
     }
   ].each do |param_set|
     describe "when #{param_set == {} ? "using default" : "specifying"} class parameters" do
index 345269162b55add1d6938bc2bc3e4df23c0c1564..faa7e286ece80cfafd89db734010328030b03c24 100644 (file)
@@ -1,5 +1,5 @@
 # <%= name %>
-deb <%= location %> <%= release %> <%= repos %>
+deb <%= location %> <%= release_real %> <%= repos %>
 <%- if include_src then -%>
-deb-src <%= location %> <%= release %> <%= repos %>
+deb-src <%= location %> <%= release_real %> <%= repos %>
 <%- end -%>
index 5c62a4c0d8d80168ec25be51a6c4508c1318c3fc..92679cf6be6e41a04b1bad1d0b820eeac026ce3a 100644 (file)
@@ -1,5 +1,5 @@
 # Declare Apt key for apt.puppetlabs.com source
-apt::key { "puppetlabs":
-  key        => "4BD6EC30",
-  key_server => "pgp.mit.edu",
+apt::key { 'puppetlabs':
+  key        => '4BD6EC30',
+  key_server => 'pgp.mit.edu',
 }