From d9b2f1a54073763e99e1ecbfd3e1003a0e656811 Mon Sep 17 00:00:00 2001 From: Darko Poljak Date: Wed, 13 Apr 2016 22:32:15 +0200 Subject: [PATCH] Add parameter --pyvenv. --- cdist/conf/type/__pyvenv/gencode-remote | 15 +++++++++++---- cdist/conf/type/__pyvenv/man.text | 6 ++++++ cdist/conf/type/__pyvenv/parameter/optional | 1 + 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/cdist/conf/type/__pyvenv/gencode-remote b/cdist/conf/type/__pyvenv/gencode-remote index 4e4513ee..907e0ff6 100755 --- a/cdist/conf/type/__pyvenv/gencode-remote +++ b/cdist/conf/type/__pyvenv/gencode-remote @@ -25,22 +25,29 @@ group_is="$(cat "$__object/explorer/group")" state_should="$(cat "$__object/parameter/state")" -destination="/$__object_id" - owner="$(cat "$__object/parameter/owner")" group="$(cat "$__object/parameter/group")" mode="$(cat "$__object/parameter/mode")" -venvparams="$(cat "$__object/parameter/venvparams")" [ "$state_should" = "$state_is" -a \ "$owner" = "$owner_is" -a \ "$group" = "$group_is" -a \ -n "$mode" ] && exit 0 +destination="/$__object_id" +venvparams="$(cat "$__object/parameter/venvparams")" +pyvenvparam="$__object/parameter/pyvenv" +if [ -f "$pyvenvparam" ] +then + pyvenv=$(cat "$pyvenvparam") +else + pyvenv="pyvenv" +fi + case $state_should in present) if [ "$state_should" != "$state_is" ]; then - echo pyvenv $venvparams "$destination" + echo $pyvenv $venvparams "$destination" fi if [ \( -n "$owner" -a "$owner_is" != "$owner" \) -o \ \( -n "$group" -a "$group_is" != "$group" \) ]; then diff --git a/cdist/conf/type/__pyvenv/man.text b/cdist/conf/type/__pyvenv/man.text index 80934710..6124c72c 100755 --- a/cdist/conf/type/__pyvenv/man.text +++ b/cdist/conf/type/__pyvenv/man.text @@ -42,6 +42,9 @@ mode:: owner:: User to chown to +pyvenv:: + Use this specific pyvenv + venvparams:: Specific parameters to pass to pyvenv invocation @@ -52,6 +55,9 @@ EXAMPLES -------------------------------------------------------------------------------- __pyvenv /home/services/djangoenv +# Use specific pyvenv +__pyvenv /home/foo/fooenv --pyvenv /usr/local/bin/pyvenv-3.4 + # Create python virtualenv for user foo. __pyvenv /home/foo/fooenv --group foo --user foo diff --git a/cdist/conf/type/__pyvenv/parameter/optional b/cdist/conf/type/__pyvenv/parameter/optional index fc4019c9..ed2218b1 100755 --- a/cdist/conf/type/__pyvenv/parameter/optional +++ b/cdist/conf/type/__pyvenv/parameter/optional @@ -3,3 +3,4 @@ group owner mode venvparams +pyvenv