dkbuild: support profil par défaut
This commit is contained in:
parent
a855b04c21
commit
5a06851b0f
21
dkbuild
21
dkbuild
|
@ -260,6 +260,11 @@ Si le profil sélectionné par l'utilisateur n'est pas dans la liste fournie, le
|
||||||
script s'arrête avec une erreur. Le premier profil listé est spécial: c'est le
|
script s'arrête avec une erreur. Le premier profil listé est spécial: c'est le
|
||||||
profil par défaut.
|
profil par défaut.
|
||||||
|
|
||||||
|
La commande 'default_profile' permet de spécifier un profil par défaut à
|
||||||
|
utiliser, exactement comme s'il avait été spécifié avec l'option --profile.
|
||||||
|
Cette commande est particulièrement appropriée pour le fichier ~/.dkbuild.env
|
||||||
|
s'il s'agit de définir le profil à utiliser sur un hôte.
|
||||||
|
|
||||||
La commande 'profile' permet de tester si le profil spécifié en argument a été
|
La commande 'profile' permet de tester si le profil spécifié en argument a été
|
||||||
sélectionné par l'utilisateur. L'argument 'DEFAULT' permet de tester le profil
|
sélectionné par l'utilisateur. L'argument 'DEFAULT' permet de tester le profil
|
||||||
par défaut.
|
par défaut.
|
||||||
|
@ -289,8 +294,8 @@ la plus récente.
|
||||||
Si les distributions sont utilisées avec des versions, alors c'est une erreur de
|
Si les distributions sont utilisées avec des versions, alors c'est une erreur de
|
||||||
spécifier une version dans le profil
|
spécifier une version dans le profil
|
||||||
|
|
||||||
Note: 'setprofiles' ne doit être utilisé qu'une seule fois. Les invocations
|
Note: 'setprofiles' et 'default_profile' ne peuvent être utilisés qu'une seule
|
||||||
suivantes sont ignorées.
|
fois. Les invocations suivantes sont ignorées.
|
||||||
|
|
||||||
## Versions ####################################################################
|
## Versions ####################################################################
|
||||||
|
|
||||||
|
@ -510,6 +515,8 @@ USAGE:
|
||||||
|
|
||||||
## setprofiles -- spécifier les profils valides
|
## setprofiles -- spécifier les profils valides
|
||||||
|
|
||||||
|
## default_profile -- spécifier le profil à utiliser si aucun profil n'est sélectionné
|
||||||
|
|
||||||
## profile -- vérifier le profil courant
|
## profile -- vérifier le profil courant
|
||||||
|
|
||||||
## setversion -- spécifier la version par défaut
|
## setversion -- spécifier la version par défaut
|
||||||
|
@ -892,6 +899,7 @@ declare -A PROTECTED_VARS=(
|
||||||
[SETDISTS]=1
|
[SETDISTS]=1
|
||||||
[SETPROFILES_DONE]=1
|
[SETPROFILES_DONE]=1
|
||||||
[SETPROFILES]=1
|
[SETPROFILES]=1
|
||||||
|
[DEFAULT_PROFILE]=1
|
||||||
[SETVERSION_DONE]=1
|
[SETVERSION_DONE]=1
|
||||||
[SETVERSION]=1
|
[SETVERSION]=1
|
||||||
[AUTOBUILD]=1
|
[AUTOBUILD]=1
|
||||||
|
@ -937,6 +945,7 @@ TFUNCTIONS=(
|
||||||
section note info debug
|
section note info debug
|
||||||
setdists dist
|
setdists dist
|
||||||
setprofiles profile
|
setprofiles profile
|
||||||
|
default_profile
|
||||||
setversion version
|
setversion version
|
||||||
setenv resetenv
|
setenv resetenv
|
||||||
setarg resetarg
|
setarg resetarg
|
||||||
|
@ -1432,6 +1441,7 @@ function resolve_dists_profiles() {
|
||||||
SETDISTS=()
|
SETDISTS=()
|
||||||
SETPROFILES_DONE=
|
SETPROFILES_DONE=
|
||||||
SETPROFILES=()
|
SETPROFILES=()
|
||||||
|
DEFAULT_PROFILE=
|
||||||
SETVERSION_DONE=
|
SETVERSION_DONE=
|
||||||
SETVERSION=
|
SETVERSION=
|
||||||
AUTOBUILD=1
|
AUTOBUILD=1
|
||||||
|
@ -1446,6 +1456,9 @@ function resolve_dists_profiles() {
|
||||||
SETPROFILES=("$@")
|
SETPROFILES=("$@")
|
||||||
SETPROFILES_DONE=1
|
SETPROFILES_DONE=1
|
||||||
}
|
}
|
||||||
|
function default_profile() {
|
||||||
|
[ -n "$DEFAULT_PROFILE" ] || DEFAULT_PROFILE="$1"
|
||||||
|
}
|
||||||
function build() {
|
function build() {
|
||||||
AUTOBUILD=
|
AUTOBUILD=
|
||||||
}
|
}
|
||||||
|
@ -1454,6 +1467,10 @@ function resolve_dists_profiles() {
|
||||||
}
|
}
|
||||||
load_dkbuild
|
load_dkbuild
|
||||||
|
|
||||||
|
if [ -z "$PROFILE" -a -z "$ALL_PROFILES" -a -n "$DEFAULT_PROFILE" ]; then
|
||||||
|
enote "Auto-sélection du profil $DEFAULT_PROFILE"
|
||||||
|
PROFILE="$DEFAULT_PROFILE"
|
||||||
|
fi
|
||||||
local MANUAL_SETPROFILES=
|
local MANUAL_SETPROFILES=
|
||||||
if [ -z "$SETPROFILES_DONE" -a -n "$PROFILE" ]; then
|
if [ -z "$SETPROFILES_DONE" -a -n "$PROFILE" ]; then
|
||||||
# Si l'utilisateur spécifie un profil mais qu'aucun profil n'a été
|
# Si l'utilisateur spécifie un profil mais qu'aucun profil n'a été
|
||||||
|
|
|
@ -1,10 +1,5 @@
|
||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
||||||
_valid_profiles=(
|
default_profile "${DKBUILD_PROFILE:-devel}"
|
||||||
prod test devel
|
|
||||||
jclain
|
|
||||||
)
|
|
||||||
_default_profile=devel
|
|
||||||
[ -z "$DKBUILD_NO_SETPROFILES" ] && setprofiles "$_default_profile" "${_valid_profiles[@]}"
|
|
||||||
|
|
||||||
if profile jclain; then
|
if profile jclain; then
|
||||||
setenv REGISTRY=docker.jclain.fr
|
setenv REGISTRY=docker.jclain.fr
|
||||||
|
|
Loading…
Reference in New Issue