diff --git a/cd.sh b/cd.sh index 48830dc..ef93f21 100644 --- a/cd.sh +++ b/cd.sh @@ -106,33 +106,41 @@ cd_set_environment_variables () { CD_DNS_FILE="/etc/resolv.conf" CD_PKG_GIT="git" cd_split - cd_echo "CD_DNS_FILE" "CD_PKG_CA" "CD_PKG_GIT" + cd_echo "CD_DNS_FILE" "CD_PKG_GIT" # shared case "${CD_OS_ID}" in "${CD_OS_ALMA}"|"${CD_OS_FEDORA}"|"${CD_OS_ROCKY}") CD_CA_ROOT="/etc/pki/ca-trust/source/anchors" CD_CMD_CA="update-ca-trust" + CD_PKG_CA="ca-certificates" + ;; + "${CD_OS_ALPINE}") + CD_CA_ROOT="/usr/local/share/ca-certificates" + CD_CMD_CA="update-ca-certificates" + CD_PKG_CA="ca-certificates-bundle" ;; "${CD_OS_ARCH}") CD_CA_ROOT="/etc/ca-certificates/trust-source/anchors" CD_CMD_CA="update-ca-trust" + CD_PKG_CA="ca-certificates" ;; - "${CD_OS_ALPINE}"|"${CD_OS_DEBIAN}"|"${CD_OS_UBUNTU}") + "${CD_OS_DEBIAN}"|"${CD_OS_UBUNTU}") CD_CA_ROOT="/usr/local/share/ca-certificates" CD_CMD_CA="update-ca-certificates" + CD_PKG_CA="ca-certificates" ;; esac cd_split - cd_echo "CD_CA_ROOT" "CD_CMD_CA" + cd_echo "CD_CA_ROOT" "CD_CMD_CA" "CD_PKG_CA" # common case "${CD_OS_ID}" in "${CD_OS_ALMA}"|"${CD_OS_FEDORA}"|"${CD_OS_ROCKY}") + CD_PM="${CD_PM_DNF}" CD_CMD_CLEAN="dnf clean all" CD_CMD_INSTALL="dnf install --assumeyes" CD_CMD_QUERY="rpm --query" CD_CMD_UPDATE="dnf makecache" CD_CMD_UPGRADE="dnf upgrade --assumeyes" - CD_PKG_CA="ca-certificates" CD_PKG_PKG="" CD_PM_CONF_PATH="/etc/dnf/dnf.conf" CD_PM_CONF_TEXT="\ @@ -147,12 +155,12 @@ skip_if_unavailable=False CD_PM_HTTPS_TEXT="sslverify=False" ;; "${CD_OS_ALPINE}") + CD_PM="${CD_PM_APK}" CD_CMD_CLEAN="apk cache purge" CD_CMD_INSTALL="apk add" CD_CMD_QUERY="apk info" CD_CMD_UPDATE="apk update" CD_CMD_UPGRADE="apk upgrade" - CD_PKG_CA="ca-certificates-bundle" CD_PKG_PKG="" CD_PM_CONF_PATH="" CD_PM_CONF_TEXT="" @@ -160,12 +168,12 @@ skip_if_unavailable=False CD_PM_HTTPS_TEXT="--no-verify" ;; "${CD_OS_ARCH}") + CD_PM="${CD_PM_PACMAN}" CD_CMD_CLEAN="pacman --sync --clean --noconfirm" CD_CMD_INSTALL="pacman --sync --noconfirm" CD_CMD_QUERY="pacman --query" CD_CMD_UPDATE="pacman --sync --refresh" CD_CMD_UPGRADE="pacman --sync --sysupgrade --noconfirm" - # TODO CD_PKG_PKG="" CD_PM_CONF_PATH="" CD_PM_CONF_TEXT="" @@ -173,12 +181,12 @@ skip_if_unavailable=False CD_PM_HTTPS_TEXT="SSLVerify = No" ;; "${CD_OS_DEBIAN}"|"${CD_OS_UBUNTU}") + CD_PM="${CD_PM_APT}" CD_CMD_CLEAN="apt-get clean" CD_CMD_INSTALL="apt-get install --assume-yes" CD_CMD_QUERY="dpkg-query --show" CD_CMD_UPDATE="apt-get update" CD_CMD_UPGRADE="apt-get upgrade --assume-yes" - CD_PKG_CA="ca-certificates" CD_PKG_PKG="apt-utils" CD_PM_CONF_PATH="/etc/apt/apt.conf.d/apt.conf" CD_PM_CONF_TEXT="\ @@ -401,8 +409,7 @@ cd_list_working_directory () { } cd_set_https_verification_off () { - # TODO - if [ "${CD_CA}" -o "${CD_OS_ID}" = "${CD_OS_DEBIAN}" ] ; then + if [ "${CD_CA}" -o "${CD_PM}" = "${CD_PM_APT}" ] ; then cd_step "Set HTTPS verification off" cd_mkdir "$(dirname "${CD_PM_HTTPS_PATH}")" cd_write "${CD_PM_HTTPS_PATH}" "${CD_PM_HTTPS_TEXT}" @@ -665,5 +672,10 @@ CD_OS_FEDORA="fedora" CD_OS_ROCKY="rocky" CD_OS_UBUNTU="ubuntu" +CD_PM_APK="apk" +CD_PM_APT="apt" +CD_PM_DNF="dnf" +CD_PM_PACMAN="pacman" + # run cd_main diff --git a/readme.md b/readme.md index 0f0cca5..d161140 100644 --- a/readme.md +++ b/readme.md @@ -12,22 +12,22 @@ from various CA, CI, OCI / OS. * [X] GitHub → Gitea → ForgeJo * [X] GitLab * [ ] SourceHut -* [ ] Operating Systems +* [X] Operating Systems * [X] Alma → Python 3.11 * [X] 8 * [X] 9 * [X] Alpine → Python 3.11 * [X] 3.18 * [X] 3.19 - * [ ] Arch → Python 3.12 - * [ ] 20231112 - * [ ] 20240101 + * [X] Arch → Python 3.12 + * [X] 20231112 + * [X] 20240101 * [X] Debian * [X] Bullseye (11) → Python 3.9 * [X] Bookworm (12) → Python 3.11 - * [ ] Fedora → Python 3.12 - * [ ] 39 - * [ ] 40 + * [X] Fedora → Python 3.12 + * [X] 39 + * [X] 40 * [X] Rocky → Python 3.11 * [X] 8 * [X] 9 @@ -49,6 +49,20 @@ from various CA, CI, OCI / OS. | CD_URL_ROCKY | Rocky repository URL | | CD_URL_UBUNTU | Ubuntu repository URL | +## HTTPS & Python + +| OS img | crt | upd | Python | +|:--------|-----|-----|:---------| +| Alma 8 | [X] | [X] | [ ] | +| Alma 9 | [X] | [X] | [X] 3.9 | +| Alpine | [X] | [ ] | [ ] | +| Arch | [X] | [X] | [ ] | +| Debian | [ ] | [ ] | [ ] | +| Fedora | [X] | [X] | [X] 3.12 | +| Rocky 8 | [X] | [X] | [ ] | +| Rocky 9 | [X] | [X] | [X] 3.9 | +| Ubuntu | [ ] | [ ] | [ ] | + ## Tasks * write bats