feat: update env prefix (#160)
Reviewed-on: https://codeberg.org/forgejo-contrib/forgejo-helm/pulls/160 Reviewed-by: Michael Kriese <viceice@noreply.codeberg.org> Co-authored-by: rome-user <rome-user@noreply.codeberg.org> Co-committed-by: rome-user <rome-user@noreply.codeberg.org>
This commit is contained in:
parent
9cedfa2c5a
commit
7b1b9b09c5
2 changed files with 17 additions and 19 deletions
12
README.md
12
README.md
|
@ -195,19 +195,17 @@ stringData:
|
||||||
Users are able to define their own environment variables, which are loaded into the containers.
|
Users are able to define their own environment variables, which are loaded into the containers.
|
||||||
We also support to directly interact with the generated _app.ini_.
|
We also support to directly interact with the generated _app.ini_.
|
||||||
|
|
||||||
To inject self defined variables into the _app.ini_ a certain format needs to be honored.
|
To inject self defined variables into the _app.ini_, environment variables need
|
||||||
This is described in detail on the [env-to-ini](https://github.com/go-gitea/gitea/tree/main/contrib/environment-to-ini) page.
|
to be prefixed with `FORGEJO`.
|
||||||
|
|
||||||
Note that the Prefix on this helm chart is `ENV_TO_INI`.
|
|
||||||
|
|
||||||
For example a database setting needs to have the following format:
|
For example a database setting needs to have the following format:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
gitea:
|
gitea:
|
||||||
additionalConfigFromEnvs:
|
additionalConfigFromEnvs:
|
||||||
- name: ENV_TO_INI__DATABASE__HOST
|
- name: FORGEJO__DATABASE__HOST
|
||||||
value: my.own.host
|
value: my.own.host
|
||||||
- name: ENV_TO_INI__DATABASE__PASSWD
|
- name: FORGEJO__DATABASE__PASSWD
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: postgres-secret
|
name: postgres-secret
|
||||||
|
@ -216,7 +214,7 @@ gitea:
|
||||||
|
|
||||||
Priority (highest to lowest) for defining app.ini variables:
|
Priority (highest to lowest) for defining app.ini variables:
|
||||||
|
|
||||||
1. Environment variables prefixed with `ENV_TO_INI`
|
1. Environment variables prefixed with `FORGEJO`
|
||||||
1. Additional config sources
|
1. Additional config sources
|
||||||
1. Values defined in `gitea.config`
|
1. Values defined in `gitea.config`
|
||||||
|
|
||||||
|
|
|
@ -53,14 +53,14 @@ stringData:
|
||||||
env2ini::log " + '${setting}'"
|
env2ini::log " + '${setting}'"
|
||||||
|
|
||||||
if [[ -z "${section}" ]]; then
|
if [[ -z "${section}" ]]; then
|
||||||
export "ENV_TO_INI____${setting^^}=${value}" # '^^' makes the variable content uppercase
|
export "FORGEJO____${setting^^}=${value}" # '^^' makes the variable content uppercase
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local masked_section="${section//./_0X2E_}" # '//' instructs to replace all matches
|
local masked_section="${section//./_0X2E_}" # '//' instructs to replace all matches
|
||||||
masked_section="${masked_section//-/_0X2D_}"
|
masked_section="${masked_section//-/_0X2D_}"
|
||||||
|
|
||||||
export "ENV_TO_INI__${masked_section^^}__${setting^^}=${value}" # '^^' makes the variable content uppercase
|
export "FORGEJO__${masked_section^^}__${setting^^}=${value}" # '^^' makes the variable content uppercase
|
||||||
}
|
}
|
||||||
|
|
||||||
function env2ini::reload_preset_envs() {
|
function env2ini::reload_preset_envs() {
|
||||||
|
@ -134,15 +134,15 @@ stringData:
|
||||||
# - initially used to set up Gitea
|
# - initially used to set up Gitea
|
||||||
# Anyway, they won't harm existing app.ini files
|
# Anyway, they won't harm existing app.ini files
|
||||||
|
|
||||||
export ENV_TO_INI__SECURITY__INTERNAL_TOKEN=$(gitea generate secret INTERNAL_TOKEN)
|
export FORGEJO__SECURITY__INTERNAL_TOKEN=$(gitea generate secret INTERNAL_TOKEN)
|
||||||
export ENV_TO_INI__SECURITY__SECRET_KEY=$(gitea generate secret SECRET_KEY)
|
export FORGEJO__SECURITY__SECRET_KEY=$(gitea generate secret SECRET_KEY)
|
||||||
export ENV_TO_INI__OAUTH2__JWT_SECRET=$(gitea generate secret JWT_SECRET)
|
export FORGEJO__OAUTH2__JWT_SECRET=$(gitea generate secret JWT_SECRET)
|
||||||
export ENV_TO_INI__SERVER__LFS_JWT_SECRET=$(gitea generate secret LFS_JWT_SECRET)
|
export FORGEJO__SERVER__LFS_JWT_SECRET=$(gitea generate secret LFS_JWT_SECRET)
|
||||||
|
|
||||||
env2ini::log "...Initial secrets generated\n"
|
env2ini::log "...Initial secrets generated\n"
|
||||||
}
|
}
|
||||||
|
|
||||||
env | (grep ENV_TO_INI || [[ $? == 1 ]]) > /tmp/existing-envs
|
env | (grep FORGEJO || [[ $? == 1 ]]) > /tmp/existing-envs
|
||||||
|
|
||||||
# MUST BE CALLED BEFORE OTHER CONFIGURATION
|
# MUST BE CALLED BEFORE OTHER CONFIGURATION
|
||||||
env2ini::generate_initial_secrets
|
env2ini::generate_initial_secrets
|
||||||
|
@ -163,10 +163,10 @@ stringData:
|
||||||
env2ini::log ' - oauth2.JWT_SECRET'
|
env2ini::log ' - oauth2.JWT_SECRET'
|
||||||
env2ini::log ' - server.LFS_JWT_SECRET'
|
env2ini::log ' - server.LFS_JWT_SECRET'
|
||||||
|
|
||||||
unset ENV_TO_INI__SECURITY__INTERNAL_TOKEN
|
unset FORGEJO__SECURITY__INTERNAL_TOKEN
|
||||||
unset ENV_TO_INI__SECURITY__SECRET_KEY
|
unset FORGEJO__SECURITY__SECRET_KEY
|
||||||
unset ENV_TO_INI__OAUTH2__JWT_SECRET
|
unset FORGEJO__OAUTH2__JWT_SECRET
|
||||||
unset ENV_TO_INI__SERVER__LFS_JWT_SECRET
|
unset FORGEJO__SERVER__LFS_JWT_SECRET
|
||||||
fi
|
fi
|
||||||
|
|
||||||
environment-to-ini -o $GITEA_APP_INI -p ENV_TO_INI
|
environment-to-ini -o $GITEA_APP_INI
|
||||||
|
|
Loading…
Reference in a new issue