X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;ds=sidebyside;f=modules%2Fbase%2Fmanifests%2Falternative.pp;fp=modules%2Fbase%2Fmanifests%2Falternative.pp;h=da86db331e6a63b0f9aaf39bab7355ac31412138;hb=131d37546ae69da34954021b037c592a7b738b46;hp=0000000000000000000000000000000000000000;hpb=d6bd60acf45afdad517aa8b3e158e1b6c27c2ab0;p=mirror%2Fdsa-puppet.git diff --git a/modules/base/manifests/alternative.pp b/modules/base/manifests/alternative.pp new file mode 100644 index 000000000..da86db331 --- /dev/null +++ b/modules/base/manifests/alternative.pp @@ -0,0 +1,15 @@ +define base::alternative ($linkto, $ensure = present) { + case $ensure { + present: { + exec { "/usr/bin/update-alternatives --set ${name} ${linkto}": + unless => "[ $(update-alternatives --query ${name} | grep ^Value | awk '{print \$2}') = ${linkto} ]", + } + } + absent: { + exec { "/usr/bin/update-alternatives --remove ${name} ${linkto}": + unless => "[ $(update-alternatives --query ${name} | grep ^Value | awk '{print \$2}') != ${linkto} ]", + } + } + default: { fail ( "Unknown ensure value: '$ensure'" ) } + } +}