diff --git a/readme.md b/readme.md index a42983a..0fa11f1 100644 --- a/readme.md +++ b/readme.md @@ -45,7 +45,6 @@ from various contexts of CA, CI and OCI / OS. | SPCD_BRANCH_STAGING | Staging deployment branch | dev | | SPCD_BRANCH_FEATURE | Feature deployment branch | f | | SPCD_CA_n | Numbered CA certificates | | -| SPCD_CMD_SUM | Command to check sums | sha512sum | | SPCD_DNS_n | Numbered name servers | 9.9.9.9 | | SPCD_GIT_MAIN | Main Git repository | spcd | | SPCD_GIT_ROOT | Root Git repository | rwx | @@ -88,16 +87,11 @@ from various contexts of CA, CI and OCI / OS. * relay environment module name * write tests -### sh +### .py -* support - * arch python virtual environment - * opensuse operating system - -### sh → py - -* check file & variable sums -* install system packages +* detect ssh private key type +* implement project repository cloning +* install * epel * plantuml * shellcheck @@ -105,17 +99,10 @@ from various contexts of CA, CI and OCI / OS. * openssh * rsync * shfmt -* python virtual environment - * install system package - * configure pip - * venv - * create - * activate - -### py - -* detect ssh private key type -* implement project repository cloning * lint * .py * .sh + +### .sh + +* support opensuse diff --git a/spcd.sh b/spcd.sh index 7557cd7..a48ff51 100644 --- a/spcd.sh +++ b/spcd.sh @@ -4,7 +4,6 @@ [ -n "${SPCD_BRANCH_RELEASE}" ] || SPCD_BRANCH_RELEASE="main" [ -n "${SPCD_BRANCH_STAGING}" ] || SPCD_BRANCH_STAGING="dev" [ -n "${SPCD_BRANCH_FEATURE}" ] || SPCD_BRANCH_FEATURE="f" -[ -n "${SPCD_CMD_SUM}" ] || SPCD_CMD_SUM="sha512sum" [ -n "${SPCD_DNS_1}" ] || SPCD_DNS_1="9.9.9.9" [ -n "${SPCD_GIT_MAIN}" ] || SPCD_GIT_MAIN="spcd" [ -n "${SPCD_GIT_ROOT}" ] || SPCD_GIT_ROOT="rwx" @@ -33,6 +32,7 @@ spcd_main() { spcd_install_git spcd_install_python spcd_install_python_modules + # TODO move to Python spcd_install_packages spcd_write_python_module spcd_switch_to_python @@ -605,28 +605,6 @@ spcd_install_python() { spcd_install_package "${SPCD_PYTHON_PACKAGE}" spcd_split spcd_ln_python "${SPCD_PYTHON_COMMAND}" - # venv - spcd_step "Install Python virtual environment" - case "${SPCD_OS_ID}" in - "${SPCD_OS_DEBIAN}" | "${SPCD_OS_UBUNTU}") - spcd_install_package "python3-venv" - ;; - "${SPCD_OS_ARCH}") - echo "Not supported!" - exit 255 - ;; - *) ;; - esac - spcd_split - spcd_write "/etc/pip.conf" "\ -[global] -index-url = ${SPCD_URL_PYTHON} -" - spcd_split - "${SPCD_PYTHON_ALIAS}" -m "venv" "${SPCD_PYTHON_VENV}" - spcd_split - export PATH="${SPCD_PYTHON_VENV_BINARIES}:${PATH}" - export VIRTUAL_ENV="${SPCD_PYTHON_VENV}" } spcd_install_python_modules() { @@ -661,13 +639,13 @@ ${spcd_ipm__target}" spcd_ipm__script="${spcd_ipm__root}/${spcd_ipm__name}/spcd.sh" if [ -f "${spcd_ipm__script}" ]; then spcd_split - spcd_ipm__check="${spcd_ipm__root}/check.${SPCD_CMD_SUM}" - "${SPCD_CMD_SUM}" "${spcd_ipm__script}" >"${spcd_ipm__check}" + spcd_ipm__check="${spcd_ipm__root}/check.sha512sum" + sha512sum "${spcd_ipm__script}" >"${spcd_ipm__check}" printf "%s" "${SPCD}" >"${spcd_ipm__script}" ls -l "${spcd_ipm__script}" dos2unix "${spcd_ipm__script}" ls -l "${spcd_ipm__script}" - "${SPCD_CMD_SUM}" -c "${spcd_ipm__check}" || spcd_error_ci "SPCD" + sha512sum -c "${spcd_ipm__check}" || spcd_error_ci "SPCD" fi done spcd_split @@ -676,6 +654,7 @@ ${spcd_ipm__target}" spcd_rm "${spcd_ipm__root}" } +# TODO move to Python spcd_install_packages() { # epel spcd_step "Install EPEL" @@ -725,6 +704,28 @@ spcd_install_packages() { "${SPCD_PM_PACMAN}") spcd_install_package "openssh" ;; *) ;; esac + # venv + spcd_step "Install Python virtual environment" + case "${SPCD_OS_ID}" in + "${SPCD_OS_DEBIAN}" | "${SPCD_OS_UBUNTU}") + spcd_install_package "python3-venv" + ;; + "${SPCD_OS_ARCH}") + # FIXME arch + exit 255 + ;; + *) ;; + esac + spcd_split + spcd_write "/etc/pip.conf" "\ +[global] +index-url = ${SPCD_URL_PYTHON} +" + spcd_split + "${SPCD_PYTHON_ALIAS}" -m "venv" "${SPCD_PYTHON_VENV}" + spcd_split + export PATH="${SPCD_PYTHON_VENV_BINARIES}:${PATH}" + export VIRTUAL_ENV="${SPCD_PYTHON_VENV}" } spcd_write_python_module() {