From cc6e20b24d22475720f7b938aa08edf9ee7514fb Mon Sep 17 00:00:00 2001 From: Carlos Camacho Date: Fri, 7 Jan 2022 15:30:56 +0100 Subject: [PATCH] Allow skip the database server installation This patch allows to skip the installation of the database backend packages (MySQL or Postgres) with the introduction of the INSTALL_DATABASE_SERVER_PACKAGES variable (defaulted to True). This is useful in such environments that do not require to install the MySQL/Postgres server packages directly but using a container serving that purpose, for those cases all the remaining steps should be executed just skipping the packages install. Change-Id: I26628a31fdda3ce95ed04a2b7ae7b132c288581f --- lib/databases/mysql | 27 +++++++++++++++------------ lib/databases/postgresql | 20 +++++++++++--------- 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/lib/databases/mysql b/lib/databases/mysql index 8edbf8c4a4..30e4b7c496 100644 --- a/lib/databases/mysql +++ b/lib/databases/mysql @@ -12,6 +12,7 @@ _XTRACE_DB_MYSQL=$(set +o | grep xtrace) set +o xtrace MYSQL_DRIVER=${MYSQL_DRIVER:-PyMySQL} +INSTALL_DATABASE_SERVER_PACKAGES=$(trueorfalse True INSTALL_DATABASE_SERVER_PACKAGES) register_database mysql @@ -175,18 +176,20 @@ EOF chmod 0600 $HOME/.my.cnf fi # Install mysql-server - if is_oraclelinux; then - install_package mysql-community-server - elif is_fedora; then - install_package mariadb-server mariadb-devel mariadb - sudo systemctl enable $MYSQL_SERVICE_NAME - elif is_suse; then - install_package mariadb-server - sudo systemctl enable $MYSQL_SERVICE_NAME - elif is_ubuntu; then - install_package $MYSQL_SERVICE_NAME-server - else - exit_distro_not_supported "mysql installation" + if [[ "$INSTALL_DATABASE_SERVER_PACKAGES" == "True" ]]; then + if is_oraclelinux; then + install_package mysql-community-server + elif is_fedora; then + install_package mariadb-server mariadb-devel mariadb + sudo systemctl enable $MYSQL_SERVICE_NAME + elif is_suse; then + install_package mariadb-server + sudo systemctl enable $MYSQL_SERVICE_NAME + elif is_ubuntu; then + install_package $MYSQL_SERVICE_NAME-server + else + exit_distro_not_supported "mysql installation" + fi fi } diff --git a/lib/databases/postgresql b/lib/databases/postgresql index 1f347f5548..4f0a5a0a4c 100644 --- a/lib/databases/postgresql +++ b/lib/databases/postgresql @@ -13,7 +13,7 @@ set +o xtrace MAX_DB_CONNECTIONS=${MAX_DB_CONNECTIONS:-200} - +INSTALL_DATABASE_SERVER_PACKAGES=$(trueorfalse True INSTALL_DATABASE_SERVER_PACKAGES) register_database postgresql @@ -104,15 +104,17 @@ EOF else sed -i "s/:root:\w\+/:root:$DATABASE_PASSWORD/" $pgpass fi - if is_ubuntu; then - install_package postgresql - elif is_fedora || is_suse; then - install_package postgresql-server - if is_fedora; then - sudo systemctl enable postgresql + if [[ "$INSTALL_DATABASE_SERVER_PACKAGES" == "True" ]]; then + if is_ubuntu; then + install_package postgresql + elif is_fedora || is_suse; then + install_package postgresql-server + if is_fedora; then + sudo systemctl enable postgresql + fi + else + exit_distro_not_supported "postgresql installation" fi - else - exit_distro_not_supported "postgresql installation" fi }