dkbuild: implémenter -u
This commit is contained in:
parent
776cd96fd7
commit
e5a147351d
44
dkbuild
44
dkbuild
|
@ -111,10 +111,18 @@ $scriptname build [OPTIONS] [BUILDVARS...]
|
||||||
Spécifier la valeur d'un argument de build. Cette valeur remplace la
|
Spécifier la valeur d'un argument de build. Cette valeur remplace la
|
||||||
valeur par défaut spécifiée dans le fichier de build.
|
valeur par défaut spécifiée dans le fichier de build.
|
||||||
|
|
||||||
|
-u, --clean-update
|
||||||
|
Avant de faire le build, faire un clean, suivi de git pull. C'est la
|
||||||
|
méthode préférée pour mettre à jour le dépôt s'il y a des fichiers
|
||||||
|
synchronisé avec la commande 'copy', parce que sinon les fichiers
|
||||||
|
sources (mis à jour par git pull) sont désynchronisés d'avec les
|
||||||
|
fichiers destination.
|
||||||
--clone-src-only
|
--clone-src-only
|
||||||
Ne faire que cloner les dépôts sources
|
Ne faire que cloner les dépôts sources mentionnés avec la commande
|
||||||
|
'checkout'
|
||||||
--update-src-only
|
--update-src-only
|
||||||
Ne faire que mettre à jour les dépôts sources
|
Ne faire que mettre à jour les dépôts sources mentionnés avec la
|
||||||
|
commande 'checkout'
|
||||||
--update-src
|
--update-src
|
||||||
Avec la commande 'checkout', mettre à jour les dépôts avant de faire le
|
Avec la commande 'checkout', mettre à jour les dépôts avant de faire le
|
||||||
build. C'est la valeur par défaut.
|
build. C'est la valeur par défaut.
|
||||||
|
@ -125,7 +133,8 @@ $scriptname build [OPTIONS] [BUILDVARS...]
|
||||||
Ne pas mettre à jour le dépôt, préférer la synchronisation depuis la
|
Ne pas mettre à jour le dépôt, préférer la synchronisation depuis la
|
||||||
version de développement d'un dépôt
|
version de développement d'un dépôt
|
||||||
-s, --sync-src
|
-s, --sync-src
|
||||||
Avec la commande 'copy', effectuer la mise à jour des fichiers
|
Avec la commande 'copy', effectuer la mise à jour des fichiers. C'est la
|
||||||
|
valeur par défaut si on construit l'image
|
||||||
--no-sync-src
|
--no-sync-src
|
||||||
Ne pas mettre à jour les fichiers. La commande 'copy' devient un NOP si
|
Ne pas mettre à jour les fichiers. La commande 'copy' devient un NOP si
|
||||||
le fichier destination existe.
|
le fichier destination existe.
|
||||||
|
@ -133,7 +142,7 @@ $scriptname build [OPTIONS] [BUILDVARS...]
|
||||||
Construire les images
|
Construire les images
|
||||||
--no-cache
|
--no-cache
|
||||||
Ne pas utiliser le cache lors du build
|
Ne pas utiliser le cache lors du build
|
||||||
-u, --pull-image
|
-U, --pull-image
|
||||||
Essayer de récupérer une version plus récente de l'image source
|
Essayer de récupérer une version plus récente de l'image source
|
||||||
-p, --push-image
|
-p, --push-image
|
||||||
Pousser les images construites vers la registry
|
Pousser les images construites vers la registry
|
||||||
|
@ -2771,12 +2780,16 @@ function build_action() {
|
||||||
eval "$SHARED_LOCALS1; $SHARED_LOCALS2"
|
eval "$SHARED_LOCALS1; $SHARED_LOCALS2"
|
||||||
local action=build
|
local action=build
|
||||||
local machine
|
local machine
|
||||||
|
local clean_update clean_opt=-X
|
||||||
local clone_src_only update_src_only update_src sync_src
|
local clone_src_only update_src_only update_src sync_src
|
||||||
local build no_cache pull_image
|
local build no_cache pull_image
|
||||||
local push_image
|
local push_image
|
||||||
local -a args; args=(
|
local -a args; args=(
|
||||||
"${SHARED_ARGS1[@]}" "${SHARED_ARGS2[@]}"
|
"${SHARED_ARGS1[@]}" "${SHARED_ARGS2[@]}"
|
||||||
-m:,--machine: machine=
|
-m:,--machine: machine=
|
||||||
|
-u,--clean-update clean_update=1
|
||||||
|
-X,--clean-ignored clean_opt=-X
|
||||||
|
-x,--clean-untracked clean_opt=-x
|
||||||
--clone-src-only clone_src_only=1
|
--clone-src-only clone_src_only=1
|
||||||
--update-src-only update_src_only=1
|
--update-src-only update_src_only=1
|
||||||
--update-src update_src=1
|
--update-src update_src=1
|
||||||
|
@ -2786,7 +2799,7 @@ function build_action() {
|
||||||
--no-sync-src sync_src=no
|
--no-sync-src sync_src=no
|
||||||
-b,--build build=1
|
-b,--build build=1
|
||||||
--no-cache no_cache=1
|
--no-cache no_cache=1
|
||||||
-u,--pull-image pull_image=1
|
-U,--pull-image pull_image=1
|
||||||
-p,--push-image push_image=1
|
-p,--push-image push_image=1
|
||||||
)
|
)
|
||||||
parse_args "$@"; set -- "${args[@]}"
|
parse_args "$@"; set -- "${args[@]}"
|
||||||
|
@ -2823,6 +2836,17 @@ function build_action() {
|
||||||
die "Pas encore implémenté" #XXX
|
die "Pas encore implémenté" #XXX
|
||||||
;;
|
;;
|
||||||
build)
|
build)
|
||||||
|
if [ -n "$clean_update" ]; then
|
||||||
|
edebug "clean"
|
||||||
|
_clean_git_clean -f || die
|
||||||
|
|
||||||
|
edebug "update"
|
||||||
|
git pull || die
|
||||||
|
|
||||||
|
edebug "sync"
|
||||||
|
[ -n "$build" ] && sync_src=1
|
||||||
|
fi
|
||||||
|
|
||||||
default checkout checkout="$update_src"
|
default checkout checkout="$update_src"
|
||||||
default copy copy="$sync_src"
|
default copy copy="$sync_src"
|
||||||
default build build="$build" ${no_cache:+no-cache} ${pull_image:+pull} ${push_image:+push}
|
default build build="$build" ${no_cache:+no-cache} ${pull_image:+pull} ${push_image:+push}
|
||||||
|
@ -2870,7 +2894,7 @@ function _build_after() {
|
||||||
## clean
|
## clean
|
||||||
|
|
||||||
function _clean_git_clean() {
|
function _clean_git_clean() {
|
||||||
LANG=C git clean -d $opt "$@" |
|
LANG=C git clean -d $clean_opt "$@" |
|
||||||
grep -vE '^(Would skip|Skipping) ' |
|
grep -vE '^(Would skip|Skipping) ' |
|
||||||
sed -r 's/^Would remove //'
|
sed -r 's/^Would remove //'
|
||||||
}
|
}
|
||||||
|
@ -2882,16 +2906,16 @@ function _clean_git_status() {
|
||||||
|
|
||||||
function clean_action() {
|
function clean_action() {
|
||||||
eval "$SHARED_LOCALS1"
|
eval "$SHARED_LOCALS1"
|
||||||
local opt=-X all=
|
local clean_opt=-X all=
|
||||||
local -a args; args=(
|
local -a args; args=(
|
||||||
"${SHARED_ARGS1[@]}"
|
"${SHARED_ARGS1[@]}"
|
||||||
-X,--ignored opt=-X
|
-X,--ignored clean_opt=-X
|
||||||
-x,--untracked opt=-x
|
-x,--untracked clean_opt=-x
|
||||||
-a,--all all=1
|
-a,--all all=1
|
||||||
)
|
)
|
||||||
parse_args "$@"; set -- "${args[@]}"
|
parse_args "$@"; set -- "${args[@]}"
|
||||||
|
|
||||||
[ -n "$all" ] && opt=-x
|
[ -n "$all" ] && clean_opt=-x
|
||||||
|
|
||||||
edebug "clean_action"
|
edebug "clean_action"
|
||||||
ensure_projdir
|
ensure_projdir
|
||||||
|
|
Loading…
Reference in New Issue