dk: possibilité de spécifier les options de rsync
This commit is contained in:
parent
10177a16de
commit
c147a0cef3
29
dk
29
dk
|
@ -273,8 +273,11 @@ OPTIONS build
|
||||||
PROFILE_APPS=() # ou... spécifique au profil 'PROFILE'
|
PROFILE_APPS=() # ou... spécifique au profil 'PROFILE'
|
||||||
app_URL= # url du dépôt
|
app_URL= # url du dépôt
|
||||||
app_DEVEL_SRCDIR= # répertoire source du dépôt en mode devel
|
app_DEVEL_SRCDIR= # répertoire source du dépôt en mode devel
|
||||||
app_SRC= # répertoire/fichier source (si URL pas renseigné)
|
app_SRC= # répertoire/fichier source (si URL='')
|
||||||
app_DEST= # répertoire dans lequel faire le checkout
|
app_DEST= # répertoire dans lequel faire le checkout
|
||||||
|
# ou destination si synchro avec app_SRC
|
||||||
|
app_RSYNC_OPTS= # options de rsync si synchro (avec app_SRC
|
||||||
|
# ou app_DEVEL_SRCDIR)
|
||||||
app_PROFILE_ORIGIN= # origine spécifique au profil 'PROFILE'
|
app_PROFILE_ORIGIN= # origine spécifique au profil 'PROFILE'
|
||||||
app_ORIGIN= # ou... origine par défaut de la branche
|
app_ORIGIN= # ou... origine par défaut de la branche
|
||||||
app_PROFILE_BRANCH= # branche spécifique au profil 'PROFILE'
|
app_PROFILE_BRANCH= # branche spécifique au profil 'PROFILE'
|
||||||
|
@ -324,8 +327,11 @@ VARIABLES de update-apps.conf
|
||||||
projet. Les variables suivantes sont disponibles:
|
projet. Les variables suivantes sont disponibles:
|
||||||
URL= # url du dépôt
|
URL= # url du dépôt
|
||||||
DEVEL_SRCDIR= # répertoire source en mode devel
|
DEVEL_SRCDIR= # répertoire source en mode devel
|
||||||
SRC= # répertoire/fichier source (si URL pas renseigné)
|
SRC= # répertoire/fichier source (si URL='')
|
||||||
DEST= # répertoire dans lequel faire le checkout
|
DEST= # répertoire dans lequel faire le checkout
|
||||||
|
# ou destination si URL=''
|
||||||
|
RSYNC_OPTS= # options de rsync si synchro avec SRC ou
|
||||||
|
# DEVEL_SRCDIR
|
||||||
ORIGIN= # origine de la branche
|
ORIGIN= # origine de la branche
|
||||||
BRANCH= # branche sélectionnée dans le dépôt
|
BRANCH= # branche sélectionnée dans le dépôt
|
||||||
TYPE= # type de projet (composer|none)
|
TYPE= # type de projet (composer|none)
|
||||||
|
@ -699,7 +705,7 @@ function build_update_apps() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
etitle "Mise à jour des dépendances"
|
etitle "Mise à jour des dépendances"
|
||||||
local app var URL SRC DEVEL_SRCDIR DEST ORIGIN BRANCH TYPE after_update after_updates composer_action
|
local app var URL SRC DEVEL_SRCDIR DEST have_RSYNC_OPTS RSYNC_OPTS ORIGIN BRANCH TYPE after_update after_updates composer_action
|
||||||
for app in "${APPS[@]}"; do
|
for app in "${APPS[@]}"; do
|
||||||
etitle "$app"
|
etitle "$app"
|
||||||
|
|
||||||
|
@ -720,6 +726,14 @@ function build_update_apps() {
|
||||||
DEST="${var}_DEST"; DEST="${!DEST}"
|
DEST="${var}_DEST"; DEST="${!DEST}"
|
||||||
[ -n "$DEST" ] || DEST="$app/b"
|
[ -n "$DEST" ] || DEST="$app/b"
|
||||||
|
|
||||||
|
if is_defined "${var}_RSYNC_OPTS"; then
|
||||||
|
have_RSYNC_OPTS=1
|
||||||
|
RSYNC_OPTS="${var}_RSYNC_OPTS[@]"; RSYNC_OPTS=("${!RSYNC_OPTS}")
|
||||||
|
else
|
||||||
|
have_RSYNC_OPTS=
|
||||||
|
RSYNC_OPTS=()
|
||||||
|
fi
|
||||||
|
|
||||||
ORIGIN="${var}_${PROFILE}_ORIGIN"; ORIGIN="${!ORIGIN}"
|
ORIGIN="${var}_${PROFILE}_ORIGIN"; ORIGIN="${!ORIGIN}"
|
||||||
[ -n "$ORIGIN" ] || { ORIGIN="${var}_ORIGIN"; ORIGIN="${!ORIGIN}"; }
|
[ -n "$ORIGIN" ] || { ORIGIN="${var}_ORIGIN"; ORIGIN="${!ORIGIN}"; }
|
||||||
[ -n "$ORIGIN" ] || ORIGIN="$DEFAULT_ORIGIN"
|
[ -n "$ORIGIN" ] || ORIGIN="$DEFAULT_ORIGIN"
|
||||||
|
@ -736,7 +750,8 @@ function build_update_apps() {
|
||||||
DEST="$DEST/$app"
|
DEST="$DEST/$app"
|
||||||
|
|
||||||
# synchronisation en mode devel
|
# synchronisation en mode devel
|
||||||
local -a rsync_opts; rsync_opts=(-a --delete --exclude .git/ --delete-excluded)
|
[ -n "$have_RSYNC_OPTS" ] || RSYNC_OPTS=(--delete --delete-excluded)
|
||||||
|
local -a rsync_opts; rsync_opts=(-a --exclude .git/ "${RSYNC_OPTS[@]}")
|
||||||
estep "Synchro $DEVEL_SRCDIR --> $DEST"
|
estep "Synchro $DEVEL_SRCDIR --> $DEST"
|
||||||
rsync "${rsync_opts[@]}" "$DEVEL_SRCDIR/" "$DEST" || { eend; return 1; }
|
rsync "${rsync_opts[@]}" "$DEVEL_SRCDIR/" "$DEST" || { eend; return 1; }
|
||||||
|
|
||||||
|
@ -789,13 +804,15 @@ function build_update_apps() {
|
||||||
|
|
||||||
elif [ -n "$SRC" ]; then
|
elif [ -n "$SRC" ]; then
|
||||||
if [ -d "$SRC" ]; then
|
if [ -d "$SRC" ]; then
|
||||||
local -a rsync_opts; rsync_opts=(-a --delete --exclude .git/ --delete-excluded)
|
[ -n "$have_RSYNC_OPTS" ] || RSYNC_OPTS=(--delete --delete-excluded)
|
||||||
|
local -a rsync_opts; rsync_opts=(-a --exclude .git/ "${RSYNC_OPTS[@]}")
|
||||||
SRC="${SRC%/}/"
|
SRC="${SRC%/}/"
|
||||||
DEST="${DEST%/}/"
|
DEST="${DEST%/}/"
|
||||||
estep "Synchro $SRC --> $DEST"
|
estep "Synchro $SRC --> $DEST"
|
||||||
rsync "${rsync_opts[@]}" "$SRC" "$DEST" || { eend; return 1; }
|
rsync "${rsync_opts[@]}" "$SRC" "$DEST" || { eend; return 1; }
|
||||||
elif [ -f "$SRC" ]; then
|
elif [ -f "$SRC" ]; then
|
||||||
local -a rsync_opts; rsync_opts=(-a)
|
[ -n "$have_RSYNC_OPTS" ] || RSYNC_OPTS=()
|
||||||
|
local -a rsync_opts; rsync_opts=(-a "${RSYNC_OPTS[@]}")
|
||||||
if [ "${DEST%/}" != "$DEST" -o -d "$DEST" ]; then
|
if [ "${DEST%/}" != "$DEST" -o -d "$DEST" ]; then
|
||||||
DEST="${DEST%/}/"
|
DEST="${DEST%/}/"
|
||||||
estep "Synchro $SRC --> $DEST"
|
estep "Synchro $SRC --> $DEST"
|
||||||
|
|
Loading…
Reference in New Issue