From 800222525cc2758a02e3fc6a735cf1bdc9206c77 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 13:49:34 +0200 Subject: [PATCH 01/20] step --- cd.sh | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/cd.sh b/cd.sh index e4796f3..b9355e2 100644 --- a/cd.sh +++ b/cd.sh @@ -22,20 +22,20 @@ case "${CD_OS_NAME}" in ;; esac -function split { +function step { [ "${1}" ] && echo " ${1} " } -split " 1/14 set name servers" +step " 1/14 set name servers" for server in "${CD_DNS_SERVERS[@]}" ; do echo "nameserver ${server}" \ >> "${CD_DNS_FILE}" \ || exit done -split " 2/14 configure package manager" +step " 2/14 configure package manager" echo -n "\ Acquire::Check-Valid-Until True; APT::Get::Show-Versions True; @@ -44,7 +44,7 @@ APT::Install-Suggests False; Dir::Etc::SourceParts ''; " > '/etc/apt/apt.conf.d/apt.conf' \ || exit -split " 3/14 configure package repositories" +step " 3/14 configure package repositories" echo -n "\ deb https://deb.debian.org/debian bookworm main deb https://deb.debian.org/debian bookworm-backports main @@ -53,45 +53,45 @@ deb https://deb.debian.org/debian-security bookworm-security main " > '/etc/apt/sources.list' \ || exit -split " 4/14 disable package verification" +step " 4/14 disable package verification" echo -n "\ Acquire::https::Verify-Peer False; " > '/etc/apt/apt.conf.d/https' \ || exit -split " 5/14 update package catalog" +step " 5/14 update package catalog" apt-get update \ || exit -split " 6/14 install CA certificates package" +step " 6/14 install CA certificates package" apt-get install --yes 'ca-certificates' \ || exit -split " 7/14 enable package verification" +step " 7/14 enable package verification" rm '/etc/apt/apt.conf.d/https' \ || exit -split " 8/14 update package catalog" +step " 8/14 update package catalog" apt-get update \ || exit -split " 9/14 upgrade packages" +step " 9/14 upgrade packages" apt-get upgrade --yes \ || exit -split "10/14 install Git" +step "10/14 install Git" apt-get install --yes 'git' \ || exit DIRECTORY="$(mktemp --directory)" \ || exit -split "11/14 clone Continuous Delivery" +step "11/14 clone Continuous Delivery" git clone \ "${GITHUB_SERVER_URL}/${CD_REPOSITORY}" \ "${DIRECTORY}" \ || exit -split "12/14 install Python" +step "12/14 install Python" apt-get install --yes 'python3' \ || exit -split "13/14 clean package cache" +step "13/14 clean package cache" apt-get clean \ || exit -split "14/14 bootstrap" +step "14/14 bootstrap" "${DIRECTORY}/bootstrap.sh" From 8004d78a367098a8878b26dd7b2882a5f5534c11 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 13:59:41 +0200 Subject: [PATCH 02/20] cd_step --- cd.sh | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/cd.sh b/cd.sh index b9355e2..cd52fec 100644 --- a/cd.sh +++ b/cd.sh @@ -21,21 +21,25 @@ case "${CD_OS_NAME}" in exit 1 ;; esac +CD_STEP=0 function step { - [ "${1}" ] && echo " -${1} + if [ "${1}" ] ; then + ((CD_STEP++)) + echo " + ↕ ${CD_STEP} ↔ ${1} " + fi } -step " 1/14 set name servers" +step "set name servers" for server in "${CD_DNS_SERVERS[@]}" ; do echo "nameserver ${server}" \ >> "${CD_DNS_FILE}" \ || exit done -step " 2/14 configure package manager" +step "configure package manager" echo -n "\ Acquire::Check-Valid-Until True; APT::Get::Show-Versions True; @@ -44,7 +48,7 @@ APT::Install-Suggests False; Dir::Etc::SourceParts ''; " > '/etc/apt/apt.conf.d/apt.conf' \ || exit -step " 3/14 configure package repositories" +step "configure package repositories" echo -n "\ deb https://deb.debian.org/debian bookworm main deb https://deb.debian.org/debian bookworm-backports main @@ -53,45 +57,45 @@ deb https://deb.debian.org/debian-security bookworm-security main " > '/etc/apt/sources.list' \ || exit -step " 4/14 disable package verification" +step "disable package verification" echo -n "\ Acquire::https::Verify-Peer False; " > '/etc/apt/apt.conf.d/https' \ || exit -step " 5/14 update package catalog" +step "update package catalog" apt-get update \ || exit -step " 6/14 install CA certificates package" +step "install CA certificates package" apt-get install --yes 'ca-certificates' \ || exit -step " 7/14 enable package verification" +step "enable package verification" rm '/etc/apt/apt.conf.d/https' \ || exit -step " 8/14 update package catalog" +step "update package catalog" apt-get update \ || exit -step " 9/14 upgrade packages" +step "upgrade packages" apt-get upgrade --yes \ || exit -step "10/14 install Git" +step "install Git" apt-get install --yes 'git' \ || exit DIRECTORY="$(mktemp --directory)" \ || exit -step "11/14 clone Continuous Delivery" +step "clone Continuous Delivery" git clone \ "${GITHUB_SERVER_URL}/${CD_REPOSITORY}" \ "${DIRECTORY}" \ || exit -step "12/14 install Python" +step "install Python" apt-get install --yes 'python3' \ || exit -step "13/14 clean package cache" +step "clean package cache" apt-get clean \ || exit -step "14/14 bootstrap" +step "bootstrap" "${DIRECTORY}/bootstrap.sh" From a16f57816a9c5c9401ee6de92725a5f94b93d447 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 14:07:46 +0200 Subject: [PATCH 03/20] write --- cd.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/cd.sh b/cd.sh index cd52fec..babce94 100644 --- a/cd.sh +++ b/cd.sh @@ -32,6 +32,16 @@ function step { fi } +function write { +local file="${1}" +local text="${2}" + if [ "${file}" ] ; then + echo -n "${text}" \ + > "${file}" \ + || exit + fi +} + step "set name servers" for server in "${CD_DNS_SERVERS[@]}" ; do echo "nameserver ${server}" \ From b88d8caa226d757a6589cd7e73ec86f126413cc8 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 14:18:44 +0200 Subject: [PATCH 04/20] cd_,dns --- cd.sh | 52 ++++++++++++++++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 20 deletions(-) diff --git a/cd.sh b/cd.sh index babce94..e1d5b05 100644 --- a/cd.sh +++ b/cd.sh @@ -23,7 +23,7 @@ case "${CD_OS_NAME}" in esac CD_STEP=0 -function step { +function cd_step { if [ "${1}" ] ; then ((CD_STEP++)) echo " @@ -32,7 +32,7 @@ function step { fi } -function write { +function cd_write { local file="${1}" local text="${2}" if [ "${file}" ] ; then @@ -42,14 +42,19 @@ local text="${2}" fi } -step "set name servers" -for server in "${CD_DNS_SERVERS[@]}" ; do - echo "nameserver ${server}" \ - >> "${CD_DNS_FILE}" \ +function cd_set_dns { +local server +local text='' + cd_step "set name servers" + for server in "${CD_DNS_SERVERS[@]}" ; do + text+="nameserver ${server} +" + done + cd_write "${CD_DNS_FILE}" "${text}" \ || exit -done +} -step "configure package manager" +cd_step "configure package manager" echo -n "\ Acquire::Check-Valid-Until True; APT::Get::Show-Versions True; @@ -58,7 +63,7 @@ APT::Install-Suggests False; Dir::Etc::SourceParts ''; " > '/etc/apt/apt.conf.d/apt.conf' \ || exit -step "configure package repositories" +cd_step "configure package repositories" echo -n "\ deb https://deb.debian.org/debian bookworm main deb https://deb.debian.org/debian bookworm-backports main @@ -67,45 +72,52 @@ deb https://deb.debian.org/debian-security bookworm-security main " > '/etc/apt/sources.list' \ || exit -step "disable package verification" +cd_step "disable package verification" echo -n "\ Acquire::https::Verify-Peer False; " > '/etc/apt/apt.conf.d/https' \ || exit -step "update package catalog" +cd_step "update package catalog" apt-get update \ || exit -step "install CA certificates package" +cd_step "install CA certificates package" apt-get install --yes 'ca-certificates' \ || exit -step "enable package verification" +cd_step "enable package verification" rm '/etc/apt/apt.conf.d/https' \ || exit -step "update package catalog" +cd_step "update package catalog" apt-get update \ || exit -step "upgrade packages" +cd_step "upgrade packages" apt-get upgrade --yes \ || exit -step "install Git" +cd_step "install Git" apt-get install --yes 'git' \ || exit DIRECTORY="$(mktemp --directory)" \ || exit -step "clone Continuous Delivery" +cd_step "clone Continuous Delivery" git clone \ "${GITHUB_SERVER_URL}/${CD_REPOSITORY}" \ "${DIRECTORY}" \ || exit -step "install Python" +cd_step "install Python" apt-get install --yes 'python3' \ || exit -step "clean package cache" +cd_step "clean package cache" apt-get clean \ || exit -step "bootstrap" +cd_step "bootstrap" "${DIRECTORY}/bootstrap.sh" + + +function cd_main { + cd_set_dns +} + +cd_main From b07b446fa59f4cbc065700d8ad0b9e00924e999c Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 15:13:27 +0200 Subject: [PATCH 05/20] fixes --- cd.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cd.sh b/cd.sh index e1d5b05..819404e 100644 --- a/cd.sh +++ b/cd.sh @@ -25,7 +25,7 @@ CD_STEP=0 function cd_step { if [ "${1}" ] ; then - ((CD_STEP++)) + CD_STEP=$((CD_STEP+1)) echo " ↕ ${CD_STEP} ↔ ${1} " @@ -54,6 +54,9 @@ local text='' || exit } +function cd_main { + cd_set_dns + cd_step "configure package manager" echo -n "\ Acquire::Check-Valid-Until True; @@ -115,9 +118,6 @@ apt-get clean \ cd_step "bootstrap" "${DIRECTORY}/bootstrap.sh" - -function cd_main { - cd_set_dns } cd_main From 62036d62c2ee3b10d93a2c401ed636623c5ba869 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 15:38:22 +0200 Subject: [PATCH 06/20] fixes --- cd.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cd.sh b/cd.sh index 819404e..ec6cf1a 100644 --- a/cd.sh +++ b/cd.sh @@ -1,3 +1,5 @@ +#! /usr/bin/env bash + CD_DNS_SERVERS=( '9.9.9.9' ) @@ -25,7 +27,7 @@ CD_STEP=0 function cd_step { if [ "${1}" ] ; then - CD_STEP=$((CD_STEP+1)) + ((CD_STEP++)) echo " ↕ ${CD_STEP} ↔ ${1} " From 30eb5cc29723c40e982e7b87e7eac27da2fe6f6f Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 15:54:37 +0200 Subject: [PATCH 07/20] pkgconf --- cd.sh | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/cd.sh b/cd.sh index ec6cf1a..b3332ed 100644 --- a/cd.sh +++ b/cd.sh @@ -44,7 +44,7 @@ local text="${2}" fi } -function cd_set_dns { +function cd_set_dns_resolving { local server local text='' cd_step "set name servers" @@ -56,18 +56,26 @@ local text='' || exit } -function cd_main { - cd_set_dns - -cd_step "configure package manager" -echo -n "\ +function cd_set_packages_configuration { + cd_step "configure package manager" + case "${CD_OS_NAME}" in + 'debian') + cd_write '/etc/apt/apt.conf.d/apt.conf' "\ Acquire::Check-Valid-Until True; APT::Get::Show-Versions True; APT::Install-Recommends False; APT::Install-Suggests False; Dir::Etc::SourceParts ''; -" > '/etc/apt/apt.conf.d/apt.conf' \ -|| exit +" + ;; + *) exit ;; + esac +} + +function cd_main { + cd_set_dns_resolving + cd_set_packages_configuration + cd_step "configure package repositories" echo -n "\ deb https://deb.debian.org/debian bookworm main From ffb21653830f7ae19d25d737ab0cbf0f4508c11b Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 15:57:23 +0200 Subject: [PATCH 08/20] exit --- cd.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cd.sh b/cd.sh index b3332ed..9ed590c 100644 --- a/cd.sh +++ b/cd.sh @@ -68,7 +68,7 @@ APT::Install-Suggests False; Dir::Etc::SourceParts ''; " ;; - *) exit ;; + *) exit 1 ;; esac } From 62cd874c26701767622d7cd87358c765ebfb981a Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:03:17 +0200 Subject: [PATCH 09/20] sourceparts --- cd.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cd.sh b/cd.sh index 9ed590c..5f799d4 100644 --- a/cd.sh +++ b/cd.sh @@ -65,7 +65,7 @@ Acquire::Check-Valid-Until True; APT::Get::Show-Versions True; APT::Install-Recommends False; APT::Install-Suggests False; -Dir::Etc::SourceParts ''; +Dir::Etc::SourceParts \"\"; " ;; *) exit 1 ;; From d24eb62df13842e3c1a96bb736e178684c7b9063 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:13:35 +0200 Subject: [PATCH 10/20] repositories --- cd.sh | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/cd.sh b/cd.sh index 5f799d4..6ffb0c3 100644 --- a/cd.sh +++ b/cd.sh @@ -56,11 +56,26 @@ local text='' || exit } +function cd_set_packages_repositories { + cd_step "configure package repositories" + case "${CD_OS_NAME}" in + 'debian') + cd_write '/etc/apt/sources.list' "\ +deb https://deb.debian.org/debian bookworm main +deb https://deb.debian.org/debian bookworm-backports main +deb https://deb.debian.org/debian bookworm-updates main +deb https://deb.debian.org/debian-security bookworm-security main +" + ;; + *) exit 1 ;; + esac +} + function cd_set_packages_configuration { cd_step "configure package manager" case "${CD_OS_NAME}" in 'debian') - cd_write '/etc/apt/apt.conf.d/apt.conf' "\ + cd_write '/etc/apt/apt.conf.d/apt.conf' "\ Acquire::Check-Valid-Until True; APT::Get::Show-Versions True; APT::Install-Recommends False; @@ -74,17 +89,9 @@ Dir::Etc::SourceParts \"\"; function cd_main { cd_set_dns_resolving + cd_set_packages_repositories cd_set_packages_configuration -cd_step "configure package repositories" -echo -n "\ -deb https://deb.debian.org/debian bookworm main -deb https://deb.debian.org/debian bookworm-backports main -deb https://deb.debian.org/debian bookworm-updates main -deb https://deb.debian.org/debian-security bookworm-security main -" > '/etc/apt/sources.list' \ -|| exit - cd_step "disable package verification" echo -n "\ Acquire::https::Verify-Peer False; From d594bb532e15b56feff68e5236908914f09f795f Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:17:49 +0200 Subject: [PATCH 11/20] funcname --- cd.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cd.sh b/cd.sh index 6ffb0c3..e143c0d 100644 --- a/cd.sh +++ b/cd.sh @@ -47,7 +47,7 @@ local text="${2}" function cd_set_dns_resolving { local server local text='' - cd_step "set name servers" + cd_step "${FUNCNAME}" for server in "${CD_DNS_SERVERS[@]}" ; do text+="nameserver ${server} " @@ -57,7 +57,7 @@ local text='' } function cd_set_packages_repositories { - cd_step "configure package repositories" + cd_step "${FUNCNAME}" case "${CD_OS_NAME}" in 'debian') cd_write '/etc/apt/sources.list' "\ @@ -72,7 +72,7 @@ deb https://deb.debian.org/debian-security bookworm-security main } function cd_set_packages_configuration { - cd_step "configure package manager" + cd_step "${FUNCNAME}" case "${CD_OS_NAME}" in 'debian') cd_write '/etc/apt/apt.conf.d/apt.conf' "\ From 06d34057dc846036ecdb1c6f1264b12efed5b4e4 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:23:30 +0200 Subject: [PATCH 12/20] https/off --- cd.sh | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/cd.sh b/cd.sh index e143c0d..68e37a4 100644 --- a/cd.sh +++ b/cd.sh @@ -87,16 +87,23 @@ Dir::Etc::SourceParts \"\"; esac } +function cd_set_https_verification_off { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') + cd_write '/etc/apt/apt.conf.d/https' "\ +Acquire::https::Verify-Peer False; +" + ;; + *) exit 1 ;; + esac +} + function cd_main { cd_set_dns_resolving cd_set_packages_repositories cd_set_packages_configuration -cd_step "disable package verification" -echo -n "\ -Acquire::https::Verify-Peer False; -" > '/etc/apt/apt.conf.d/https' \ -|| exit cd_step "update package catalog" apt-get update \ || exit From 998c5f23864b7941197b8daf9ebe8afb79458925 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:27:36 +0200 Subject: [PATCH 13/20] update --- cd.sh | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/cd.sh b/cd.sh index 68e37a4..a4cf213 100644 --- a/cd.sh +++ b/cd.sh @@ -99,14 +99,21 @@ Acquire::https::Verify-Peer False; esac } +function cd_update_packages_catalog { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') apt-get update ;; + *) exit 1 ;; + esac +} + function cd_main { cd_set_dns_resolving cd_set_packages_repositories cd_set_packages_configuration + cd_set_https_verification_off + cd_update_packages_catalog -cd_step "update package catalog" -apt-get update \ -|| exit cd_step "install CA certificates package" apt-get install --yes 'ca-certificates' \ || exit From 1e1f281f54c7da733a214d7ef85782370e0ebb6d Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:29:40 +0200 Subject: [PATCH 14/20] fixes --- cd.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/cd.sh b/cd.sh index a4cf213..67f33fa 100644 --- a/cd.sh +++ b/cd.sh @@ -52,8 +52,7 @@ local text='' text+="nameserver ${server} " done - cd_write "${CD_DNS_FILE}" "${text}" \ - || exit + cd_write "${CD_DNS_FILE}" "${text}" } function cd_set_packages_repositories { @@ -102,7 +101,7 @@ Acquire::https::Verify-Peer False; function cd_update_packages_catalog { cd_step "${FUNCNAME}" case "${CD_OS_NAME}" in - 'debian') apt-get update ;; + 'debian') apt-get update || exit ;; *) exit 1 ;; esac } From bfe94ce1cbb889e203082923fbacea5916c0a04d Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:35:15 +0200 Subject: [PATCH 15/20] ca,https --- cd.sh | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/cd.sh b/cd.sh index 67f33fa..316fe0e 100644 --- a/cd.sh +++ b/cd.sh @@ -106,19 +106,30 @@ function cd_update_packages_catalog { esac } +function cd_install_ca { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') apt-get install --yes 'ca-certificates' || exit ;; + *) exit 1 ;; + esac +} + +function cd_set_https_verification_on { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') rm '/etc/apt/apt.conf.d/https' ;; + *) exit 1 ;; + esac +} + function cd_main { cd_set_dns_resolving cd_set_packages_repositories cd_set_packages_configuration cd_set_https_verification_off cd_update_packages_catalog - -cd_step "install CA certificates package" -apt-get install --yes 'ca-certificates' \ -|| exit -cd_step "enable package verification" -rm '/etc/apt/apt.conf.d/https' \ -|| exit + cd_install_ca + cd_set_https_verification_on cd_step "update package catalog" apt-get update \ From 0f68d49e46504e53442a12929f5c6959e4088056 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:39:24 +0200 Subject: [PATCH 16/20] upgrade --- cd.sh | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/cd.sh b/cd.sh index 316fe0e..a0ad71d 100644 --- a/cd.sh +++ b/cd.sh @@ -122,6 +122,14 @@ function cd_set_https_verification_on { esac } +function cd_upgrade_packages { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') apt-get upgrade --yes || exit ;; + *) exit 1 ;; + esac +} + function cd_main { cd_set_dns_resolving cd_set_packages_repositories @@ -130,13 +138,8 @@ function cd_main { cd_update_packages_catalog cd_install_ca cd_set_https_verification_on - -cd_step "update package catalog" -apt-get update \ -|| exit -cd_step "upgrade packages" -apt-get upgrade --yes \ -|| exit + cd_update_packages_catalog + cd_upgrade_packages cd_step "install Git" apt-get install --yes 'git' \ From 307e0a34ed15b056d2d36d16c84f846e0faf1087 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:44:34 +0200 Subject: [PATCH 17/20] install_package --- cd.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/cd.sh b/cd.sh index a0ad71d..dc240be 100644 --- a/cd.sh +++ b/cd.sh @@ -106,6 +106,16 @@ function cd_update_packages_catalog { esac } +function cd_install_package { +if [ "${1}" ] ; then + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') apt-get install --yes "${1}" || exit ;; + *) exit 1 ;; + esac +fi +} + function cd_install_ca { cd_step "${FUNCNAME}" case "${CD_OS_NAME}" in From 3a75085157ba4c9e846d6cfe4eeab3b538ce5254 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:50:25 +0200 Subject: [PATCH 18/20] git,python --- cd.sh | 40 +++++++++++++++++++++++++--------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/cd.sh b/cd.sh index dc240be..2f580c8 100644 --- a/cd.sh +++ b/cd.sh @@ -107,19 +107,34 @@ function cd_update_packages_catalog { } function cd_install_package { -if [ "${1}" ] ; then - cd_step "${FUNCNAME}" - case "${CD_OS_NAME}" in - 'debian') apt-get install --yes "${1}" || exit ;; - *) exit 1 ;; - esac -fi + if [ "${1}" ] ; then + case "${CD_OS_NAME}" in + 'debian') apt-get install --yes "${1}" || exit ;; + *) exit 1 ;; + esac + fi } function cd_install_ca { cd_step "${FUNCNAME}" case "${CD_OS_NAME}" in - 'debian') apt-get install --yes 'ca-certificates' || exit ;; + 'debian') cd_install_package 'ca-certificates' ;; + *) exit 1 ;; + esac +} + +function cd_install_git { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') cd_install_package 'git' ;; + *) exit 1 ;; + esac +} + +function cd_install_python { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') cd_install_package 'python3' ;; *) exit 1 ;; esac } @@ -150,10 +165,8 @@ function cd_main { cd_set_https_verification_on cd_update_packages_catalog cd_upgrade_packages - -cd_step "install Git" -apt-get install --yes 'git' \ -|| exit + cd_install_git + cd_install_python DIRECTORY="$(mktemp --directory)" \ || exit @@ -163,9 +176,6 @@ git clone \ "${DIRECTORY}" \ || exit -cd_step "install Python" -apt-get install --yes 'python3' \ -|| exit cd_step "clean package cache" apt-get clean \ || exit From 2eec8bef6185ed9e568988bfd0bfe2e0afd4e19f Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 16:53:41 +0200 Subject: [PATCH 19/20] clean --- cd.sh | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/cd.sh b/cd.sh index 2f580c8..c5350b6 100644 --- a/cd.sh +++ b/cd.sh @@ -155,6 +155,14 @@ function cd_upgrade_packages { esac } +function cd_clean_packages_cache { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') apt-get clean || exit ;; + *) exit 1 ;; + esac +} + function cd_main { cd_set_dns_resolving cd_set_packages_repositories @@ -167,6 +175,7 @@ function cd_main { cd_upgrade_packages cd_install_git cd_install_python + cd_clean_packages_cache DIRECTORY="$(mktemp --directory)" \ || exit @@ -176,9 +185,6 @@ git clone \ "${DIRECTORY}" \ || exit -cd_step "clean package cache" -apt-get clean \ -|| exit cd_step "bootstrap" "${DIRECTORY}/bootstrap.sh" From fd6a31e3bebc10ed238b010dc8ac875a121abe0e Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Fri, 26 Apr 2024 17:02:14 +0200 Subject: [PATCH 20/20] package_tools --- cd.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cd.sh b/cd.sh index c5350b6..e50c76f 100644 --- a/cd.sh +++ b/cd.sh @@ -131,6 +131,14 @@ function cd_install_git { esac } +function cd_install_packages_tools { + cd_step "${FUNCNAME}" + case "${CD_OS_NAME}" in + 'debian') cd_install_package 'apt-utils' ;; + *) exit 1 ;; + esac +} + function cd_install_python { cd_step "${FUNCNAME}" case "${CD_OS_NAME}" in @@ -169,6 +177,7 @@ function cd_main { cd_set_packages_configuration cd_set_https_verification_off cd_update_packages_catalog + cd_install_packages_tools cd_install_ca cd_set_https_verification_on cd_update_packages_catalog