summaryrefslogtreecommitdiffstats
path: root/modules/package
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2017-11-05 14:16:22 -0500
committerJesse Luehrs <doy@tozt.net>2017-11-05 14:16:22 -0500
commit9ff65e0d5844f44adc7910a964d8ee15edd04528 (patch)
tree864df0b3c410cb9588d4377e90fcc3416e96003b /modules/package
parente8328f2a365fe9195edbc1393d9903b95618ce9a (diff)
downloadpuppet-tozt-9ff65e0d5844f44adc7910a964d8ee15edd04528.tar.gz
puppet-tozt-9ff65e0d5844f44adc7910a964d8ee15edd04528.zip
fix yaourt
Diffstat (limited to 'modules/package')
-rw-r--r--modules/package/manifests/yaourt.pp21
1 files changed, 17 insertions, 4 deletions
diff --git a/modules/package/manifests/yaourt.pp b/modules/package/manifests/yaourt.pp
index 8f86534..e374e84 100644
--- a/modules/package/manifests/yaourt.pp
+++ b/modules/package/manifests/yaourt.pp
@@ -1,4 +1,4 @@
-define package::yaourt($asdeps=false) {
+define package::yaourt($ensure, $asdeps=false) {
if $asdeps {
$_asdeps = " --asdeps"
}
@@ -6,8 +6,21 @@ define package::yaourt($asdeps=false) {
$_asdeps = ""
}
- exec { "/usr/bin/yaourt --noconfirm --needed$asdeps $name":
- unless => "pacman -Q $name > /dev/null 2>&1",
- require => Package::Makepkg["yaourt"];
+ case $ensure {
+ 'installed': {
+ exec { "/usr/bin/yaourt --noconfirm --needed$asdeps -S $name":
+ unless => "pacman -Q $name > /dev/null 2>&1",
+ require => Package::Makepkg["yaourt"];
+ }
+ }
+ 'absent': {
+ exec { "/usr/bin/yaourt --noconfirm -Rsn $name":
+ onlyif => "pacman -Q $name > /dev/null 2>&1",
+ require => Package::Makepkg["yaourt"];
+ }
+ }
+ default: {
+ fail("only 'installed' and 'absent' are supported for 'ensure'")
+ }
}
}