forked from ungleich-public/cdist
Use pyvenv instead of virtualenv.
This commit is contained in:
parent
2410b30b40
commit
49423e174b
3 changed files with 73 additions and 86 deletions
|
@ -30,13 +30,6 @@ destination="/$__object_id"
|
||||||
owner="$(cat "$__object/parameter/owner")"
|
owner="$(cat "$__object/parameter/owner")"
|
||||||
group="$(cat "$__object/parameter/group")"
|
group="$(cat "$__object/parameter/group")"
|
||||||
mode="$(cat "$__object/parameter/mode")"
|
mode="$(cat "$__object/parameter/mode")"
|
||||||
python="$(cat "$__object/parameter/python")"
|
|
||||||
if [ "$python" ]
|
|
||||||
then
|
|
||||||
python_opt="-p $python"
|
|
||||||
else
|
|
||||||
python_opt=""
|
|
||||||
fi
|
|
||||||
venvparams="$(cat "$__object/parameter/venvparams")"
|
venvparams="$(cat "$__object/parameter/venvparams")"
|
||||||
|
|
||||||
[ "$state_should" = "$state_is" -a \
|
[ "$state_should" = "$state_is" -a \
|
||||||
|
@ -46,9 +39,8 @@ venvparams="$(cat "$__object/parameter/venvparams")"
|
||||||
|
|
||||||
case $state_should in
|
case $state_should in
|
||||||
present)
|
present)
|
||||||
|
|
||||||
if [ "$state_should" != "$state_is" ]; then
|
if [ "$state_should" != "$state_is" ]; then
|
||||||
echo virtualenv "$python_opt" $venvparams "$destination"
|
echo pyvenv $venvparams "$destination"
|
||||||
fi
|
fi
|
||||||
if [ \( -n "$owner" -a "$owner_is" != "$owner" \) -o \
|
if [ \( -n "$owner" -a "$owner_is" != "$owner" \) -o \
|
||||||
\( -n "$group" -a "$group_is" != "$group" \) ]; then
|
\( -n "$group" -a "$group_is" != "$group" \) ]; then
|
||||||
|
|
|
@ -1,26 +1,24 @@
|
||||||
cdist-type__pyvenv(7)
|
cdist-type__pyvenv(7)
|
||||||
==================
|
==================
|
||||||
Darko Poljak <darko.poljak--@--gmail.com>
|
Darko Poljak <darko.poljak--@--gmail.com>
|
||||||
|
|
||||||
|
|
||||||
NAME
|
NAME
|
||||||
----
|
----
|
||||||
cdist-type__pyvenv - Create or remove python virtualenv
|
cdist-type__pyvenv - Create or remove python virtual environment
|
||||||
|
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
-----------
|
-----------
|
||||||
This cdist type allows you to create or remove python virtualenv.
|
This cdist type allows you to create or remove python virtual environment using pyvenv.
|
||||||
It assumes pip and virtualenv are already installed. Concrete packages
|
It assumes python >= 3.3 is already installed. Concrete package depends on concrete OS
|
||||||
or installation procedures depend on concrete OS and/or OS
|
and/or OS version/distribution.
|
||||||
version/distribution.
|
Ensure this for e.g. in your init manifest as in the following example:
|
||||||
Ensure this in your init manifest as in the following example:
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
case "$__target_host" in
|
case "$__target_host" in
|
||||||
localhost)
|
localhost)
|
||||||
__package python3-pip --state present
|
__package python3 --state present
|
||||||
require="__package/python3-pip" __package_pip virtualenv --pip pip3 --state present
|
require="__package/python3" __pyvenv /home/darko/testenv --owner darko --group darko --mode 740 --state present
|
||||||
require="__package/python3-pip __package_pip/virtualenv" __pyvenv /home/darko/testenv --owner darko --group darko --mode 740 --state present
|
|
||||||
;;
|
;;
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -35,20 +33,16 @@ state::
|
||||||
Either "present" or "absent", defaults to "present"
|
Either "present" or "absent", defaults to "present"
|
||||||
|
|
||||||
group::
|
group::
|
||||||
Group to chgrp to.
|
Group to chgrp to
|
||||||
|
|
||||||
mode::
|
mode::
|
||||||
Unix permissions, suitable for chmod.
|
Unix permissions, suitable for chmod
|
||||||
|
|
||||||
owner::
|
owner::
|
||||||
User to chown to.
|
User to chown to
|
||||||
|
|
||||||
python::
|
|
||||||
Use specific python interpreter for creating virtualenv.
|
|
||||||
The default is the interpreter that virtualenv was installed with.
|
|
||||||
|
|
||||||
venvparams::
|
venvparams::
|
||||||
virtualenv specific parameters to pass to virtualenv invocation.
|
Specific parameters to pass to pyvenv invocation
|
||||||
|
|
||||||
|
|
||||||
EXAMPLES
|
EXAMPLES
|
||||||
|
@ -57,11 +51,11 @@ EXAMPLES
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
__pyvenv /home/services/djangoenv
|
__pyvenv /home/services/djangoenv
|
||||||
|
|
||||||
# Create python virtualenv for user foo using specific python interpreter.
|
# Create python virtualenv for user foo.
|
||||||
__pyvenv /home/foo/fooenv --group foo --user foo --python python2.6
|
__pyvenv /home/foo/fooenv --group foo --user foo
|
||||||
|
|
||||||
# Create python virtualenv with specific parameters.
|
# Create python virtualenv with specific parameters.
|
||||||
__pyvenv /home/services/djangoenv --venvparams "--relocatable --system-site-packages"
|
__pyvenv /home/services/djangoenv --venvparams "--copies --system-site-packages"
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
@ -74,3 +68,4 @@ COPYING
|
||||||
-------
|
-------
|
||||||
Copyright \(C) 2016 Darko Poljak. Free use of this software is
|
Copyright \(C) 2016 Darko Poljak. Free use of this software is
|
||||||
granted under the terms of the GNU General Public License version 3 (GPLv3).
|
granted under the terms of the GNU General Public License version 3 (GPLv3).
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
# along with cdist. If not, see <http://www.gnu.org/licenses/>.
|
# along with cdist. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
# It assumes pip and virtualenv are already installed. Concrete packages
|
# It assumes python >= 3.3 is already installed. Concrete packages
|
||||||
# or installation procedures depend on concrete OS and/or OS
|
# or installation procedures depend on concrete OS and/or OS
|
||||||
# version/distribution.
|
# version/distribution.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue