Compare commits
No commits in common. "ea8286b69319d651785cab750b8b19c8420989a5" and "c33ca51758d94924f069fdf3f79df1341524f1ac" have entirely different histories.
ea8286b693
...
c33ca51758
3 changed files with 41 additions and 74 deletions
34
readme.md
34
readme.md
|
@ -27,7 +27,7 @@ from various contexts of CA, CI and OCI / OS.
|
||||||
* [X] Debian
|
* [X] Debian
|
||||||
* [X] Bookworm (12)
|
* [X] Bookworm (12)
|
||||||
* [ ] Bullseye (11)
|
* [ ] Bullseye (11)
|
||||||
* [X] Fedora
|
* [X] Fedora → Python 3.12
|
||||||
* [X] 40
|
* [X] 40
|
||||||
* [X] 39
|
* [X] 39
|
||||||
* [X] Rocky
|
* [X] Rocky
|
||||||
|
@ -60,22 +60,22 @@ from various contexts of CA, CI and OCI / OS.
|
||||||
|
|
||||||
## Packages
|
## Packages
|
||||||
|
|
||||||
| os | s | u | python | gviz | plantuml | shch | spx | shf | ruf |
|
| OS image | s | u | py | py++ | gviz | plantuml | shch | shf | ruf |
|
||||||
|:----------------|---|---|:------------|:-----|:----------|:-----|:----|:----|:----|
|
|:----------------|---|---|:-----|:-----|:-----|:----------|:-----|:----|:----|
|
||||||
| Arch 20240101 | ☑ | ☑ | 3.12 | 12.0 | 1.2023.13 | 0.10 | 7.4 | 3.8 | 0.5 |
|
| Alpine 3.20 | ☑ | ☐ | | 3.12 | 9.0 | 1.2024.4 | 0.10 | 3.8 | 0.4 |
|
||||||
| Fedora 40 | ☑ | ☑ | 3.12 → 3.13 | 9.0 | 1.2024.6 | 0.9 | 7.2 | 3.7 | 0.4 |
|
| Alpine 3.19 | ☑ | ☐ | | 3.11 | 9.0 | 1.2023.12 | 0.9 | 3.7 | |
|
||||||
| Alpine 3.20 | ☑ | ☐ | 3.12 | 9.0 | 1.2024.4 | 0.10 | 7.2 | 3.8 | 0.4 |
|
| Arch 20240101 | ☑ | ☑ | | 3.12 | 12.0 | 1.2023.13 | 0.10 | 3.8 | 0.5 |
|
||||||
| Ubuntu Noble | ☐ | ☐ | 3.12 | 2.42 | 1.2020.2 | 0.9 | 7.2 | 3.8 | |
|
| Arch 20231112 | ☑ | ☑ | | 3.12 | 12.0 | 1.2023.13 | 0.10 | 3.8 | 0.5 |
|
||||||
| Debian Bookworm | ☐ | ☐ | 3.11 | 2.42 | 1.2020.2 | 0.9 | 5.3 | 3.6 | |
|
| Debian Bookworm | ☐ | ☐ | | 3.11 | 2.42 | 1.2020.2 | 0.9 | 3.6 | |
|
||||||
| Alma / Rocky 9 | ☑ | ☑ | 3.9 → 3.12 | 2.44 | e1.2024.6 | e0.8 | | | |
|
| Debian Bullseye | ☐ | ☐ | | 3.9 | 2.42 | 1.2020.2 | 0.7 | | |
|
||||||
|
| Ubuntu Noble | ☐ | ☐ | | 3.12 | 2.42 | 1.2020.2 | 0.9 | 3.8 | |
|
||||||
| os | s | u | python | gviz | plantuml | shch | spx | shf | ruf |
|
| Ubuntu Jammy | ☐ | ☐ | | 3.10 | 2.42 | 1.2020.2 | 0.8 | 3.4 | |
|
||||||
|:----------------|---|---|:------------|:-----|:----------|:-----|:----|:----|:----|
|
| Fedora 40 | ☑ | ☑ | 3.12 | 3.13 | 9.0 | 1.2024.6 | 0.9 | 3.7 | 0.4 |
|
||||||
| Fedora 39 | ☑ | ☑ | 3.12 → 3.13 | 8.1 | 1.2024.6 | 0.9 | 6.2 | 3.5 | 0.4 |
|
| Fedora 39 | ☑ | ☑ | 3.12 | 3.13 | 8.1 | 1.2024.6 | 0.9 | 3.5 | 0.4 |
|
||||||
| Alpine 3.19 | ☑ | ☐ | 3.11 | 9.0 | 1.2023.12 | 0.9 | 6.2 | 3.7 | |
|
| Alma 9 | ☑ | ☑ | 3.9 | 3.12 | 2.44 | e1.2024.6 | e0.8 | | |
|
||||||
| Ubuntu Jammy | ☐ | ☐ | 3.10 | 2.42 | 1.2020.2 | 0.8 | 4.3 | 3.4 | |
|
| Rocky 9 | ☑ | ☑ | 3.9 | 3.12 | 2.44 | e1.2024.6 | e0.8 | | |
|
||||||
| Debian Bullseye | ☐ | ☐ | 3.9 | 2.42 | 1.2020.2 | 0.7 | 3.4 | | |
|
| Alma 8 | ☑ | ☑ | | 3.12 | 2.40 | e1.2024.6 | e0.6 | | |
|
||||||
| Alma / Rocky 8 | ☑ | ☑ | 3.6 → 3.12 | 2.40 | e1.2024.6 | e0.6 | | | |
|
| Rocky 8 | ☑ | ☑ | | 3.12 | 2.40 | e1.2024.6 | e0.6 | | |
|
||||||
|
|
||||||
## Tasks
|
## Tasks
|
||||||
|
|
||||||
|
|
80
spcd.sh
80
spcd.sh
|
@ -33,7 +33,9 @@ spcd_main() {
|
||||||
spcd_install_git
|
spcd_install_git
|
||||||
spcd_install_python
|
spcd_install_python
|
||||||
# TODO move to Python
|
# TODO move to Python
|
||||||
spcd_install_packages
|
spcd_install_rsync
|
||||||
|
# TODO move to Python
|
||||||
|
spcd_install_ssh
|
||||||
spcd_clean_packages_cache
|
spcd_clean_packages_cache
|
||||||
spcd_install_python_modules
|
spcd_install_python_modules
|
||||||
spcd_write_python_module
|
spcd_write_python_module
|
||||||
|
@ -215,6 +217,8 @@ spcd_set_environment_variables() {
|
||||||
SPCD_DNS_FILE="/etc/resolv.conf"
|
SPCD_DNS_FILE="/etc/resolv.conf"
|
||||||
SPCD_PKG_CA="ca-certificates"
|
SPCD_PKG_CA="ca-certificates"
|
||||||
SPCD_PKG_GIT="git"
|
SPCD_PKG_GIT="git"
|
||||||
|
# TODO move to Python
|
||||||
|
SPCD_PKG_RSYNC="rsync"
|
||||||
SPCD_PYTHON_ALIAS="python3"
|
SPCD_PYTHON_ALIAS="python3"
|
||||||
spcd_split
|
spcd_split
|
||||||
spcd_echo "SPCD_DNS_FILE" "SPCD_PKG_CA" "SPCD_PKG_GIT" "SPCD_PYTHON_ALIAS"
|
spcd_echo "SPCD_DNS_FILE" "SPCD_PKG_CA" "SPCD_PKG_GIT" "SPCD_PYTHON_ALIAS"
|
||||||
|
@ -394,8 +398,8 @@ Acquire::https::Verify-Peer False;
|
||||||
# set python command & package
|
# set python command & package
|
||||||
case "${SPCD_OS_ID}" in
|
case "${SPCD_OS_ID}" in
|
||||||
"${SPCD_OS_ALMA}" | "${SPCD_OS_ROCKY}")
|
"${SPCD_OS_ALMA}" | "${SPCD_OS_ROCKY}")
|
||||||
SPCD_PYTHON_COMMAND="python3.12"
|
SPCD_PYTHON_COMMAND="python3.11"
|
||||||
SPCD_PYTHON_PACKAGE="python3.12"
|
SPCD_PYTHON_PACKAGE="python3.11"
|
||||||
;;
|
;;
|
||||||
"${SPCD_OS_ALPINE}")
|
"${SPCD_OS_ALPINE}")
|
||||||
SPCD_PYTHON_COMMAND="python3.11"
|
SPCD_PYTHON_COMMAND="python3.11"
|
||||||
|
@ -414,8 +418,8 @@ Acquire::https::Verify-Peer False;
|
||||||
SPCD_PYTHON_PACKAGE="python3"
|
SPCD_PYTHON_PACKAGE="python3"
|
||||||
;;
|
;;
|
||||||
"${SPCD_OS_FEDORA}")
|
"${SPCD_OS_FEDORA}")
|
||||||
SPCD_PYTHON_COMMAND="python3.13"
|
SPCD_PYTHON_COMMAND="python3.12"
|
||||||
SPCD_PYTHON_PACKAGE="python3.13"
|
SPCD_PYTHON_PACKAGE="python3"
|
||||||
;;
|
;;
|
||||||
"${SPCD_OS_UBUNTU}")
|
"${SPCD_OS_UBUNTU}")
|
||||||
case "${SPCD_OS_VERSION}" in
|
case "${SPCD_OS_VERSION}" in
|
||||||
|
@ -447,6 +451,13 @@ Acquire::https::Verify-Peer False;
|
||||||
#
|
#
|
||||||
spcd_split
|
spcd_split
|
||||||
spcd_echo "SPCD_CA"
|
spcd_echo "SPCD_CA"
|
||||||
|
# TODO move to Python
|
||||||
|
case "${SPCD_PM}" in
|
||||||
|
"${SPCD_PM_APK}" | "${SPCD_PM_APT}") SPCD_PKG_SSH="openssh-client" ;;
|
||||||
|
"${SPCD_PM_DNF}") SPCD_PKG_SSH="openssh-clients" ;;
|
||||||
|
"${SPCD_PM_PACMAN}") SPCD_PKG_SSH="openssh" ;;
|
||||||
|
*) ;;
|
||||||
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
spcd_list_working_directory() {
|
spcd_list_working_directory() {
|
||||||
|
@ -598,60 +609,15 @@ spcd_install_python() {
|
||||||
}
|
}
|
||||||
|
|
||||||
# TODO move to Python
|
# TODO move to Python
|
||||||
spcd_install_packages() {
|
spcd_install_rsync() {
|
||||||
# graphviz
|
|
||||||
spcd_step "Install GraphViz"
|
|
||||||
spcd_install_package "graphviz"
|
|
||||||
# plantuml
|
|
||||||
spcd_step "Install PlantUML"
|
|
||||||
case "${SPCD_OS_ID}" in
|
|
||||||
"${SPCD_OS_ALMA}" | "${SPCD_OS_ROCKY}") ;;
|
|
||||||
*) spcd_install_package "plantuml" ;;
|
|
||||||
esac
|
|
||||||
# python sphinx
|
|
||||||
spcd_step "Install Python Sphinx"
|
|
||||||
case "${SPCD_OS_ID}" in
|
|
||||||
"${SPCD_OS_ALPINE}")
|
|
||||||
spcd_install_package "py3-sphinx"
|
|
||||||
spcd_install_package "py3-sphinx_rtd_theme"
|
|
||||||
;;
|
|
||||||
"${SPCD_OS_ARCH}")
|
|
||||||
spcd_install_package "python-sphinx"
|
|
||||||
spcd_install_package "python-sphinx_rtd_theme"
|
|
||||||
;;
|
|
||||||
"${SPCD_OS_DEBIAN}" | "${SPCD_OS_UBUNTU}")
|
|
||||||
spcd_install_package "python3-sphinx"
|
|
||||||
spcd_install_package "python3-sphinx-rtd-theme"
|
|
||||||
;;
|
|
||||||
"${SPCD_OS_FEDORA}")
|
|
||||||
spcd_install_package "python3-sphinx"
|
|
||||||
spcd_install_package "python3-sphinx_rtd_theme"
|
|
||||||
;;
|
|
||||||
*) ;;
|
|
||||||
esac
|
|
||||||
# rsync
|
|
||||||
spcd_step "Install Rsync"
|
spcd_step "Install Rsync"
|
||||||
spcd_install_package "rsync"
|
spcd_install_package "${SPCD_PKG_RSYNC}"
|
||||||
# shellcheck
|
}
|
||||||
spcd_step "Install ShellCheck"
|
|
||||||
case "${SPCD_OS_ID}" in
|
# TODO move to Python
|
||||||
"${SPCD_OS_ALMA}" | "${SPCD_OS_ROCKY}") ;;
|
spcd_install_ssh() {
|
||||||
*) spcd_install_package "shellcheck" ;;
|
|
||||||
esac
|
|
||||||
# shfmt
|
|
||||||
spcd_step "Install ShellFormat"
|
|
||||||
case "${SPCD_OS_ID}" in
|
|
||||||
"${SPCD_OS_ALMA}" | "${SPCD_OS_ROCKY}") ;;
|
|
||||||
*) spcd_install_package "shfmt" ;;
|
|
||||||
esac
|
|
||||||
# ssh
|
|
||||||
spcd_step "Install SSH"
|
spcd_step "Install SSH"
|
||||||
case "${SPCD_PM}" in
|
spcd_install_package "${SPCD_PKG_SSH}"
|
||||||
"${SPCD_PM_APK}" | "${SPCD_PM_APT}") spcd_install_package "openssh-client" ;;
|
|
||||||
"${SPCD_PM_DNF}") spcd_install_package "openssh-clients" ;;
|
|
||||||
"${SPCD_PM_PACMAN}") spcd_install_package "openssh" ;;
|
|
||||||
*) ;;
|
|
||||||
esac
|
|
||||||
}
|
}
|
||||||
|
|
||||||
spcd_clean_packages_cache() {
|
spcd_clean_packages_cache() {
|
||||||
|
|
|
@ -42,6 +42,7 @@ def main(main: str) -> None:
|
||||||
"apt-get",
|
"apt-get",
|
||||||
"install",
|
"install",
|
||||||
"--assume-yes",
|
"--assume-yes",
|
||||||
|
"graphviz",
|
||||||
"python3-sphinx",
|
"python3-sphinx",
|
||||||
"python3-sphinx-rtd-theme",
|
"python3-sphinx-rtd-theme",
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue