[bitnami/gitea] Add new customizable environment variables - OAUTH2_CLIENT (#67791)

* [bitnami/gitea] Add new customizable environment variables
                    [outh2_client]
                    1. ENABLE_AUTO_REGISTRATION (default: false)
                    2. USERNAME (default: nickname)

Signed-off-by: Ismail Kutlay Acar <ikamii3.sh@gmail.com>

* Rename env-var and add validations

Signed-off-by: Andrés Bono <andresbono@vmware.com>

---------

Signed-off-by: Ismail Kutlay Acar <ikamii3.sh@gmail.com>
Signed-off-by: Andrés Bono <andresbono@vmware.com>
Co-authored-by: Andrés Bono <andresbono@vmware.com>
This commit is contained in:
ikamii
2024-07-02 15:02:06 +02:00
committed by GitHub
parent a969d1c066
commit 5b79fee7fc
4 changed files with 28 additions and 1 deletions

View File

@@ -55,4 +55,8 @@ REVERSE_PROXY_TRUSTED_PROXIES = *
[openid]
ENABLE_OPENID_SIGNIN = {{GITEA_ENABLE_OPENID_SIGNIN}}
ENABLE_OPENID_SIGNUP = {{GITEA_ENABLE_OPENID_SIGNUP}}
ENABLE_OPENID_SIGNUP = {{GITEA_ENABLE_OPENID_SIGNUP}}
[oauth2_client]
ENABLE_AUTO_REGISTRATION = {{GITEA_OAUTH2_CLIENT_AUTO_REGISTRATION_ENABLED}}
USERNAME = {{GITEA_OAUTH2_CLIENT_USERNAME}}

View File

@@ -60,6 +60,8 @@ gitea_env_vars=(
GITEA_SMTP_FROM
GITEA_SMTP_USER
GITEA_SMTP_PASSWORD
GITEA_OAUTH2_CLIENT_AUTO_REGISTRATION_ENABLED
GITEA_OAUTH2_CLIENT_USERNAME
)
for env_var in "${gitea_env_vars[@]}"; do
file_env_var="${env_var}_FILE"
@@ -125,6 +127,8 @@ export GITEA_SMTP_PORT="${GITEA_SMTP_PORT:-}"
export GITEA_SMTP_FROM="${GITEA_SMTP_FROM:-}"
export GITEA_SMTP_USER="${GITEA_SMTP_USER:-}"
export GITEA_SMTP_PASSWORD="${GITEA_SMTP_PASSWORD:-}"
export GITEA_OAUTH2_CLIENT_AUTO_REGISTRATION_ENABLED="${GITEA_OAUTH2_CLIENT_AUTO_REGISTRATION_ENABLED:-false}"
export GITEA_OAUTH2_CLIENT_USERNAME="${GITEA_OAUTH2_CLIENT_USERNAME:-nickname}"
# Gitea system parameters
export GITEA_DAEMON_USER="gitea"

View File

@@ -47,6 +47,17 @@ gitea_validate() {
fi
}
check_true_false_value() {
if ! is_true_false_value "${!1}"; then
print_validation_error "The allowed values for $1 are [true, false]"
fi
}
check_multi_value() {
if [[ " ${2} " != *" ${!1} "* ]]; then
print_validation_error "The allowed values for ${1} are: ${2}"
fi
}
! is_empty_value "$GITEA_HTTP_PORT" && check_valid_port "GITEA_HTTP_PORT"
! is_empty_value "$GITEA_SSH_PORT" && check_valid_port "GITEA_SSH_PORT"
! is_empty_value "$GITEA_SSH_LISTEN_PORT" && check_valid_port "GITEA_SSH_LISTEN_PORT"
@@ -56,6 +67,9 @@ gitea_validate() {
check_empty_value "GITEA_SMTP_FROM"
fi
check_true_false_value 'GITEA_OAUTH2_CLIENT_AUTO_REGISTRATION_ENABLED'
check_multi_value 'GITEA_OAUTH2_CLIENT_USERNAME' 'userid nickname preferred_username email'
return "$error_code"
}
@@ -221,6 +235,9 @@ gitea_update_conf_file() {
is_empty_value "$GITEA_SMTP_USER" || gitea_conf_set "mailer" "USER" "$GITEA_SMTP_USER"
is_empty_value "$GITEA_SMTP_PASSWORD" || gitea_conf_set "mailer" "PASSWD" "$GITEA_SMTP_PASSWORD"
is_empty_value "$GITEA_LFS_ROOT_PATH" || gitea_conf_set "lfs" "PATH" "$GITEA_LFS_ROOT_PATH"
is_empty_value "$GITEA_OAUTH2_CLIENT_AUTO_REGISTRATION_ENABLED" || gitea_conf_set "oauth2_client" "ENABLE_AUTO_REGISTRATION" "$GITEA_OAUTH2_CLIENT_AUTO_REGISTRATION_ENABLED"
is_empty_value "$GITEA_OAUTH2_CLIENT_USERNAME" || gitea_conf_set "oauth2_client" "USERNAME" "$GITEA_OAUTH2_CLIENT_USERNAME"
}
########################