63 lines
948 B
CFEngine3
63 lines
948 B
CFEngine3
#
|
|
|
|
bundle agent python39
|
|
{
|
|
vars:
|
|
debian::
|
|
"exe" string => "/usr/local/bin/python3.9";
|
|
|
|
centos::
|
|
"pkgs" slist => {"python3.9"};
|
|
"exe" string => "/usr/bin/python3.9";
|
|
|
|
}
|
|
|
|
|
|
bundle agent install_python39
|
|
{
|
|
methods:
|
|
# "any" usebundle => wmde_install_packages($(python39.pkgs),"python39");
|
|
}
|
|
|
|
|
|
bundle agent pip3
|
|
{
|
|
vars:
|
|
debian::
|
|
"pkgs" slist => {
|
|
# "python3-pip",
|
|
# "python3-venv"
|
|
};
|
|
"exe" string => "/usr/local/bin/pip3.9";
|
|
|
|
freebsd::
|
|
"pkgs" slist => {
|
|
"py39-pip"
|
|
};
|
|
"exe" string => "/usr/local/bin/pip3";
|
|
|
|
}
|
|
|
|
bundle agent install_pip3
|
|
{
|
|
methods:
|
|
"any" usebundle => wmde_install_packages(@(pip3.pkgs),"pip3"),
|
|
handle=>"pip3_installed";
|
|
|
|
}
|
|
|
|
bundle agent python_venv(name,user)
|
|
{
|
|
classes:
|
|
"venv_exists" expression => fileexists("$(name)");
|
|
methods:
|
|
"any" usebundle => install_pip3;
|
|
|
|
commands:
|
|
!venv_exists::
|
|
"su $(user) -c '$(python39.exe) -m venv $(name)'"
|
|
contain => wmde_cmd_useshell,
|
|
depends_on => {"pip3_installed"};
|
|
|
|
}
|