pff: ajout AUTO_CMDS et NEW_CMDS, supprimer MKDIRS
This commit is contained in:
parent
fe839f4c7b
commit
111463a861
25
pff
25
pff
|
@ -26,10 +26,12 @@ PFFCONFVARS=(
|
|||
"DISTTYPE=auto//Type de distribution upstream: full ou patch"
|
||||
-a
|
||||
"ORIGEXTS=//Extensions origines"
|
||||
"AUTO_CMDS//Commandes à lancer lors des vérifications automatiques"
|
||||
"NEW_CMDS//Commandes à lancer avant l'action new"
|
||||
"PROTECTS=//Fichiers locaux à protéger lors de l'intégration au format rsync e.g /dir/, /file, etc."
|
||||
"MKDIRS//Répertoires qui doivent toujours exister"
|
||||
"FILTERS//Filtres appliqués aux fichiers lors de l'intégration, de la forme 'filespec:filter'. Cf la doc pour le détail du format"
|
||||
"NOMERGES=//Fichiers qu'il ne faut pas chercher à fusionner. Cf la doc pour le détail du format"
|
||||
-s
|
||||
"NOUPSTREAM=//Indiquer qu'il n'y a pas de fichiers upstream. pff est uniquement utilisé pour gérer des profils de fichiers"
|
||||
)
|
||||
|
||||
|
@ -605,7 +607,7 @@ function select_profile() {
|
|||
function autoinit() {
|
||||
# vérifications automatiques: créer les répertoires de base nécessaire au
|
||||
# fonctionnement de pff dans le projet pff $1
|
||||
local pffdir="$1" profile mkdir
|
||||
local pffdir="$1" profile
|
||||
[ -d "$pffdir/pff/Current" ] || mkdir -p "$pffdir/pff/Current"
|
||||
[ -d "$pffdir/pff/Base" ] || mkdir -p "$pffdir/pff/Base"
|
||||
# tous les fichiers du profil Base doivent être en lecture seule, sauf si
|
||||
|
@ -613,10 +615,14 @@ function autoinit() {
|
|||
if [ -z "$NOUPSTREAM" ]; then
|
||||
find "$pffdir/pff/Base" -type f -perm /222 -exec chmod a-w '{}' +
|
||||
fi
|
||||
# Créer les répertoires de MKDIRS
|
||||
for mkdir in "${MKDIRS[@]}"; do
|
||||
mkdir -p "$pffdir/$mkdir"
|
||||
# Lancer les commandes AUTO_CMDS
|
||||
local cwd cmd
|
||||
cwd="$(pwd)"
|
||||
cd "$pffdir"
|
||||
for cmd in "${AUTO_CMDS[@]}"; do
|
||||
eval "$cmd"
|
||||
done
|
||||
cd "$cwd"
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@ -859,6 +865,15 @@ function new_cmd() {
|
|||
new__prepare_archive srcdir version "$archive" "$version" "$unwrap"
|
||||
[ "$DISTTYPE" == full ] && full=1
|
||||
|
||||
## Lancer les commandes
|
||||
local cwd cmd
|
||||
cwd="$(pwd)"
|
||||
cd "$pffdir"
|
||||
for cmd in "${NEW_CMDS[@]}"; do
|
||||
eval "$cmd"
|
||||
done
|
||||
cd "$cwd"
|
||||
|
||||
## lister les fichiers dans la source et la destination
|
||||
local workdir
|
||||
ac_set_tmpdir workdir
|
||||
|
|
Loading…
Reference in New Issue