From 64ed4186b3f3390226030e90b7a74f6b6d219ce8 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Mon, 29 Apr 2024 10:58:37 +0200 Subject: [PATCH 1/4] refactor --- cd.sh | 57 ++++++++++++++++++++++++--------------------------------- 1 file changed, 24 insertions(+), 33 deletions(-) diff --git a/cd.sh b/cd.sh index 7a49275..fa39bf9 100644 --- a/cd.sh +++ b/cd.sh @@ -49,41 +49,30 @@ cd_set_environment () { exit 1 ;; esac - # project / branch - [ "${CI_COMMIT_BRANCH}" ] && CD_PROJECT_BRANCH="${CI_COMMIT_BRANCH}" - [ "${GITHUB_REF_NAME}" ] && CD_PROJECT_BRANCH="${GITHUB_REF_NAME}" - if [ ! "${CD_PROJECT_BRANCH}" ] ; then - echo "CD_PROJECT_BRANCH" - exit 3 - fi - # project / name - [ "${CI_PROJECT_PATH}" ] \ - && CD_PROJECT_NAME="$(basename "${CI_PROJECT_PATH}")" - [ "${GITHUB_REPOSITORY}" ] \ - && CD_PROJECT_NAME="$(basename "${GITHUB_REPOSITORY}")" - if [ ! "${CD_PROJECT_NAME}" ] ; then - echo "CD_PROJECT_NAME" - exit 3 - fi - # projects / group - [ "${CI_PROJECT_PATH}" ] \ - && CD_PROJECTS_GROUP="$(dirname "${CI_PROJECT_PATH}")" - [ "${GITHUB_REPOSITORY}" ] \ - && CD_PROJECTS_GROUP="$(dirname "${GITHUB_REPOSITORY}")" - if [ ! "${CD_PROJECTS_GROUP}" ] ; then - echo "CD_PROJECTS_GROUP" - exit 3 - fi - # projects / url - [ "${CI_SERVER_URL}" ] && CD_PROJECTS_URL="${CI_SERVER_URL}" - [ "${GITHUB_SERVER_URL}" ] && CD_PROJECTS_URL="${GITHUB_SERVER_URL}" - if [ "${CD_PROJECTS_URL}" ] ; then - CD_PROJECTS_URL="${CD_PROJECTS_URL}/${CD_PROJECTS_GROUP}" + # ci / github + if [ "${GITHUB_ACTIONS}" ] ; then + CD_SERVER_URL="${GITHUB_SERVER_URL}" + CD_PROJECT_BRANCH="${GITHUB_REF_NAME}" + CD_PROJECT_NAME="$(basename "${GITHUB_REPOSITORY}")" + CD_PROJECTS_GROUP="$(dirname "${GITHUB_REPOSITORY}")" + # ci / gitlab + elif [ "${GITLAB_CI}" ] ; then + CD_SERVER_URL="${CI_SERVER_URL}" + CD_PROJECT_BRANCH="${CI_COMMIT_BRANCH}" + CD_PROJECT_NAME="$(basename "${CI_PROJECT_PATH}")" + CD_PROJECTS_GROUP="$(dirname "${CI_PROJECT_PATH}")" + # ci / none else - echo "CD_PROJECTS_URL" + echo "CI" exit 3 fi - # project / url + # + [ "${CD_SERVER_URL}" ] || echo "CD_SERVER_URL" && exit 3 + [ "${CD_PROJECT_BRANCH}" ] || echo "CD_PROJECT_BRANCH" && exit 3 + [ "${CD_PROJECT_NAME}" ] || echo "CD_PROJECT_NAME" && exit 3 + [ "${CD_PROJECTS_GROUP}" ] || echo "CD_PROJECTS_GROUP" && exit 3 + # + CD_PROJECTS_URL="${CD_SERVER_URL}/${CD_PROJECTS_GROUP}" CD_PROJECT_URL="${CD_PROJECTS_URL}/${CD_PROJECT_NAME}" # echo -n "\ @@ -95,11 +84,13 @@ CD_DNS_FILE=${CD_DNS_FILE} CD_PYTHON_COMMAND=${CD_PYTHON_COMMAND} CD_PYTHON_PACKAGES=${CD_PYTHON_PACKAGES} # +CD_SERVER_URL=${CD_SERVER_URL} CD_PROJECT_BRANCH=${CD_PROJECT_BRANCH} CD_PROJECT_NAME=${CD_PROJECT_NAME} -CD_PROJECT_URL=${CD_PROJECT_URL} CD_PROJECTS_GROUP=${CD_PROJECTS_GROUP} +# CD_PROJECTS_URL=${CD_PROJECTS_URL} +CD_PROJECT_URL=${CD_PROJECT_URL} " } From c114dfae779cb34899c877a450a0013d25077523 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Mon, 29 Apr 2024 11:01:48 +0200 Subject: [PATCH 2/4] error_ci,error_os --- cd.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cd.sh b/cd.sh index fa39bf9..23c74a8 100644 --- a/cd.sh +++ b/cd.sh @@ -286,6 +286,15 @@ cd_cat () { fi } +cd_error_ci () { + echo "× CI: ${1}" + exit 1 +} +cd_error_os () { + echo "× OS: ${1}" + exit 2 +} + cd_install_package () { if [ "${1}" ] ; then case "${CD_OS_NAME}" in From de5f67bb9b59a9e6ff981e6ce02c521f2c2c6dcb Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Mon, 29 Apr 2024 11:08:29 +0200 Subject: [PATCH 3/4] error_ci --- cd.sh | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/cd.sh b/cd.sh index 23c74a8..a85860c 100644 --- a/cd.sh +++ b/cd.sh @@ -63,14 +63,13 @@ cd_set_environment () { CD_PROJECTS_GROUP="$(dirname "${CI_PROJECT_PATH}")" # ci / none else - echo "CI" - exit 3 + cd_error_ci "ø" fi # - [ "${CD_SERVER_URL}" ] || echo "CD_SERVER_URL" && exit 3 - [ "${CD_PROJECT_BRANCH}" ] || echo "CD_PROJECT_BRANCH" && exit 3 - [ "${CD_PROJECT_NAME}" ] || echo "CD_PROJECT_NAME" && exit 3 - [ "${CD_PROJECTS_GROUP}" ] || echo "CD_PROJECTS_GROUP" && exit 3 + [ "${CD_SERVER_URL}" ] || cd_error_ci "CD_SERVER_URL" + [ "${CD_PROJECT_BRANCH}" ] || cd_error_ci "CD_PROJECT_BRANCH" + [ "${CD_PROJECT_NAME}" ] || cd_error_ci "CD_PROJECT_NAME" + [ "${CD_PROJECTS_GROUP}" ] || cd_error_ci "CD_PROJECTS_GROUP" # CD_PROJECTS_URL="${CD_SERVER_URL}/${CD_PROJECTS_GROUP}" CD_PROJECT_URL="${CD_PROJECTS_URL}/${CD_PROJECT_NAME}" From 4ed8c776d4323de6a5cac406dbec355b3010c7d8 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Mon, 29 Apr 2024 11:42:11 +0200 Subject: [PATCH 4/4] error_os --- cd.sh | 36 +++++++++++++++--------------------- 1 file changed, 15 insertions(+), 21 deletions(-) diff --git a/cd.sh b/cd.sh index a85860c..06ab309 100644 --- a/cd.sh +++ b/cd.sh @@ -38,16 +38,10 @@ cd_set_environment () { "bookworm") echo "TODO" ;; - *) - echo "CD_OS_VERSION" - exit 2 - ;; + *) cd_error_os "CD_OS_VERSION=" ;; esac ;; - *) - echo "CD_OS_NAME" - exit 1 - ;; + *) cd_error_os "CD_OS_NAME=" ;; esac # ci / github if [ "${GITHUB_ACTIONS}" ] ; then @@ -117,7 +111,7 @@ deb https://deb.debian.org/debian-security bookworm-security main " cd_cat "/etc/apt/sources.list" ;; - *) exit 1 ;; + *) cd_error_os "cd_set_packages_repositories" ;; esac } @@ -135,7 +129,7 @@ Dir::Etc::SourceParts \"\"; " cd_cat "/etc/apt/apt.conf.d/apt.conf" ;; - *) exit 1 ;; + *) cd_error_os "cd_set_packages_configuration" ;; esac } @@ -148,7 +142,7 @@ Acquire::https::Verify-Peer False; " cd_cat "/etc/apt/apt.conf.d/https" ;; - *) exit 1 ;; + *) cd_error_os "cd_set_https_verification_off" ;; esac } @@ -156,7 +150,7 @@ cd_update_packages_catalog () { cd_step "Update packages catalog" case "${CD_OS_NAME}" in "debian") apt-get update || exit ;; - *) exit 1 ;; + *) cd_error_os "cd_update_packages_catalog" ;; esac } @@ -164,7 +158,7 @@ cd_install_packages_tools () { cd_step "Install packages tools" case "${CD_OS_NAME}" in "debian") cd_install_package "apt-utils" ;; - *) exit 1 ;; + *) cd_error_os "cd_install_packages_tools" ;; esac } @@ -172,7 +166,7 @@ cd_install_ca () { cd_step "Install CA" case "${CD_OS_NAME}" in "debian") cd_install_package "ca-certificates" ;; - *) exit 1 ;; + *) cd_error_os "cd_install_ca" ;; esac } @@ -181,7 +175,7 @@ local target cd_step "Copy CA" case "${CD_OS_NAME}" in "debian") target="/usr/local/share/ca-certificates" ;; - *) exit 1 ;; + *) cd_error_os "cd_copy_ca" ;; esac # TODO copy } @@ -190,7 +184,7 @@ cd_update_ca () { cd_step "Update CA" case "${CD_OS_NAME}" in "debian") update-ca-certificates || exit ;; - *) exit 1 ;; + *) cd_error_os "cd_update_ca" ;; esac } @@ -198,7 +192,7 @@ cd_set_https_verification_on () { cd_step "Set HTTPS verification on" case "${CD_OS_NAME}" in "debian") cd_rm "/etc/apt/apt.conf.d/https" ;; - *) exit 1 ;; + *) cd_error_os "cd_set_https_verification_on" ;; esac } @@ -206,7 +200,7 @@ cd_upgrade_packages () { cd_step "Upgrade packages" case "${CD_OS_NAME}" in "debian") apt-get upgrade --yes || exit ;; - *) exit 1 ;; + *) cd_error_os "cd_upgrade_packages" ;; esac } @@ -214,7 +208,7 @@ cd_install_git () { cd_step "Install Git" case "${CD_OS_NAME}" in "debian") cd_install_package "git" ;; - *) exit 1 ;; + *) cd_error_os "cd_install_git" ;; esac } @@ -222,7 +216,7 @@ cd_install_python () { cd_step "Install Python" case "${CD_OS_NAME}" in "debian") cd_install_package "python3" ;; - *) exit 1 ;; + *) cd_error_os "cd_install_python" ;; esac } @@ -230,7 +224,7 @@ cd_clean_packages_cache () { cd_step "Clean packages cache" case "${CD_OS_NAME}" in "debian") apt-get clean || exit ;; - *) exit 1 ;; + *) cd_error_os "cd_clean_packages_cache" ;; esac }