]> gitweb.fluxo.info Git - puppet-apt.git/commitdiff
Apply code style corrections from puppet-lint
authorGabriel Filion <lelutin@gmail.com>
Wed, 2 Jan 2013 13:12:11 +0000 (08:12 -0500)
committerintrigeri <intrigeri@boum.org>
Wed, 2 Jan 2013 16:28:59 +0000 (17:28 +0100)
Signed-off-by: Gabriel Filion <lelutin@gmail.com>
+ more linting by intrigeri.

Conflicts:
manifests/apticron.pp
manifests/cron/dist_upgrade.pp
manifests/cron/download.pp
manifests/dist_upgrade/initiator.pp
manifests/init.pp
manifests/listchanges.pp
manifests/preferences.pp
manifests/preseeded_package.pp
manifests/proxy_client.pp
manifests/unattended_upgrades.pp
manifests/update.pp

21 files changed:
manifests/apt_conf.pp
manifests/apticron.pp
manifests/cron/base.pp
manifests/cron/dist_upgrade.pp
manifests/cron/download.pp
manifests/dist_upgrade.pp
manifests/dist_upgrade/initiator.pp
manifests/dot_d_directories.pp
manifests/dselect.pp
manifests/init.pp
manifests/listchanges.pp
manifests/preferences.pp
manifests/preferences/absent.pp
manifests/preferences_snippet.pp
manifests/preseeded_package.pp
manifests/proxy_client.pp
manifests/reboot_required_notify.pp
manifests/sources_list.pp
manifests/unattended_upgrades.pp
manifests/update.pp
manifests/upgrade_package.pp

