cx-updatedev: ajout des mises à jour récursives
This commit is contained in:
parent
4c58b127af
commit
aa4eb4a481
36
cx-updatedev
36
cx-updatedev
|
@ -27,7 +27,10 @@ OPTIONS
|
||||||
Supprimer les répertoires et les faire recréer par composer i,
|
Supprimer les répertoires et les faire recréer par composer i,
|
||||||
uniquement s'il s'agit de liens
|
uniquement s'il s'agit de liens
|
||||||
-u, --update
|
-u, --update
|
||||||
Supprimer les répertoires et les faire recréer par composer u"
|
Supprimer les répertoires et les faire recréer par composer u
|
||||||
|
--ru, --recursive-update
|
||||||
|
Mettre à jour de façon récursive tous les projets dépendants.
|
||||||
|
NB: les modifications seront automatiquement enregistrées dans git."
|
||||||
}
|
}
|
||||||
|
|
||||||
fake=
|
fake=
|
||||||
|
@ -35,6 +38,7 @@ verbose=1
|
||||||
action=
|
action=
|
||||||
args=(
|
args=(
|
||||||
--help '$exit_with display_help'
|
--help '$exit_with display_help'
|
||||||
|
-d:,--project-dir: projdir=
|
||||||
-n,--fake fake=1
|
-n,--fake fake=1
|
||||||
-q,--quiet verbose=
|
-q,--quiet verbose=
|
||||||
-l,--link action=link
|
-l,--link action=link
|
||||||
|
@ -42,9 +46,16 @@ args=(
|
||||||
-i,--install action=install
|
-i,--install action=install
|
||||||
-j,--reinstall-link action=reinstall-link
|
-j,--reinstall-link action=reinstall-link
|
||||||
-u,--update action=update
|
-u,--update action=update
|
||||||
|
--ru,--recursive-update action=recursive-update
|
||||||
)
|
)
|
||||||
parse_args "$@"; set -- "${args[@]}"
|
parse_args "$@"; set -- "${args[@]}"
|
||||||
|
|
||||||
|
if [ -d "$projdir" ]; then
|
||||||
|
cd "$projdir"
|
||||||
|
elif [ -e "$projdir" ]; then
|
||||||
|
die "$projdir: répertoire introuvable"
|
||||||
|
fi
|
||||||
|
|
||||||
found=
|
found=
|
||||||
first=1
|
first=1
|
||||||
while true; do
|
while true; do
|
||||||
|
@ -63,10 +74,14 @@ if [ -z "$first" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case "$action" in
|
case "$action" in
|
||||||
install|update)
|
install|update|reinstall-link|recursive-update)
|
||||||
[ -x ./composer.phar ] || die "Impossible de trouver composer.phar"
|
[ -x ./composer.phar ] || die "Impossible de trouver composer.phar"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
if [ "$action" == recursive-update ]; then
|
||||||
|
# avec recursive-update, tous les modules doivent être considérés
|
||||||
|
set --
|
||||||
|
fi
|
||||||
|
|
||||||
###
|
###
|
||||||
|
|
||||||
|
@ -91,6 +106,7 @@ function update_with_rsync() {
|
||||||
}
|
}
|
||||||
|
|
||||||
deps=()
|
deps=()
|
||||||
|
modules=()
|
||||||
for m in "$@"; do
|
for m in "$@"; do
|
||||||
m="${m#vendor/}" # pour permettre de spécifier le chemin directement
|
m="${m#vendor/}" # pour permettre de spécifier le chemin directement
|
||||||
m="${m//\//-}"
|
m="${m//\//-}"
|
||||||
|
@ -98,6 +114,7 @@ for m in "$@"; do
|
||||||
ur-*|lib-*) ;;
|
ur-*|lib-*) ;;
|
||||||
*) m="ur-$m";;
|
*) m="ur-$m";;
|
||||||
esac
|
esac
|
||||||
|
modules+=("$m")
|
||||||
p="${m//-/\/}"
|
p="${m//-/\/}"
|
||||||
|
|
||||||
check_module
|
check_module
|
||||||
|
@ -143,7 +160,7 @@ for m in "$@"; do
|
||||||
array_add deps "$p"
|
array_add deps "$p"
|
||||||
eend
|
eend
|
||||||
;;
|
;;
|
||||||
reinstall-link)
|
reinstall-link|recursive-update)
|
||||||
# Supprimer les liens uniquement...
|
# Supprimer les liens uniquement...
|
||||||
etitle "$m"
|
etitle "$m"
|
||||||
if [ -L "vendor/$p" ]; then
|
if [ -L "vendor/$p" ]; then
|
||||||
|
@ -187,4 +204,17 @@ update)
|
||||||
./composer.phar u "${deps[@]}"
|
./composer.phar u "${deps[@]}"
|
||||||
eend
|
eend
|
||||||
;;
|
;;
|
||||||
|
recursive-update)
|
||||||
|
# mettre à jour les dépendances de façon récursives
|
||||||
|
for m in "${modules[@]}"; do
|
||||||
|
etitle "Mise à jour récursive: $m"
|
||||||
|
"$script" -d "../$m" --ru
|
||||||
|
eend
|
||||||
|
done
|
||||||
|
estep "Maj deps"
|
||||||
|
./composer.phar u
|
||||||
|
|
||||||
|
estep "Enregistrement dans git"
|
||||||
|
pci -A "maj deps"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
Loading…
Reference in New Issue