From d98bb4043ce1e15de923fe03c7fba56853636964 Mon Sep 17 00:00:00 2001 From: Nico Schottelius Date: Mon, 20 Sep 2010 01:25:05 +0200 Subject: [PATCH] cdist-apply can install packages Signed-off-by: Nico Schottelius --- bin/cdist-apply | 36 +++++++++++++++++++ bin/cdist-config | 1 + conf/hosts/kr/manifest | 2 +- ...n => cdist_package_backend_pacman_install} | 2 +- conf/lib/cdist_package_install | 4 +-- 5 files changed, 41 insertions(+), 4 deletions(-) create mode 100755 bin/cdist-apply rename conf/lib/{cdist_package_backend_pacman => cdist_package_backend_pacman_install} (94%) diff --git a/bin/cdist-apply b/bin/cdist-apply new file mode 100755 index 00000000..aa118cda --- /dev/null +++ b/bin/cdist-apply @@ -0,0 +1,36 @@ +#!/bin/sh +# +# 2010 Nico Schottelius (nico-cdist at schottelius.org) +# +# This file is part of cdist. +# +# cdist is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cdist is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cdist. If not, see . +# +# +# Apply configuration to local host +# + +. cdist-config + +whereiam="$(cdist_explore_hostname)" +conf="${CDIST_HOSTS}/${whereiam}" + +if [ ! -d "${conf}" ]; then + echo "Sorry, ${whereiam} has no configuration" + exit 1 +fi + +# Run the manifest, but abort on first error +set -e +. "${conf}/manifest" diff --git a/bin/cdist-config b/bin/cdist-config index 1618da76..8ead5726 100755 --- a/bin/cdist-config +++ b/bin/cdist-config @@ -24,6 +24,7 @@ : ${CDIST_CONFIG:=/etc/cdist} : ${CDIST_COREDIR:=$CDIST_CONFIG/core} : ${CDIST_LIBDIR:=$CDIST_CONFIG/lib} +: ${CDIST_HOSTS:=$CDIST_CONFIG/hosts} set -e diff --git a/conf/hosts/kr/manifest b/conf/hosts/kr/manifest index 841578b8..5028d472 100644 --- a/conf/hosts/kr/manifest +++ b/conf/hosts/kr/manifest @@ -1,4 +1,4 @@ -cdist_package_install vim zsh +cdist_package install vim zsh #cdist_file /etc/issue --source issue #cdist_file /etc/issue --via my_func diff --git a/conf/lib/cdist_package_backend_pacman b/conf/lib/cdist_package_backend_pacman_install similarity index 94% rename from conf/lib/cdist_package_backend_pacman rename to conf/lib/cdist_package_backend_pacman_install index b54757cb..6b716b83 100644 --- a/conf/lib/cdist_package_backend_pacman +++ b/conf/lib/cdist_package_backend_pacman_install @@ -24,5 +24,5 @@ cdist_package_backend_pacman_install() { - pacman --noconfirm --noprogressbar "$@" + pacman --noconfirm --noprogressbar -S "$@" } diff --git a/conf/lib/cdist_package_install b/conf/lib/cdist_package_install index ecf0b1ec..0fa9b2eb 100644 --- a/conf/lib/cdist_package_install +++ b/conf/lib/cdist_package_install @@ -25,9 +25,9 @@ cdist_package() backend="$(cdist_package_select_backend)" case "$1" in - install|remove) + install|uninstall) operation="$1"; shift - echo ${backend}_${operation} "$@" + ${backend}_${operation} "$@" ;; *)