index fe07546698732cb1e901ea1b467c7f2a0514f566..d78fb9be0a4e892dabbad14db45775492bc51290 100644 (file)
@@ -19,8 +19,10 @@ define apt::apt_conf(
   # apparently doesn't.
   file { "/etc/apt/apt.conf.d/${name}":
     ensure => $ensure,
-    owner => root, group => 0, mode => 0644,
-    notify => Exec["refresh_apt"],
+    owner  => root,
+    group  => 0,
+    mode   => '0644',
+    notify => Exec['refresh_apt'],
   }
 
   if $source {
index ebdd5b57f0f7a4e55cbe39ea96e0de2bc39508d4..54d7b71ee6c93ec800d3f721776bed5da493c174 100644 (file)
@@ -12,11 +12,13 @@ class apt::apticron(
   $customsubject = ''
 ) {
 
-  package { apticron: ensure => $ensure_version }
+  package { 'apticron': ensure => $ensure_version }
 
-  file { "/etc/apticron/apticron.conf":
+  file { '/etc/apticron/apticron.conf':
     content => template($apt::apticron::config),
-    mode => 0644, owner => root, group => root,
-    require => Package["apticron"];  
+    owner   => root,
+    group   => root,
+    mode    => '0644',
+    require => Package['apticron'];
   }
 }
index 7ccfce644e92956b285a46c187ec20ddc9430ddb..39fc3061de9af28fdefb04552c55f4ee95c8cbd8 100644 (file)
@@ -1,6 +1,6 @@
 class apt::cron::base {
 
-  package { cron-apt: ensure => installed }
+  package { 'cron-apt': ensure => installed }
 
   case $apt_cron_hours {
     '': {}
index 68460f2b2f06d40d0358f9571dc65bf332e59132..a880a665e52c28f0bf794cc8756ce11e326f616e 100644 (file)
@@ -4,22 +4,26 @@ class apt::cron::dist_upgrade inherits apt::cron::base {
 dist-upgrade -y -o APT::Get::Show-Upgraded=true -o 'DPkg::Options::=--force-confold'
 "
 
-  file { "/etc/cron-apt/action.d/3-download":
+  file { '/etc/cron-apt/action.d/3-download':
     ensure => absent,
   }
 
-  package { "apt-listbugs": ensure => absent }
+  package { 'apt-listbugs': ensure => absent }
 
-  file { "/etc/cron-apt/action.d/4-dist-upgrade":
+  file { '/etc/cron-apt/action.d/4-dist-upgrade':
     content => $action,
-    require => Package[cron-apt],
-    owner => root, group => 0, mode => 0644;
+    owner   => root,
+    group   => 0,
+    mode    => '0644',
+    require => Package[cron-apt];
   }
 
-  file { "/etc/cron-apt/config.d/MAILON":
-    content => "MAILON=upgrade\n",
-    require => Package[cron-apt],
-    owner => root, group => 0, mode => 0644;
+  file { '/etc/cron-apt/config.d/MAILON':
+    content => 'MAILON=upgrade\n',
+    owner   => root,
+    group   => 0,
+    mode    => '0644',
+    require => Package[cron-apt];
   }
 
 }
index f4e91845c9081c3a3db85bf89f5c72913f67377b..4a19fec17f30a34ba6e7eef9bbe4b8853486b39c 100644 (file)
@@ -4,20 +4,24 @@ class apt::cron::download inherits apt::cron::base {
 dist-upgrade -d -y -o APT::Get::Show-Upgraded=true
 "
 
-  file { "/etc/cron-apt/action.d/4-dist-upgrade":
+  file { '/etc/cron-apt/action.d/4-dist-upgrade':
     ensure => absent,
   }
 
-  file { "/etc/cron-apt/action.d/3-download":
+  file { '/etc/cron-apt/action.d/3-download':
     content => $action,
     require => Package[cron-apt],
-    owner => root, group => 0, mode => 0644;
+    owner   => root,
+    group   => 0,
+    mode    => '0644';
   }
 
-  file { "/etc/cron-apt/config.d/MAILON":
+  file { '/etc/cron-apt/config.d/MAILON':
     content => "MAILON=changes\n",
     require => Package[cron-apt],
-    owner => root, group => 0, mode => 0644;
+    owner   => root,
+    group   => 0,
+    mode    => '0644';
   }
 
 }
index ed25b0baafed0ad1d2e8542e9c51022780fcebac..bf78dcca46a7125561a125ded820466b4842fd70 100644 (file)
@@ -4,13 +4,15 @@ class apt::dist_upgrade {
     include apt::update
   }
 
+  $req = $apt::disable_update ? {
+    true    => undef,
+    default => Exec['apt_updated'],
+  }
+
   exec { 'apt_dist-upgrade':
-    command     => "/usr/bin/apt-get -q -y -o 'DPkg::Options::=--force-confold' dist-upgrade",
+    command     => '/usr/bin/apt-get -q -y -o \'DPkg::Options::=--force-confold\' dist-upgrade',
     refreshonly => true,
-    require     => $apt::disable_update ? {
-      true    => undef,
-      default => Exec['apt_updated'],
-    }
+    require     => $req
   }
 
 }
index f1d522b28c5f18aaee68a0c738c210d96bed890e..d23898838a1ac76f829b24f697f1e39ddd59e54b 100644 (file)
@@ -4,15 +4,15 @@ class apt::dist_upgrade::initiator inherits apt::dist_upgrade {
   $initiator_abs = "${apt::apt_base_dir}/${initiator}"
 
   file { 'apt_upgrade_initiator':
-    mode     => 0644,
+    mode     => '0644',
     owner    => root,
     group    => 0,
-    path     => "${initiator_abs}",
+    path     => $initiator_abs,
     checksum => md5,
     source   => [
-                 "puppet:///modules/site_apt/${::fqdn}/${initiator}",
-                 "puppet:///modules/site_apt/${initiator}",
-                 "puppet:///modules/apt/${initiator}",
+                  "puppet:///modules/site_apt/${::fqdn}/${initiator}",
+                  "puppet:///modules/site_apt/${initiator}",
+                  "puppet:///modules/apt/${initiator}",
                 ],
   }
 
index 742aad47a5d4281cc21864e8a2372d9e278165fc..37c3fc8597bf749019185747da830a9d3fc96663 100644 (file)
@@ -2,20 +2,20 @@ class apt::dot_d_directories {
 
   # watch .d directories and ensure they are present
   file {
-    "/etc/apt/apt.conf.d":
-      ensure => directory,
+    '/etc/apt/apt.conf.d':
+      ensure   => directory,
       checksum => mtime,
-      notify => Exec['refresh_apt'];
-    "/etc/apt/sources.list.d":
-      ensure => directory,
+      notify   => Exec['refresh_apt'];
+    '/etc/apt/sources.list.d':
+      ensure   => directory,
       checksum => mtime,
-      notify => Exec['refresh_apt'];
+      notify   => Exec['refresh_apt'];
   }
 
   exec {
     # "&& sleep 1" is workaround for older(?) clients
     'refresh_apt':
-      command => '/usr/bin/apt-get update && sleep 1',
+      command     => '/usr/bin/apt-get update && sleep 1',
       refreshonly => true,
   }
 
index 44f0e1961cf5a3692376207b28ca1057677060f7..6feeb9f7b0d28008e8aaeeb10d4ef672e612e0da 100644 (file)
@@ -1,10 +1,10 @@
 class apt::dselect {
 
   # suppress annoying help texts of dselect
-  line { dselect_expert:
-      file => "/etc/dpkg/dselect.cfg",
-      line => "expert",
+  line { 'dselect_expert':
+      file => '/etc/dpkg/dselect.cfg',
+      line => 'expert',
   }
 
-  package { dselect: ensure => installed }
+  package { 'dselect': ensure => installed }
 }
index 5c0738bf5fe4a68569b59bbb3525c43760167a85..020c1ccb556bf002554d16d6bf8b2df28f81254d 100644 (file)
@@ -20,7 +20,7 @@ class apt(
   case $::operatingsystem {
     'debian': {
       $real_repos = $repos ? {
-        'auto'      => 'main contrib non-free',
+        'auto'  => 'main contrib non-free',
         default => $repos,
       }
     }
@@ -32,8 +32,8 @@ class apt(
     }
   }
 
-  package { apt:
-    ensure => installed,
+  package { 'apt':
+    ensure  => installed,
     require => undef,
   }
 
@@ -42,7 +42,7 @@ class apt(
   # init $release, $next_release, $next_codename, $release_version
   case $codename {
     'n/a': {
-      fail("Unknown lsbdistcodename reported by facter: '$lsbdistcodename', please fix this by setting this variable in your manifest.")
+      fail("Unknown lsbdistcodename reported by facter: '$::lsbdistcodename', please fix this by setting this variable in your manifest.")
     }
     default: {
       $release = debian_release($codename)
@@ -52,41 +52,44 @@ class apt(
   $next_codename = debian_nextcodename($codename)
   $next_release = debian_nextrelease($release)
 
+  $sources_content = $::custom_sources_list ? {
+    ''      => template( "apt/${::operatingsystem}/sources.list.erb"),
+    default => $::custom_sources_list
+  }
   file {
     # include main, security and backports
     # additional sources should be included via the apt::sources_list define
-    "/etc/apt/sources.list":
-      content => $custom_sources_list ? {
-        '' => template( "apt/${::operatingsystem}/sources.list.erb"),
-        default => $custom_sources_list
-      },
+    '/etc/apt/sources.list':
+      content => $sources_content,
       require => Package['lsb'],
-      notify => Exec['refresh_apt'],
-      owner => root, group => 0, mode => 0644;
+      notify  => Exec['refresh_apt'],
+      owner   => root,
+      group   => 0,
+      mode    => '0644';
   }
 
-  apt_conf { "02show_upgraded":
+  apt_conf { '02show_upgraded':
     source => [ "puppet:///modules/site_apt/${::fqdn}/02show_upgraded",
-                "puppet:///modules/site_apt/02show_upgraded",
-                "puppet:///modules/apt/02show_upgraded" ]
+                'puppet:///modules/site_apt/02show_upgraded',
+                'puppet:///modules/apt/02show_upgraded' ]
   }
 
-  if ( $::virtual == "vserver" ) {
-    apt_conf { "03clean_vserver":
+  if ( $::virtual == 'vserver' ) {
+    apt_conf { '03clean_vserver':
       source => [ "puppet:///modules/site_apt/${::fqdn}/03clean_vserver",
-                  "puppet:///modules/site_apt/03clean_vserver",
-                  "puppet:///modules/apt/03clean_vserver" ],
-      alias => "03clean";
+                  'puppet:///modules/site_apt/03clean_vserver',
+                  'puppet:///modules/apt/03clean_vserver' ],
+      alias => '03clean';
     }
   }
   else {
-    apt_conf { "03clean":
+    apt_conf { '03clean':
       source => [ "puppet:///modules/site_apt/${::fqdn}/03clean",
-                  "puppet:///modules/site_apt/03clean",
-                  "puppet:///modules/apt/03clean" ]
+                  'puppet:///modules/site_apt/03clean',
+                  'puppet:///modules/apt/03clean' ]
     }
   }
-    
+
   case $custom_preferences {
     false: {
       include apt::preferences::absent
@@ -101,29 +104,35 @@ class apt(
   include apt::dot_d_directories
 
   ## This package should really always be current
-  package { "debian-archive-keyring": ensure => latest }
+  package { 'debian-archive-keyring': ensure => latest }
 
   # backports uses the normal archive key now
-  package { "debian-backports-keyring": ensure => absent }
+  package { 'debian-backports-keyring': ensure => absent }
+
+  include common::moduledir
+  $apt_base_dir = "${common::moduledir::module_dir_path}/apt"
+  modules_dir { 'apt': }
 
-  if $custom_key_dir {
+  if $::custom_key_dir {
     file { "${apt_base_dir}/keys.d":
-      source => "$custom_key_dir",
+      source  => $::custom_key_dir,
       recurse => true,
-      mode => 0755, owner => root, group => root,
+      owner   => root,
+      group   => root,
+      mode    => '0755',
     }
-    exec { "custom_keys":
-      command => "find ${apt_base_dir}/keys.d -type f -exec apt-key add '{}' \\; && /usr/bin/apt-get update",
-      subscribe => File["${apt_base_dir}/keys.d"],
+    exec { 'custom_keys':
+      command     => "find ${apt_base_dir}/keys.d -type f -exec apt-key add '{}' \\; && /usr/bin/apt-get update",
+      subscribe   => File["${apt_base_dir}/keys.d"],
       refreshonly => true,
     }
     if $custom_preferences != false {
-      Exec["custom_keys"] {
+      Exec['custom_keys'] {
         before => File['apt_config'],
       }
     }
   }
 
   # workaround for preseeded_package component
-  file { [ "/var/cache", "/var/cache/local", "/var/cache/local/preseeding" ]: ensure => directory }
+  file { [ '/var/cache', '/var/cache/local', '/var/cache/local/preseeding' ]: ensure => directory }
 }
index 41944639f7bc518974012056dc32007770df69b2..0c163ae8182366e100c0990a124d1f6301da29bf 100644 (file)
@@ -7,11 +7,13 @@ class apt::listchanges(
   $saveseen = '/var/lib/apt/listchanges.db',
   $which = 'both'
 ){
-  package { apt-listchanges: ensure => $ensure_version }
-  
-  file { "/etc/apt/listchanges.conf":
+  package { 'apt-listchanges': ensure => $ensure_version }
+
+  file { '/etc/apt/listchanges.conf':
     content => template($apt::listchanges::config),
-    mode => 0644, owner => root, group => root,
-    require => Package["apt-listchanges"];
+    owner   => root,
+    group   => root,
+    mode    => '0644',
+    require => Package['apt-listchanges'];
   }
 }
index 66f36a737f9d373dd63a49b94d97ec55aec60854..9ed24c12a33a4c01af99fc7e37737ec6afffc4bd 100644 (file)
@@ -1,20 +1,20 @@
 class apt::preferences {
 
-  $pref_contents = $custom_preferences ? {
-    '' => $operatingsystem ? {
+  $pref_contents = $apt::custom_preferences ? {
+    ''      => $::operatingsystem ? {
       'debian' => template("apt/${::operatingsystem}/preferences_${apt::codename}.erb"),
       'ubuntu' => template("apt/${::operatingsystem}/preferences_${apt::codename}.erb"),
     },
-    default => $custom_preferences
+    default => $apt::custom_preferences
   }
 
   file { '/etc/apt/preferences':
-    ensure => present,
-    alias => 'apt_config',
+    ensure  => present,
+    alias   => 'apt_config',
     # only update together
     content => $pref_contents,
-    require => File["/etc/apt/sources.list"],
-    owner => root, group => 0, mode => 0644;
+    require => File['/etc/apt/sources.list'],
+    owner   => root, group => 0, mode => '0644';
   }
 
 }
index 68ab40053cd2fe3af0a3c7aa9c555087b353ee4a..f32e0307c8ac06034be25e00b2ae848f06af17bb 100644 (file)
@@ -1,7 +1,7 @@
 class apt::preferences::absent {
 
   file { '/etc/apt/preferences':
-    alias => 'apt_config',
     ensure => absent,
+    alias  => 'apt_config',
   }
 }
index 1aafe575fec2acfce69da9091b62e8c563fb1107..0bff85c17d23b5f31fa89fc7d8415ffb586c28cd 100644 (file)
@@ -1,11 +1,11 @@
-define apt::preferences_snippet(
+define apt::preferences_snippet (
+  $priority,
   $package = false,
   $ensure = 'present',
   $source = '',
   $release = '',
-  $pin = '',
-  $priority )
-{
+  $pin = ''
+) {
 
   $real_package = $package ? {
     false   => $name,
@@ -13,19 +13,19 @@ define apt::preferences_snippet(
   }
 
   if $custom_preferences == false {
-    fail("Trying to define a preferences_snippet with \$custom_preferences set to false.")
+    fail('Trying to define a preferences_snippet with $custom_preferences set to false.')
   }
 
   if !$pin and !$release {
-    fail("apt::preferences_snippet requires one of the 'pin' or 'release' argument to be set")
+    fail('apt::preferences_snippet requires one of the \'pin\' or \'release\' argument to be set')
   }
   if $pin and $release {
-    fail("apt::preferences_snippet requires either a 'pin' or 'release' argument, not both")
+    fail('apt::preferences_snippet requires either a \'pin\' or \'release\' argument, not both')
   }
 
   file { "/etc/apt/preferences.d/${name}":
     ensure => $ensure,
-    owner => root, group => 0, mode => 0644;
+    owner  => root, group => 0, mode => '0644';
   }
 
   # This should really work in the same manner as sources_list and apt_conf
@@ -36,12 +36,12 @@ define apt::preferences_snippet(
       case $release {
         '': {
           File["/etc/apt/preferences.d/${name}"]{
-            content => template("apt/preferences_snippet.erb")
+            content => template('apt/preferences_snippet.erb')
           }
         }
         default: {
           File["/etc/apt/preferences.d/${name}"]{
-            content => template("apt/preferences_snippet_release.erb")
+            content => template('apt/preferences_snippet_release.erb')
           }
         }
       }
index ac9a821d85b59e94804511422de91df070a0b4f2..9bca8b16082f797e8c9521e33fb5a712805f893f 100644 (file)
@@ -1,17 +1,21 @@
-define apt::preseeded_package ($content = "", $ensure = "installed") {
+define apt::preseeded_package (
+  $ensure = 'installed',
+  $content = ''
+) {
   $seedfile = "/var/cache/local/preseeding/${name}.seeds"
+  $real_content = $content ? {
+    ''      => template ( "site_apt/${::lsbdistcodename}/${name}.seeds" ),
+    default => $content
+  }
 
   file { $seedfile:
-    content => $content ? { 
-      ""      => template ( "site_apt/${::lsbdistcodename}/${name}.seeds" ),
-      default => $content
-    },   
-    mode => 0600, owner => root, group => root,
-  }   
+    content => $real_content,
+    mode    => '0600', owner => root, group => root,
+  }
 
   package { $name:
-    ensure => $ensure,
+    ensure       => $ensure,
     responsefile => $seedfile,
-    require => File[$seedfile],
-  }   
-}  
+    require      => File[$seedfile],
+  }
+}
index c284c7418e4a74bcd12c335ec4a610dca27541b5..9ba79f235384fea04c14f6d6b28211d5fece6e26 100644 (file)
@@ -3,7 +3,7 @@ class apt::proxy_client(
   $port = '3142',
 ){
 
-  apt_conf { "20proxy":
-    content => template("apt/20proxy.erb"),
+  apt_conf { '20proxy':
+    content => template('apt/20proxy.erb'),
   }
 }
index 3603aa20d5def6ae00c3756696f9b232b87e3fee..722e8a5ed9e123c487c35da0ac5f04f4239fc7b8 100644 (file)
@@ -3,7 +3,7 @@ class apt::reboot_required_notify {
   # This package installs the script that created /var/run/reboot-required*.
   # This script (/usr/share/update-notifier/notify-reboot-required) is
   # triggered e.g. by kernel packages.
-  package { update-notifier-common:
+  package { 'update-notifier-common':
     ensure => installed,
   }
 
index 499116d8720727bcd58d716a6efb28d60311bb65..00f609727505188dde5376362507fced0482ccf2 100644 (file)
@@ -1,8 +1,8 @@
 define apt::sources_list (
   $ensure = 'present',
   $source = '',
-  $content = undef )
-{
+  $content = undef
+{
 
   if $source == '' and $content == undef {
     fail("One of \$source or \$content must be specified for apt_sources_snippet ${name}")
@@ -18,7 +18,7 @@ define apt::sources_list (
   # apparently doesn't.
   file { "/etc/apt/sources.list.d/${name}":
     ensure => $ensure,
-    owner => root, group => 0, mode => 0644,
+    owner  => root, group => 0, mode => '0644',
     notify => Exec['refresh_apt'],
   }
 
index b5bf829f781c2317e4f96159dc1b8f86bd1410dc..37e8321d34c2c5cb6e02e1dba67b97de8bf22009 100644 (file)
@@ -1,21 +1,21 @@
 class apt::unattended_upgrades {
 
   package { 'unattended-upgrades':
-    ensure => present,
+    ensure  => present,
     require => undef,
   }
 
-  apt_conf { "50unattended-upgrades":
+  apt_conf { '50unattended-upgrades':
     source  => [
-      "puppet:///modules/site_apt/${::lsbdistcodename}/50unattended-upgrades",
-               "puppet:///modules/site_apt/50unattended-upgrades",
-               "puppet:///modules/apt/${::lsbdistcodename}/50unattended-upgrades" ],
+                "puppet:///modules/site_apt/${::lsbdistcodename}/50unattended-upgrades",
+                'puppet:///modules/site_apt/50unattended-upgrades',
+                "puppet:///modules/apt/${::lsbdistcodename}/50unattended-upgrades" ],
     require => Package['unattended-upgrades'],
   }
 
-  if $custom_preferences != false {
-    Apt_conf["50unattended-upgrades"] {
-      before => Concat[apt_config],
+  if $apt::custom_preferences != false {
+    Apt_conf['50unattended-upgrades'] {
+      before => Concat['apt_config'],
     }
   }
 }
index 9c773abc6f92999dc2b76250eee9d2634553f89a..3f451251fdba2ee5fcd5f295709ee26ccd41a54a 100644 (file)
@@ -2,11 +2,12 @@ class apt::update {
 
   exec { 'update_apt':
     command => '/usr/bin/apt-get update && /usr/bin/apt-get autoclean',
-    require => [ File['/etc/apt/apt.conf.d', '/etc/apt/preferences' ],
-                 File['/etc/apt/sources.list'] ],
+    require => [
+                File['/etc/apt/apt.conf.d', '/etc/apt/preferences' ],
+                File['/etc/apt/sources.list'] ],
     loglevel => info,
     # Another Semaphor for all packages to reference
-    alias => "apt_updated"
+    alias => 'apt_updated'
   }
 
 }
index 2ce6932dbaa5b1e9ff50919066621d7121145035..d607150aa9af6d80a747c3b8bf877f37cfe611f6 100644 (file)
@@ -1,7 +1,9 @@
-define apt::upgrade_package ($version = "") {
+define apt::upgrade_package (
+  $version = ''
+) {
 
-  if $apt::disable_update == false { 
-    include apt::update 
+  if $apt::disable_update == false {
+    include apt::update
   }
 
   $version_suffix = $version ? {
@@ -12,25 +14,29 @@ define apt::upgrade_package ($version = "") {
 
   if !defined(Package['apt-show-versions']) {
     package { 'apt-show-versions':
-      ensure => installed,
+      ensure  => installed,
       require => undef,
     }
   }
 
   if !defined(Package['dctrl-tools']) {
     package { 'dctrl-tools':
-      ensure => installed,
+      ensure  => installed,
       require => undef,
     }
   }
 
+  $req = $apt::disable_update ? {
+    true    => Package['apt-show-versions', 'dctrl-tools'],
+    default => [
+                Exec['apt_updated'],
+                Package['apt-show-versions', 'dctrl-tools']
+              ],
+  }
+
   exec { "apt-get -q -y -o 'DPkg::Options::=--force-confold' install ${name}${version_suffix}":
-    onlyif => [ "grep-status -F Status installed -a -P $name -q", "apt-show-versions -u $name | grep -q upgradeable" ],
-    require => $apt::disable_update ? {
-      true    => Package['apt-show-versions', 'dctrl-tools'],
-      default => [ Exec['apt_updated'], 
-                 Package['apt-show-versions', 'dctrl-tools'] ],
-    } 
+    onlyif  => [ "grep-status -F Status installed -a -P $name -q", "apt-show-versions -u $name | grep -q upgradeable" ],
+    require => $req
   }
 
 }