Compare commits
No commits in common. "master" and "9.13.0" have entirely different histories.
150
CHANGES.md
150
CHANGES.md
@ -1,153 +1,3 @@
|
|||||||
## Version 11.4.0 du 27/02/2025-08:44
|
|
||||||
|
|
||||||
* `7cc9629` modifs.mineures sans commentaires
|
|
||||||
* `df3986e` maj chemins registres
|
|
||||||
* `e674b31` améliorer la prise en charge de dkbuild imbriqué
|
|
||||||
* `7611760` paramètres par défaut pour dkbuild
|
|
||||||
* `056ae57` maj doc dkbuild -c
|
|
||||||
* `6f9ab14` support java 21
|
|
||||||
* `c9eaf7d` maj dkbuild.env par défaut
|
|
||||||
* `693f447` maj fichier dkbuild.env
|
|
||||||
* `6e23aae` maj config par défaut
|
|
||||||
|
|
||||||
## Version 11.3.1 du 31/12/2024-15:05
|
|
||||||
|
|
||||||
* `b9f264f` bug avec dkbuild -e
|
|
||||||
* `737179b` modifs.mineures sans commentaires
|
|
||||||
* `2687e72` support minimal runphp
|
|
||||||
|
|
||||||
## Version 11.3.0 du 24/09/2024-16:02
|
|
||||||
|
|
||||||
* `625d5f1` bug mineur
|
|
||||||
* `e308202` dkbuild: améliorer from_glob()
|
|
||||||
* `5c03184` lgrep, lless: modifier la doc pour ne parler que d'un fichier
|
|
||||||
|
|
||||||
## Version 11.2.0 du 21/06/2024-20:34
|
|
||||||
|
|
||||||
* `21042e4` bug
|
|
||||||
* `e4176df` reginc: possibilité de renommer des fichiers
|
|
||||||
* `1787aa2` bug
|
|
||||||
* `d1f77aa` dkbuild: support dist none et tag LATEST
|
|
||||||
* `c2cfd77` bug
|
|
||||||
* `e7745c2` dk: support --plain-output
|
|
||||||
* `ce8f541` dkbuild: -g pour --profile
|
|
||||||
* `30594aa` maj distributions
|
|
||||||
* `2df175e` dkbuild: cosmetic
|
|
||||||
* `fbb05f8` support des versions AMUE
|
|
||||||
|
|
||||||
## Version 11.1.0 du 01/02/2024-20:59
|
|
||||||
|
|
||||||
* `8570d12` pff: les répertoires liés peuvent contenir des fichiers
|
|
||||||
* `5d6c6b4` synchroniser pff et nulib/pff
|
|
||||||
* `90bda71` pff: support des répertoires liés
|
|
||||||
* `7d7b88a` autoriser les feature branches qui commencent par wip/
|
|
||||||
* `5cc1826` dk et dkbuild: support .composer.yaml et setup_image
|
|
||||||
* `0bf0f48` dk: support ~/.dkbuild.env
|
|
||||||
* `b818e11` dkbuild: ajout de --plain
|
|
||||||
* `ad14de3` dkbuild: configuration profil prod par défaut
|
|
||||||
* `54a5b54` Sscreen: support des cas où screen n'est pas dans le PATH
|
|
||||||
* `5a06851` dkbuild: support profil par défaut
|
|
||||||
* `a855b04` dkbuild: les versions de profil sont ordonnées comme les versions de distribution
|
|
||||||
* `e531553` dkbuild: sans --all-profiles, ne build que dans le profil par défaut
|
|
||||||
* `db1467b` bug
|
|
||||||
* `3123d8e` dkbuild: mappings par défaut
|
|
||||||
* `d9b1485` charnière entre java 8 et java 11
|
|
||||||
* `744a3fa` dkbuild: indiquer si la version de Java demandée n'est pas trouvée
|
|
||||||
* `2803868` dkbuild: marquer plus d'action comme étant du build
|
|
||||||
* `4f7bc3f` dkbuild: bug avec -u seul
|
|
||||||
* `8cdc3cb` modifs.mineures sans commentaires
|
|
||||||
|
|
||||||
## Version 11.0.0 du 05/09/2023-14:29
|
|
||||||
|
|
||||||
* `ddfbc00` maj des images par défaut dk et dkbuild
|
|
||||||
* `e33f2a5` ajout registry privé
|
|
||||||
* `f245e17` image par défaut en prod
|
|
||||||
* `efe31b8` support java17
|
|
||||||
* `5cb4112` dkbuild: bug profil unitaire
|
|
||||||
* `f424f41` dkbuild: -u n'implique plus -b
|
|
||||||
* `e5a1473` dkbuild: implémenter -u
|
|
||||||
|
|
||||||
## Version 10.0.0 du 12/08/2023-21:06
|
|
||||||
|
|
||||||
* `bfdf9b5` support système sans python2
|
|
||||||
* `108215f` maj registry pour devel
|
|
||||||
* `6ddb870` dkbuild: support profil nu
|
|
||||||
* `c0b130f` dkbuild: support profil jclain
|
|
||||||
* `ae20e49` modifs.mineures sans commentaires
|
|
||||||
* `2e5101d` ajout de lgrep
|
|
||||||
* `cff4833` ajout de ldiff
|
|
||||||
* `9c6e7a8` renommer less1 en lless
|
|
||||||
* `e9d52d8` ajout de less1 pour lire des fichiers latin1
|
|
||||||
* `d3d86c6` cssh: forcer la désactivation du verrouillage de la session
|
|
||||||
* `b761cb6` Sscreen: désactiver verrouillage de la session
|
|
||||||
|
|
||||||
## Version 9.16.0 du 15/06/2023-15:28
|
|
||||||
|
|
||||||
* `f36be0d` uscrontab: s'assurer que USER est défini
|
|
||||||
* `63674ef` cosmetic
|
|
||||||
* `ee80091` cosmetic
|
|
||||||
|
|
||||||
## Version 9.15.0 du 14/06/2023-15:41
|
|
||||||
|
|
||||||
* `2a02307` update-nutools: prendre le dépôt public par défaut
|
|
||||||
* `27a82e4` ajouter les numéros de version des debian et ubuntu
|
|
||||||
* `92157de` regins: implémentation initiale
|
|
||||||
* `efe9fbb` dk: ajout de XX pour prune-cache
|
|
||||||
* `dc94b5c` dkbuild: bug avec les chemins
|
|
||||||
* `5e87665` dk: X supprimer aussi le cache
|
|
||||||
* `9c1a8e6` dk: composer.phar est cherché dans sbin/ aussi
|
|
||||||
* `81cefdc` regcp: activer support regexp-extended
|
|
||||||
* `c5796d6` modifs.mineures sans commentaires
|
|
||||||
* `6919352` maj du message de commit par défaut
|
|
||||||
* `7ba7d1c` pcxone: correction de l'url généré des dépôts git
|
|
||||||
* `9d75943` repoctl: correction de l'url généré des dépôts git
|
|
||||||
|
|
||||||
## Version 9.14.0 du 15/03/2023-17:48
|
|
||||||
|
|
||||||
* `3ecb127` support docker compose v2
|
|
||||||
* `432ab6f` dkbuild: composer et mvn ne sont lancés qu'en mode build
|
|
||||||
* `01c14bb` regcp: ajout de l'option -n
|
|
||||||
* `0913c2e` upassword: rendre configurable le nombre de blocs
|
|
||||||
* `61433fb` dkbuild: revert image par défaut pour javabuilder
|
|
||||||
* `e4e0a55` pff: support mode vcs offline
|
|
||||||
* `e08c66b` pff: support des archives sh de l'amue
|
|
||||||
* `0d11932` dkbuild: corriger l'image javabuilder par défaut
|
|
||||||
* `3ead1f3` dkbuild: utiliser automatiquement l'image si nécessaire pour composer ou maven
|
|
||||||
* `93de256` ajout de regcp et regmv
|
|
||||||
* `5e33a36` rendre cohérent les en-têtes des scripts
|
|
||||||
* `9e13515` ajout exemple .dkbuild.env
|
|
||||||
* `c9e8110` dkbuild: corriger calcul des tags
|
|
||||||
* `c671cb3` dkbuild: fin support tag & last version
|
|
||||||
* `1a764f1` dkbuild: début support tag & last version
|
|
||||||
* `027f9b8` dkbuild: ajout de from_glob()
|
|
||||||
* `2293239` maj doc
|
|
||||||
* `9fc07bb` dkbuild: ajout build add-tags=
|
|
||||||
* `7b15f94` dkbuild: support préfixe et suffixe pour version
|
|
||||||
* `f2cfaee` dkbuild: calculer extract automatiquement
|
|
||||||
* `c36b8fb` dkbuild: corriger le support des paramètres sans argument
|
|
||||||
* `68a42d0` dkbuild: maj templates
|
|
||||||
* `306e77f` dkbuild: calcul de la version à partir d'un fichier ou d'un chemin
|
|
||||||
* `b006bb4` Maj des fichiers
|
|
||||||
* `6963d41` uproject: push -f force le push
|
|
||||||
* `9665d5a` cx-conndev: maj doc
|
|
||||||
* `137dfa9` repoctl, uproject: ne plus enlever le suffixe .git
|
|
||||||
* `440d2aa` upassword: maj nombre de blocs par défaut
|
|
||||||
* `f4047a3` ipaddr: forcer la sortie couleur
|
|
||||||
* `af1bdd3` Maj des fichiers
|
|
||||||
* `85e77e4` dkbuild: corriger le calcul de la dernière version d'une distribution
|
|
||||||
* `a56ec0e` dkbuild: améliorer clean
|
|
||||||
* `d6e78b9` dkbuild: maj messages debug
|
|
||||||
* `1699cc5` dkbuild: les fichiers d'environnement par défaut ont l'extension .env
|
|
||||||
* `2ae8406` maj doc dkbuild
|
|
||||||
* `1db7d08` maj doc cx-shelldev
|
|
||||||
* `aba08c2` maj update-nutools
|
|
||||||
* `e83b6d1` possibilité de choisir l'adresse IP
|
|
||||||
* `af9096d` ajouter le template fichier vide
|
|
||||||
* `89f0c09` typo
|
|
||||||
* `fb434c2` bug parse_date
|
|
||||||
* `f7ab14f` dkbuild: implémentation initiale
|
|
||||||
* `f46812f` cx-conndev: maj doc
|
|
||||||
|
|
||||||
## Version 9.13.0 du 07/02/2022-22:20
|
## Version 9.13.0 du 07/02/2022-22:20
|
||||||
|
|
||||||
* `06686d9` pff: support nettoyage wsdl/
|
* `06686d9` pff: support nettoyage wsdl/
|
||||||
|
4
EnsureVM
4
EnsureVM
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
urequire service
|
urequire DEFAULTS service
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: s'assurer que les services sont lancés pour un type de virtualisation
|
uecho "$scriptname: s'assurer que les services sont lancés pour un type de virtualisation
|
||||||
|
4
SKvm
4
SKvm
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
urequire virsh
|
urequire DEFAULTS virsh
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: lancer une machine virtuelle kvm
|
uecho "$scriptname: lancer une machine virtuelle kvm
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: lancer une machine virtuelle VirtualBox
|
uecho "$scriptname: lancer une machine virtuelle VirtualBox
|
||||||
|
21
Sscreen
21
Sscreen
@ -1,9 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
|
|
||||||
# désactiver le verrouillage
|
|
||||||
export LOCKPRG=/bin/true
|
|
||||||
|
|
||||||
COULEUR_NORMALE=$'\e[0m'
|
COULEUR_NORMALE=$'\e[0m'
|
||||||
COULEUR_ROUGE=$'\e[31;1m'
|
COULEUR_ROUGE=$'\e[31;1m'
|
||||||
COULEUR_VERTE=$'\e[32;1m'
|
COULEUR_VERTE=$'\e[32;1m'
|
||||||
@ -18,25 +15,15 @@ function __ask() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function __auto_screen() {
|
function __auto_screen() {
|
||||||
# Si on est déjà dans screen, ne rien faire
|
|
||||||
[ -z "$STY" ] || return
|
|
||||||
|
|
||||||
# Si screen pas installé, ne rien faire
|
# Si screen pas installé, ne rien faire
|
||||||
local dir screen="$(which screen 2>/dev/null)"
|
if [ -z "$(which screen 2>/dev/null)" ]; then
|
||||||
if [ -z "$screen" ]; then
|
|
||||||
for dir in /usr/local/bin /opt/bin /usr/bin /bin; do
|
|
||||||
if [ -x "$dir/screen" ]; then
|
|
||||||
screen="$dir/screen"
|
|
||||||
PATH="$PATH:$dir"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
if [ -z "$screen" ]; then
|
|
||||||
echo "${COULEUR_JAUNE}WARNING${COULEUR_NORMALE} screen introuvable. une session bash classique sera lancée"
|
echo "${COULEUR_JAUNE}WARNING${COULEUR_NORMALE} screen introuvable. une session bash classique sera lancée"
|
||||||
exec /bin/bash -l
|
exec /bin/bash -l
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Si on est déjà dans screen, ne rien faire
|
||||||
|
[ -z "$STY" ] || return
|
||||||
|
|
||||||
# corriger TERM pour les vieilles versions de Linux
|
# corriger TERM pour les vieilles versions de Linux
|
||||||
case "$TERM" in
|
case "$TERM" in
|
||||||
xterm*) TERM=xterm;;
|
xterm*) TERM=xterm;;
|
||||||
|
22
TODO.md
22
TODO.md
@ -1,25 +1,3 @@
|
|||||||
# TODO
|
# TODO
|
||||||
|
|
||||||
dkbuild
|
|
||||||
* setversion peut prendre la version depuis la branche git d'un dépôt
|
|
||||||
* un argument permettrait de spécifier comment la version est calculée à
|
|
||||||
partir du dépôt
|
|
||||||
* si cela a du sens, une commande setlatest qui permet de désigner quelle
|
|
||||||
distribution/version est la dernière
|
|
||||||
|
|
||||||
|
|
||||||
git push
|
|
||||||
* ajouter le support pour le mode DEBUG
|
|
||||||
~~~
|
|
||||||
export GIT_TRACE=1
|
|
||||||
export GIT_TRANSFER_TRACE=1
|
|
||||||
export GIT_CURL_VERBOSE=1
|
|
||||||
~~~
|
|
||||||
* ajouter le support http basique pour git lfs en cas de problème pour upload de certains fichiers
|
|
||||||
~~~
|
|
||||||
git config --add lfs.basictransfersonly true
|
|
||||||
~~~
|
|
||||||
ou le mettre dans un fichier .lfsconfig
|
|
||||||
cf https://github.com/git-lfs/git-lfs/blob/main/docs/man/git-lfs-config.adoc
|
|
||||||
|
|
||||||
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary
|
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary
|
@ -1 +1 @@
|
|||||||
11.4.0
|
9.13.0
|
||||||
|
2
_root
2
_root
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/ulib" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
urequire base
|
urequire base
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
urequire template apache.tools
|
urequire DEFAULTS template apache.tools
|
||||||
apacheconfig_initvars
|
apacheconfig_initvars
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
|
3
authftp
3
authftp
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Se connecter sur un site FTP authentifié
|
uecho "$scriptname: Se connecter sur un site FTP authentifié
|
||||||
|
3
caturl
3
caturl
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Afficher une url
|
uecho "$scriptname: Afficher une url
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: créer un utilisateur sudoer et lui installer une clé publique ssh
|
uecho "$scriptname: créer un utilisateur sudoer et lui installer une clé publique ssh
|
||||||
|
8
cssh
8
cssh
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Faire une connexion ssh en lançant automatiquement un screen sur l'hôte distant
|
uecho "$scriptname: Faire une connexion ssh en lançant automatiquement un screen sur l'hôte distant
|
||||||
@ -23,14 +24,13 @@ eval "$vars"
|
|||||||
[ "${#hosts[*]}" -gt 0 ] || die "Vous devez spécifier l'hôte sur lequel se connecter"
|
[ "${#hosts[*]}" -gt 0 ] || die "Vous devez spécifier l'hôte sur lequel se connecter"
|
||||||
|
|
||||||
[ ${#args[*]} -gt 0 ] && cmd="$(qvals "${args[@]}"); " || cmd=
|
[ ${#args[*]} -gt 0 ] && cmd="$(qvals "${args[@]}"); " || cmd=
|
||||||
cmd="$cmd
|
cmd="$cmd$(<"$scriptdir/Sscreen")"
|
||||||
export LOCKPRG=/bin/true; $(<"$scriptdir/Sscreen")"
|
|
||||||
cmd="'${cmd//\'/\'\\\'\'}'"
|
cmd="'${cmd//\'/\'\\\'\'}'"
|
||||||
|
|
||||||
for host in "${hosts[@]}"; do
|
for host in "${hosts[@]}"; do
|
||||||
"$ssh" \
|
"$ssh" \
|
||||||
"${options[@]}" -qt "$host" -- \
|
"${options[@]}" -qt "$host" -- \
|
||||||
"export LOCKPRG=/bin/true; [ -x /usr/local/nutools/Sscreen ] && exec /usr/local/nutools/Sscreen $(qvals "${args[@]}") || exit 123"
|
"[ -x /usr/local/nutools/Sscreen ] && exec /usr/local/nutools/Sscreen $(qvals "${args[@]}") || exit 123"
|
||||||
if [ $? -eq 123 ]; then
|
if [ $? -eq 123 ]; then
|
||||||
# pas de Sscreen en face, le faire à la main
|
# pas de Sscreen en face, le faire à la main
|
||||||
${exec:+exec} \
|
${exec:+exec} \
|
||||||
|
37
cx-conndev
37
cx-conndev
@ -1,26 +1,18 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
[ -n "$COMPOSE_V1" ] && DOCKER_COMPOSE=(docker-compose) || DOCKER_COMPOSE=(docker compose)
|
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: se connecter à la base MySQL
|
uecho "$scriptname: se connecter à la base MySQL
|
||||||
|
|
||||||
USAGE
|
USAGE
|
||||||
$scriptname [DATABASE]
|
$scriptname [DATABASE]
|
||||||
$scriptname -d [-uUSER [-pPASSWORD]] DATABASES... >backup.sql
|
$scriptname -c|-d [-uUSER [-pPASSWORD]] ...
|
||||||
$scriptname -c [-uUSER [-pPASSWORD]] <backup.sql
|
|
||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
--compose-v1
|
|
||||||
Forcer l'utilisation de docker-compose v1
|
|
||||||
-h, -s, --service SERVICE
|
-h, -s, --service SERVICE
|
||||||
Spécifier le nom du service. La valeur par défaut est db
|
Spécifier le nom du service. La valeur par défaut est db
|
||||||
-i, --ipnum IPNUM
|
|
||||||
Si le service est dans plusieurs réseaux, sélectionner le numéro du
|
|
||||||
réseau à attaquer en commençant à 1 (la liste sera affichée si cette
|
|
||||||
option n'est pas spécifiée)
|
|
||||||
-c, --mysql-cmd
|
-c, --mysql-cmd
|
||||||
Lancer 'mysql -hSERVICE_IP' avec les arguments supplémentaires fournis
|
Lancer 'mysql -hSERVICE_IP' avec les arguments supplémentaires fournis
|
||||||
sur la ligne de commande
|
sur la ligne de commande
|
||||||
@ -36,7 +28,6 @@ OPTIONS
|
|||||||
}
|
}
|
||||||
|
|
||||||
service=db
|
service=db
|
||||||
ipnum=
|
|
||||||
mysql_cmd=
|
mysql_cmd=
|
||||||
mysqldump_cmd=
|
mysqldump_cmd=
|
||||||
klean=
|
klean=
|
||||||
@ -44,9 +35,7 @@ user=
|
|||||||
password=
|
password=
|
||||||
args=(
|
args=(
|
||||||
--help '$exit_with display_help'
|
--help '$exit_with display_help'
|
||||||
--compose-v1 '$DOCKER_COMPOSE=(docker-compose)'
|
|
||||||
-h:,-s:,--service: service=
|
-h:,-s:,--service: service=
|
||||||
-i:,--ipnum: ipnum=
|
|
||||||
-c,--mysql-cmd mysql_cmd=1
|
-c,--mysql-cmd mysql_cmd=1
|
||||||
-d,--mysqldump-cmd mysqldump_cmd=1
|
-d,--mysqldump-cmd mysqldump_cmd=1
|
||||||
-k,--klean klean=1
|
-k,--klean klean=1
|
||||||
@ -77,26 +66,12 @@ fi
|
|||||||
###
|
###
|
||||||
|
|
||||||
function die_not_found() { die "$service: service introuvable. vérifiez que le projet est actuellement up"; }
|
function die_not_found() { die "$service: service introuvable. vérifiez que le projet est actuellement up"; }
|
||||||
setx cid="${DOCKER_COMPOSE[@]}" ps -q "$service" 2>/dev/null || die_not_found
|
setx cid=docker-compose ps -q "$service" 2>/dev/null || die_not_found
|
||||||
[ -n "$cid" ] || die_not_found
|
[ -n "$cid" ] || die_not_found
|
||||||
edebug "$service id: $cid"
|
edebug "$service id: $cid"
|
||||||
|
|
||||||
function die_not_found() { die "$service: $cid: ip introuvable"; }
|
function die_not_found() { die "$service: $cid: ip introuvable"; }
|
||||||
setx ip=docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}},{{end}}' "$cid" || die_not_found
|
setx ip=docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' "$cid" || die_not_found
|
||||||
[ -n "$ip" ] || die_not_found
|
|
||||||
ipdesc="${ip%,}"
|
|
||||||
if [ -z "$ipnum" ] && [[ "$ipdesc" == *,* ]]; then
|
|
||||||
enote "Le service est accessible sur plusieurs adresses ip: $ipdesc"
|
|
||||||
enote "Pensez à spécifier l'option -i pour désigner l'adresse à utiliser (-i1 pour la première, -i2 pour la seconde, etc.)"
|
|
||||||
fi
|
|
||||||
if [ -n "$ipnum" ]; then
|
|
||||||
let ipnum=ipnum-1
|
|
||||||
while [ $ipnum -gt 0 ]; do
|
|
||||||
ip="${ip#*,}"
|
|
||||||
let ipnum=ipnum-1
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
ip="${ip%%,*}"
|
|
||||||
[ -n "$ip" ] || die_not_found
|
[ -n "$ip" ] || die_not_found
|
||||||
edebug "$service ip: $ip"
|
edebug "$service ip: $ip"
|
||||||
|
|
||||||
@ -112,7 +87,7 @@ elif [ -n "$klean" ]; then
|
|||||||
estep "wait 10sec..."
|
estep "wait 10sec..."
|
||||||
sleep 10
|
sleep 10
|
||||||
estep "start"
|
estep "start"
|
||||||
"${DOCKER_COMPOSE[@]}" start "$service"
|
docker-compose start "$service"
|
||||||
|
|
||||||
else
|
else
|
||||||
[ -f bin/conndev.php ] || die "Impossible de trouver le script compagnon conndev.php"
|
[ -f bin/conndev.php ] || die "Impossible de trouver le script compagnon conndev.php"
|
||||||
|
22
cx-shelldev
22
cx-shelldev
@ -1,33 +1,29 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
[ -n "$COMPOSE_V1" ] && DOCKER_COMPOSE=(docker-compose) || DOCKER_COMPOSE=(docker compose)
|
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: ouvrir un shell dans le container
|
uecho "$scriptname: ouvrir un shell dans le container
|
||||||
|
|
||||||
USAGE
|
USAGE
|
||||||
$scriptname [CMD...]
|
$scriptname [SHELL]
|
||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
--compose-v1
|
|
||||||
Forcer l'utilisation de docker-compose v1
|
|
||||||
-h, -s, --service SERVICE
|
-h, -s, --service SERVICE
|
||||||
Spécifier le nom du service sur lequel ouvrir le shell
|
Spécifier le nom du service sur lequel ouvrir le shell
|
||||||
-d, --db
|
-d
|
||||||
équivalent à -s db
|
équivalent à -s db
|
||||||
-w, --web
|
-w
|
||||||
équivalent à -s web (c'est la valeur par défaut)"
|
équivalent à -s web (c'est la valeur par défaut)"
|
||||||
}
|
}
|
||||||
|
|
||||||
service=web
|
service=web
|
||||||
args=(
|
args=(
|
||||||
--help '$exit_with display_help'
|
--help '$exit_with display_help'
|
||||||
--compose-v1 '$DOCKER_COMPOSE=(docker-compose)'
|
|
||||||
-h:,-s:,--service: service=
|
-h:,-s:,--service: service=
|
||||||
-d,--db service=db
|
-d service=db
|
||||||
-w,--web service=web
|
-w service=web
|
||||||
)
|
)
|
||||||
parse_args "$@"; set -- "${args[@]}"
|
parse_args "$@"; set -- "${args[@]}"
|
||||||
|
|
||||||
@ -52,9 +48,9 @@ fi
|
|||||||
|
|
||||||
###
|
###
|
||||||
|
|
||||||
setx cid="${DOCKER_COMPOSE[@]}" ps -q "$service" 2>/dev/null || die "$service: service introuvable"
|
setx cid=docker-compose ps -q "$service" 2>/dev/null || die "$service: service introuvable"
|
||||||
|
|
||||||
cmd=("$@")
|
cmd=("$@")
|
||||||
[ ${#cmd[*]} -gt 0 ] || cmd=(bash)
|
[ ${#cmd[*]} -gt 0 ] || cmd=(bash)
|
||||||
|
|
||||||
"${DOCKER_COMPOSE[@]}" exec "$service" "${cmd[@]}"
|
docker-compose exec "$service" "${cmd[@]}"
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: mettre à jour un module ur/* ou lib/* sans utiliser composer
|
uecho "$scriptname: mettre à jour un module ur/* ou lib/* sans utiliser composer
|
||||||
|
204
dk
204
dk
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/auto" || exit 1
|
||||||
urequire pff json
|
urequire pff json
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
@ -179,9 +179,7 @@ COMMANDES
|
|||||||
sélectionner que les images correspondant au filtre qui ont le tag
|
sélectionner que les images correspondant au filtre qui ont le tag
|
||||||
spécifié.
|
spécifié.
|
||||||
X|prune
|
X|prune
|
||||||
XX|prune-cache
|
Supprimer les containers et les images inutilisées
|
||||||
Supprimer les containers, les images et avec prune-cache, les objets
|
|
||||||
caches inutilisées
|
|
||||||
|
|
||||||
composer|ci|cu|cr|cs [args...]
|
composer|ci|cu|cr|cs [args...]
|
||||||
Frontend pour lancer composer à l'intérieur d'un container.
|
Frontend pour lancer composer à l'intérieur d'un container.
|
||||||
@ -222,15 +220,14 @@ COMMANDES
|
|||||||
pour lancer l'image docker. La valeur par défaut est -u, ce qui force
|
pour lancer l'image docker. La valeur par défaut est -u, ce qui force
|
||||||
l'utilisation de l'instance docker locale.
|
l'utilisation de l'instance docker locale.
|
||||||
* COMPOSER_CMD -- Chemin vers l'exécutable composer. Par défaut,
|
* COMPOSER_CMD -- Chemin vers l'exécutable composer. Par défaut,
|
||||||
utiliser composer.phar s'il existe dans le répertoire du projet ou
|
utiliser composer.phar s'il existe dans le répertoire du projet. Sinon
|
||||||
dans un sous-répertoire sbin/. Sinon utiliser /usr/bin/composer
|
utiliser /usr/bin/composer
|
||||||
* COMPOSER_SETUP -- Liste de commandes à lancer pour configurer le
|
* COMPOSER_SETUP -- Liste de commandes à lancer pour configurer le
|
||||||
container. Dans ce cas, un container ayant pour base \$COMPOSER_IMAGE
|
container. Dans ce cas, un container ayant pour base \$COMPOSER_IMAGE
|
||||||
et nommé d'après le nom du projet est préparé et les commandes
|
et nommé d'après le nom du projet est préparé et les commandes
|
||||||
spécifiées y sont lancées. Ce container est réutilisé à chaque fois.
|
spécifiées y sont lancées. Ce container est réutilisé à chaque fois.
|
||||||
Ce paramétrage est utilisé pour par exemple installer certains
|
Ce paramétrage est utilisé pour par exemple installer certains
|
||||||
packages nécessaire au projet.
|
packages nécessaire au projet.
|
||||||
* COMPOSER_SETUP_IMAGE -- nom final de l'image pour COMPOSER_SETUP
|
|
||||||
La commande 'rshell' est une extension qui lance un shell bash au lieu
|
La commande 'rshell' est une extension qui lance un shell bash au lieu
|
||||||
de lancer la commande composer, ce qui permet de faire des opérations
|
de lancer la commande composer, ce qui permet de faire des opérations
|
||||||
plus complexes si le besoin s'en fait sentir. NB: le shell est lancé
|
plus complexes si le besoin s'en fait sentir. NB: le shell est lancé
|
||||||
@ -268,7 +265,6 @@ COMMANDES
|
|||||||
spécifiées y sont lancées. Ce container est réutilisé à chaque fois.
|
spécifiées y sont lancées. Ce container est réutilisé à chaque fois.
|
||||||
Ce paramétrage est utilisé pour par exemple installer certains
|
Ce paramétrage est utilisé pour par exemple installer certains
|
||||||
packages nécessaire au projet.
|
packages nécessaire au projet.
|
||||||
* MAVEN_SETUP_IMAGE -- nom final de l'image pour MAVEN_SETUP
|
|
||||||
La commande 'rshell' est une extension qui lance un shell bash au lieu
|
La commande 'rshell' est une extension qui lance un shell bash au lieu
|
||||||
de lancer la commande mvn, ce qui permet de faire des opérations
|
de lancer la commande mvn, ce qui permet de faire des opérations
|
||||||
plus complexes si le besoin s'en fait sentir. NB: le shell est lancé
|
plus complexes si le besoin s'en fait sentir. NB: le shell est lancé
|
||||||
@ -336,8 +332,6 @@ OPTIONS build
|
|||||||
deploy, by, bpy et update impliquent --stack
|
deploy, by, bpy et update impliquent --stack
|
||||||
-j, --no-cache
|
-j, --no-cache
|
||||||
Ne pas utiliser le cache lors du build
|
Ne pas utiliser le cache lors du build
|
||||||
--plain-output
|
|
||||||
Afficher la sortie complète des containers lors du build
|
|
||||||
-U, --pull
|
-U, --pull
|
||||||
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
|
||||||
-g, --ug, --no-update-apps
|
-g, --ug, --no-update-apps
|
||||||
@ -1087,10 +1081,10 @@ function build_update_apps() {
|
|||||||
estep "Type de dépôt: $TYPE"
|
estep "Type de dépôt: $TYPE"
|
||||||
if [ "$TYPE" == composer ]; then
|
if [ "$TYPE" == composer ]; then
|
||||||
local cvname cvvalue
|
local cvname cvvalue
|
||||||
local composer_php composer_php_max composer_image composer_cmd composer_setup composer_setup_image composer_action
|
local composer_php composer_php_max composer_image composer_cmd composer_setup composer_action
|
||||||
local -a composer_vars composer_args
|
local -a composer_vars composer_args
|
||||||
|
|
||||||
for cvname in composer_php composer_php_max composer_image composer_cmd composer_setup composer_setup_image; do
|
for cvname in composer_php composer_php_max composer_image composer_cmd composer_setup; do
|
||||||
cvvalue="${var}_${PROFILE}_${cvname^^}"; cvvalue="${!cvvalue}"
|
cvvalue="${var}_${PROFILE}_${cvname^^}"; cvvalue="${!cvvalue}"
|
||||||
[ -n "$cvvalue" ] || { cvvalue="${var}_${cvname^^}"; cvvalue="${!cvvalue}"; }
|
[ -n "$cvvalue" ] || { cvvalue="${var}_${cvname^^}"; cvvalue="${!cvvalue}"; }
|
||||||
[ -n "$cvvalue" ] || { cvvalue="${PROFILE}_${cvname^^}"; cvvalue="${!cvvalue}"; }
|
[ -n "$cvvalue" ] || { cvvalue="${PROFILE}_${cvname^^}"; cvvalue="${!cvvalue}"; }
|
||||||
@ -1126,10 +1120,10 @@ function build_update_apps() {
|
|||||||
fi
|
fi
|
||||||
elif [ "$TYPE" == maven ]; then
|
elif [ "$TYPE" == maven ]; then
|
||||||
local cvname cvvalue
|
local cvname cvvalue
|
||||||
local maven_java maven_image maven_cmd maven_setup maven_setup_image maven_action
|
local maven_java maven_image maven_cmd maven_setup maven_action
|
||||||
local -a maven_vars maven_args
|
local -a maven_vars maven_args
|
||||||
|
|
||||||
for cvname in maven_java maven_image maven_cmd maven_setup maven_setup_image; do
|
for cvname in maven_java maven_image maven_cmd maven_setup; do
|
||||||
cvvalue="${var}_${PROFILE}_${cvname^^}"; cvvalue="${!cvvalue}"
|
cvvalue="${var}_${PROFILE}_${cvname^^}"; cvvalue="${!cvvalue}"
|
||||||
[ -n "$cvvalue" ] || { cvvalue="${var}_${cvname^^}"; cvvalue="${!cvvalue}"; }
|
[ -n "$cvvalue" ] || { cvvalue="${var}_${cvname^^}"; cvvalue="${!cvvalue}"; }
|
||||||
[ -n "$cvvalue" ] || { cvvalue="${PROFILE}_${cvname^^}"; cvvalue="${!cvvalue}"; }
|
[ -n "$cvvalue" ] || { cvvalue="${PROFILE}_${cvname^^}"; cvvalue="${!cvvalue}"; }
|
||||||
@ -1243,11 +1237,10 @@ function default_update_build_env() {
|
|||||||
function update_build_env() { default_update_build_env "$@"; }
|
function update_build_env() { default_update_build_env "$@"; }
|
||||||
|
|
||||||
function default_compose_build() {
|
function default_compose_build() {
|
||||||
${FAKE:+qvals} "${DOCKER_COMPOSE[@]}" \
|
${FAKE:+qvals} docker-compose \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
build \
|
build \
|
||||||
${NO_CACHE:+--no-cache} \
|
${NO_CACHE:+--no-cache} \
|
||||||
${PROGRESS:+--progress "$PROGRESS"} \
|
|
||||||
${PULL:+--pull} \
|
${PULL:+--pull} \
|
||||||
"${replace_build_args[@]}" "${build_args[@]}" \
|
"${replace_build_args[@]}" "${build_args[@]}" \
|
||||||
"$@"
|
"$@"
|
||||||
@ -1259,7 +1252,6 @@ function default_docker_build() {
|
|||||||
done
|
done
|
||||||
${FAKE:+qvals} "$DOCKER" build \
|
${FAKE:+qvals} "$DOCKER" build \
|
||||||
${NO_CACHE:+--no-cache} \
|
${NO_CACHE:+--no-cache} \
|
||||||
${PROGRESS:+--progress "$PROGRESS"} \
|
|
||||||
${PULL:+--pull} \
|
${PULL:+--pull} \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
"${replace_build_args[@]}" "${build_args[@]}" \
|
"${replace_build_args[@]}" "${build_args[@]}" \
|
||||||
@ -1309,14 +1301,13 @@ function auto_build() {
|
|||||||
done
|
done
|
||||||
${FAKE:+qvals} "$DOCKER" build \
|
${FAKE:+qvals} "$DOCKER" build \
|
||||||
${NO_CACHE:+--no-cache} \
|
${NO_CACHE:+--no-cache} \
|
||||||
${PROGRESS:+--progress "$PROGRESS"} \
|
|
||||||
${PULL:+--pull} \
|
${PULL:+--pull} \
|
||||||
"${replace_build_args[@]}" "$@"
|
"${replace_build_args[@]}" "$@"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
function default_compose_push() {
|
function default_compose_push() {
|
||||||
${FAKE:+qvals} "${DOCKER_COMPOSE[@]}" \
|
${FAKE:+qvals} docker-compose \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
push \
|
push \
|
||||||
"$@"
|
"$@"
|
||||||
@ -1354,7 +1345,7 @@ function auto_push() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function default_compose_up() {
|
function default_compose_up() {
|
||||||
${FAKE:+qvals} "${DOCKER_COMPOSE[@]}" \
|
${FAKE:+qvals} docker-compose \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
up "${replace_run_args[@]}" "${run_args[@]}" \
|
up "${replace_run_args[@]}" "${run_args[@]}" \
|
||||||
"${replace_user_args[@]}" "${user_args[@]}" "$@"
|
"${replace_user_args[@]}" "${user_args[@]}" "$@"
|
||||||
@ -1388,7 +1379,7 @@ function auto_up() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function default_compose_stop() {
|
function default_compose_stop() {
|
||||||
${FAKE:+qvals} "${DOCKER_COMPOSE[@]}" \
|
${FAKE:+qvals} docker-compose \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
stop "${replace_stop_args[@]}" "${stop_args[@]}" \
|
stop "${replace_stop_args[@]}" "${stop_args[@]}" \
|
||||||
"$@"
|
"$@"
|
||||||
@ -1417,7 +1408,7 @@ function auto_stop() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function default_compose_logs() {
|
function default_compose_logs() {
|
||||||
${FAKE:+qvals} "${DOCKER_COMPOSE[@]}" \
|
${FAKE:+qvals} docker-compose \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
logs "${replace_logs_args[@]}" "${logs_args[@]}" \
|
logs "${replace_logs_args[@]}" "${logs_args[@]}" \
|
||||||
"$@"
|
"$@"
|
||||||
@ -1448,7 +1439,7 @@ function auto_logs() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function default_compose_down() {
|
function default_compose_down() {
|
||||||
${FAKE:+qvals} "${DOCKER_COMPOSE[@]}" \
|
${FAKE:+qvals} docker-compose \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
down "${replace_down_args[@]}" "${down_args[@]}" \
|
down "${replace_down_args[@]}" "${down_args[@]}" \
|
||||||
"$@"
|
"$@"
|
||||||
@ -1483,7 +1474,7 @@ function auto_down() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function default_compose_run() {
|
function default_compose_run() {
|
||||||
${FAKE:+qvals} "${DOCKER_COMPOSE[@]}" \
|
${FAKE:+qvals} docker-compose \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
run "${replace_run_args[@]}" "${run_args[@]}" \
|
run "${replace_run_args[@]}" "${run_args[@]}" \
|
||||||
"${replace_user_args[@]}" "${user_args[@]}" "$@"
|
"${replace_user_args[@]}" "${user_args[@]}" "$@"
|
||||||
@ -1554,7 +1545,7 @@ function auto_run() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function default_compose_exec() {
|
function default_compose_exec() {
|
||||||
${FAKE:+qvals} "${DOCKER_COMPOSE[@]}" \
|
${FAKE:+qvals} docker-compose \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
exec "${replace_exec_args[@]}" "${exec_args[@]}" \
|
exec "${replace_exec_args[@]}" "${exec_args[@]}" \
|
||||||
"$@"
|
"$@"
|
||||||
@ -1768,7 +1759,7 @@ function auto_status() {
|
|||||||
function default_compose_show_ip() {
|
function default_compose_show_ip() {
|
||||||
local -a cmd cids; local cid
|
local -a cmd cids; local cid
|
||||||
cmd=(
|
cmd=(
|
||||||
"${DOCKER_COMPOSE[@]}"
|
docker-compose
|
||||||
"${replace_env_args[@]}" "${env_args[@]}"
|
"${replace_env_args[@]}" "${env_args[@]}"
|
||||||
ps -q "${replace_show_ip_args[@]}" "${show_ip_args[@]}"
|
ps -q "${replace_show_ip_args[@]}" "${show_ip_args[@]}"
|
||||||
"$@"
|
"$@"
|
||||||
@ -1804,23 +1795,7 @@ function auto_show_ip() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function default_compose_systemd_unit() {
|
function default_compose_systemd_unit() {
|
||||||
local -a docker_compose
|
local docker_compose="$(which docker-compose 2>/dev/null)"
|
||||||
if [ "${DOCKER_COMPOSE[0]}" == docker ]; then
|
|
||||||
# compose v2
|
|
||||||
local docker="$(which docker 2>/dev/null)"
|
|
||||||
if [ -z "$docker" ]; then
|
|
||||||
if [ -x /usr/bin/docker ]; then
|
|
||||||
docker=/usr/bin/docker
|
|
||||||
elif [ -x /usr/local/bin/docker ]; then
|
|
||||||
docker=/usr/local/bin/docker
|
|
||||||
else
|
|
||||||
die "Impossible de trouver docker"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
docker_compose=("$docker" compose)
|
|
||||||
else
|
|
||||||
# compose v1
|
|
||||||
docker_compose="$(which docker-compose 2>/dev/null)"
|
|
||||||
if [ -z "$docker_compose" ]; then
|
if [ -z "$docker_compose" ]; then
|
||||||
if [ -x /usr/bin/docker-compose ]; then
|
if [ -x /usr/bin/docker-compose ]; then
|
||||||
docker_compose=/usr/bin/docker-compose
|
docker_compose=/usr/bin/docker-compose
|
||||||
@ -1830,12 +1805,11 @@ function default_compose_systemd_unit() {
|
|||||||
die "Impossible de trouver docker-compose"
|
die "Impossible de trouver docker-compose"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
setx startcmd=qvals "$docker_compose" \
|
||||||
setx startcmd=qvals "${docker_compose[@]}" \
|
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
up "${replace_run_args[@]}" "${run_args[@]}" \
|
up "${replace_run_args[@]}" "${run_args[@]}" \
|
||||||
"${replace_user_args[@]}" "${user_args[@]}" "$@"
|
"${replace_user_args[@]}" "${user_args[@]}" "$@"
|
||||||
setx stopcmd=qvals "${docker_compose[@]}" down
|
setx stopcmd=qvals "$docker_compose" down
|
||||||
}
|
}
|
||||||
function default_docker_systemd_unit() {
|
function default_docker_systemd_unit() {
|
||||||
local docker="$(which "$DOCKER" 2>/dev/null)"
|
local docker="$(which "$DOCKER" 2>/dev/null)"
|
||||||
@ -1949,7 +1923,6 @@ function default_local_composer() {
|
|||||||
*)
|
*)
|
||||||
if [ -n "$COMPOSER_CMD" ]; then :
|
if [ -n "$COMPOSER_CMD" ]; then :
|
||||||
elif [ -x composer.phar ]; then COMPOSER_CMD=./composer.phar
|
elif [ -x composer.phar ]; then COMPOSER_CMD=./composer.phar
|
||||||
elif [ -x sbin/composer.phar ]; then COMPOSER_CMD=./sbin/composer.phar
|
|
||||||
elif [ -x /usr/bin/composer ]; then COMPOSER_CMD=/usr/bin/composer
|
elif [ -x /usr/bin/composer ]; then COMPOSER_CMD=/usr/bin/composer
|
||||||
else
|
else
|
||||||
eerror "Impossible de trouver composer"
|
eerror "Impossible de trouver composer"
|
||||||
@ -1986,7 +1959,6 @@ function default_docker_composer() {
|
|||||||
-e group="$group"
|
-e group="$group"
|
||||||
-e projdir="$projdir"
|
-e projdir="$projdir"
|
||||||
-e setup="$COMPOSER_SETUP"
|
-e setup="$COMPOSER_SETUP"
|
||||||
-e setup_image="$COMPOSER_SETUP_IMAGE"
|
|
||||||
-e composer="$COMPOSER_CMD"
|
-e composer="$COMPOSER_CMD"
|
||||||
-e args="$args"
|
-e args="$args"
|
||||||
)
|
)
|
||||||
@ -2006,7 +1978,6 @@ echo "$group" >>/etc/group; group="${group%%:*}"
|
|||||||
cd "$projdir"
|
cd "$projdir"
|
||||||
if [ -n "$composer" ]; then :
|
if [ -n "$composer" ]; then :
|
||||||
elif [ -x composer.phar ]; then composer=./composer.phar
|
elif [ -x composer.phar ]; then composer=./composer.phar
|
||||||
elif [ -x sbin/composer.phar ]; then composer=./sbin/composer.phar
|
|
||||||
elif [ -x /usr/bin/composer ]; then composer=/usr/bin/composer
|
elif [ -x /usr/bin/composer ]; then composer=/usr/bin/composer
|
||||||
else
|
else
|
||||||
echo "ERROR: Impossible de trouver composer"
|
echo "ERROR: Impossible de trouver composer"
|
||||||
@ -2016,36 +1987,35 @@ fi
|
|||||||
|
|
||||||
if [ -n "$COMPOSER_SETUP" ]; then
|
if [ -n "$COMPOSER_SETUP" ]; then
|
||||||
# lancement dans un container docker à préparer
|
# lancement dans un container docker à préparer
|
||||||
local NAME setup_image project_name container_name dkid
|
local NAME project_name container_name dkid
|
||||||
if [ -f docker-compose.yml ]; then
|
if [ -f docker-compose.yml ]; then
|
||||||
compose_set_project_name set_container_name
|
compose_set_project_name set_container_name
|
||||||
else
|
else
|
||||||
NAME="$(basename -- "$(pwd)")"
|
NAME="$(basename -- "$(pwd)")"
|
||||||
docker_check_name set_container_name
|
docker_check_name set_container_name
|
||||||
fi
|
fi
|
||||||
setup_image="$COMPOSER_SETUP_IMAGE"
|
container_name="dk_composer_${container_name}"
|
||||||
[ -n "$setup_image" ] || setup_image="dk_composer_${container_name}_image"
|
|
||||||
|
|
||||||
# vérifier l'existence de l'image
|
# vérifier l'existence de l'image
|
||||||
setx dkid=docker image ls --format '{{.ID}}' "$setup_image"
|
setx dkid=docker image ls --format '{{.ID}}' "${container_name}_image"
|
||||||
|
|
||||||
# créer le container le cas échéant
|
# créer le container le cas échéant
|
||||||
if [ -z "$dkid" ]; then
|
if [ -z "$dkid" ]; then
|
||||||
estep "Création de l'image $setup_image à partir de $COMPOSER_IMAGE"
|
estep "Création du container $container_name avec l'image $COMPOSER_IMAGE"
|
||||||
cmd=(
|
cmd=(
|
||||||
"$DOCKER" create -it --name "${setup_image}_tmpct"
|
"$DOCKER" create -it --name "${container_name}_ct"
|
||||||
"${basecmd[@]}"
|
"${basecmd[@]}"
|
||||||
"$COMPOSER_IMAGE"
|
"$COMPOSER_IMAGE"
|
||||||
bash -c "$setupscript"
|
bash -c "$setupscript"
|
||||||
)
|
)
|
||||||
setx dkid="${cmd[@]}" || return 1
|
setx dkid="${cmd[@]}" || return 1
|
||||||
"$DOCKER" container start -ai "$dkid" || return 1
|
"$DOCKER" container start -ai "$dkid" || return 1
|
||||||
"$DOCKER" container commit "$dkid" "$setup_image" || return 1
|
"$DOCKER" container commit "$dkid" "${container_name}_image" || return 1
|
||||||
"$DOCKER" container rm "$dkid" || return 1
|
"$DOCKER" container rm "$dkid" || return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# prendre comme image le container créé
|
# prendre comme image le container créé
|
||||||
COMPOSER_IMAGE="$setup_image"
|
COMPOSER_IMAGE="${container_name}_image"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cmd=(
|
cmd=(
|
||||||
@ -2071,19 +2041,7 @@ function auto_composer() {
|
|||||||
local COMPOSER_MACHINE=-u
|
local COMPOSER_MACHINE=-u
|
||||||
local COMPOSER_CMD=
|
local COMPOSER_CMD=
|
||||||
local COMPOSER_SETUP=
|
local COMPOSER_SETUP=
|
||||||
local COMPOSER_SETUP_IMAGE=
|
[ -f .composer.conf ] && source ./.composer.conf
|
||||||
if [ -f .composer.yaml ]; then
|
|
||||||
local registry
|
|
||||||
eval "$(<.composer.yaml grep ^composer_ |
|
|
||||||
sed 's/^composer_php_min: /COMPOSER_PHP=/
|
|
||||||
s/^composer_php_max: /COMPOSER_PHP_MAX=/
|
|
||||||
s/^composer_registry: /registry=/
|
|
||||||
s/^composer_image: \(.*\)/COMPOSER_IMAGE="${registry:-$REGISTRY}\/\1"/
|
|
||||||
s/^composer_setup: /COMPOSER_SETUP=/
|
|
||||||
s/^composer_setup_image: /COMPOSER_SETUP_IMAGE=/')"
|
|
||||||
elif [ -f .composer.conf ]; then
|
|
||||||
source ./.composer.conf
|
|
||||||
fi
|
|
||||||
# les premiers arguments peuvent servir à redéfinir les variables
|
# les premiers arguments peuvent servir à redéfinir les variables
|
||||||
while [ $# -gt 0 ]; do
|
while [ $# -gt 0 ]; do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
@ -2099,10 +2057,8 @@ function auto_composer() {
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
local use_runphp use_image
|
local use_image
|
||||||
if [ "$COMPOSER_PHP" == runphp ]; then
|
if [ "$COMPOSER_PHP" == force -o "$COMPOSER_PHP" == any ]; then
|
||||||
use_runphp=1
|
|
||||||
elif [ "$COMPOSER_PHP" == force -o "$COMPOSER_PHP" == any ]; then
|
|
||||||
use_image=1
|
use_image=1
|
||||||
elif [ "$COMPOSER_PHP" == none -o "$COMPOSER_PHP" == system ]; then
|
elif [ "$COMPOSER_PHP" == none -o "$COMPOSER_PHP" == system ]; then
|
||||||
COMPOSER_PHP=none
|
COMPOSER_PHP=none
|
||||||
@ -2123,7 +2079,7 @@ exit((PHP_VERSION_ID > $version)? 0: 1);
|
|||||||
*) ewarn "Erreur lors du lancement de PHP: est-il installé? Vous pouvez utiliser COMPOSER_PHP=any";;
|
*) ewarn "Erreur lors du lancement de PHP: est-il installé? Vous pouvez utiliser COMPOSER_PHP=any";;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
if [ -n "$use_runphp" -o -n "$use_image" -o "$COMPOSER_PHP" == none ]; then
|
if [ -n "$use_image" -o "$COMPOSER_PHP" == none ]; then
|
||||||
: # ok, on a déjà décidé
|
: # ok, on a déjà décidé
|
||||||
elif [ -z "$COMPOSER_PHP" ]; then
|
elif [ -z "$COMPOSER_PHP" ]; then
|
||||||
# pas de version minimum, tester simplement la valeur de COMPOSER_IMAGE
|
# pas de version minimum, tester simplement la valeur de COMPOSER_IMAGE
|
||||||
@ -2145,23 +2101,7 @@ exit((PHP_VERSION_ID < $version)? 0: 1);
|
|||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$use_runphp" ]; then
|
if [ -n "$use_image" ]; then
|
||||||
(
|
|
||||||
export PROJDIR="$(pwd)"
|
|
||||||
export RUNPHP_STANDALONE=
|
|
||||||
RUNPHP=; DIST=; REGISTRY=
|
|
||||||
if [ -f "$PROJDIR/.runphp.conf" ]; then
|
|
||||||
source "$PROJDIR/.runphp.conf"
|
|
||||||
[ -n "$RUNPHP" ] && exec "$PROJDIR/$RUNPHP" composer "$@"
|
|
||||||
elif [ -f "$PROJDIR/sbin/runphp" ]; then
|
|
||||||
exec "$PROJDIR/sbin/runphp" composer "$@"
|
|
||||||
elif [ -f "$PROJDIR/runphp" ]; then
|
|
||||||
exec "$PROJDIR/runphp" composer "$@"
|
|
||||||
fi
|
|
||||||
exec runphp composer "$@"
|
|
||||||
)
|
|
||||||
|
|
||||||
elif [ -n "$use_image" ]; then
|
|
||||||
[ "$COMPOSER_IMAGE" != none ] || die "Vous devez spécifier l'image à utiliser pour composer"
|
[ "$COMPOSER_IMAGE" != none ] || die "Vous devez spécifier l'image à utiliser pour composer"
|
||||||
|
|
||||||
local PREVIOUS_DOCKER_MACHINE_NAME="$DOCKER_MACHINE_NAME"
|
local PREVIOUS_DOCKER_MACHINE_NAME="$DOCKER_MACHINE_NAME"
|
||||||
@ -2243,7 +2183,6 @@ function default_docker_maven() {
|
|||||||
-e group="$group"
|
-e group="$group"
|
||||||
-e projdir="$projdir"
|
-e projdir="$projdir"
|
||||||
-e setup="$MAVEN_SETUP"
|
-e setup="$MAVEN_SETUP"
|
||||||
-e setup_image="$MAVEN_SETUP_IMAGE"
|
|
||||||
-e maven="$MAVEN_CMD"
|
-e maven="$MAVEN_CMD"
|
||||||
-e args="$args"
|
-e args="$args"
|
||||||
${MAVEN_JAVA:+-e JAVA="$MAVEN_JAVA"}
|
${MAVEN_JAVA:+-e JAVA="$MAVEN_JAVA"}
|
||||||
@ -2268,36 +2207,35 @@ cd "$projdir"
|
|||||||
|
|
||||||
if [ -n "$MAVEN_SETUP" ]; then
|
if [ -n "$MAVEN_SETUP" ]; then
|
||||||
# lancement dans un container docker à préparer
|
# lancement dans un container docker à préparer
|
||||||
local NAME setup_image project_name container_name dkid
|
local NAME project_name container_name dkid
|
||||||
if [ -f docker-compose.yml ]; then
|
if [ -f docker-compose.yml ]; then
|
||||||
compose_set_project_name set_container_name
|
compose_set_project_name set_container_name
|
||||||
else
|
else
|
||||||
NAME="$(basename -- "$(pwd)")"
|
NAME="$(basename -- "$(pwd)")"
|
||||||
docker_check_name set_container_name
|
docker_check_name set_container_name
|
||||||
fi
|
fi
|
||||||
setup_image="$MAVEN_SETUP_IMAGE"
|
container_name="dk_maven_${container_name}"
|
||||||
[ -n "$setup_image" ] || setup_image="dk_maven_${container_name}_image"
|
|
||||||
|
|
||||||
# vérifier l'existence de l'image
|
# vérifier l'existence de l'image
|
||||||
setx dkid=docker image ls --format '{{.ID}}' "$setup_image"
|
setx dkid=docker image ls --format '{{.ID}}' "${container_name}_image"
|
||||||
|
|
||||||
# créer le container le cas échéant
|
# créer le container le cas échéant
|
||||||
if [ -z "$dkid" ]; then
|
if [ -z "$dkid" ]; then
|
||||||
estep "Création de l'image $setup_image à partir de $MAVEN_IMAGE"
|
estep "Création du container $container_name avec l'image $MAVEN_IMAGE"
|
||||||
cmd=(
|
cmd=(
|
||||||
"$DOCKER" create -it --name "${setup_image}_tmpct"
|
"$DOCKER" create -it --name "${container_name}_ct"
|
||||||
"${basecmd[@]}"
|
"${basecmd[@]}"
|
||||||
"$MAVEN_IMAGE"
|
"$MAVEN_IMAGE"
|
||||||
bash -c "$setupscript"
|
bash -c "$setupscript"
|
||||||
)
|
)
|
||||||
setx dkid="${cmd[@]}" || return 1
|
setx dkid="${cmd[@]}" || return 1
|
||||||
"$DOCKER" container start -ai "$dkid" || return 1
|
"$DOCKER" container start -ai "$dkid" || return 1
|
||||||
"$DOCKER" container commit "$dkid" "$setup_image" || return 1
|
"$DOCKER" container commit "$dkid" "${container_name}_image" || return 1
|
||||||
"$DOCKER" container rm "$dkid" || return 1
|
"$DOCKER" container rm "$dkid" || return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# prendre comme image le container créé
|
# prendre comme image le container créé
|
||||||
MAVEN_IMAGE="$setup_image"
|
MAVEN_IMAGE="${container_name}_image"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cmd=(
|
cmd=(
|
||||||
@ -2322,7 +2260,6 @@ function auto_maven() {
|
|||||||
local MAVEN_MACHINE=-u
|
local MAVEN_MACHINE=-u
|
||||||
local MAVEN_CMD=
|
local MAVEN_CMD=
|
||||||
local MAVEN_SETUP=
|
local MAVEN_SETUP=
|
||||||
local MAVEN_SETUP_IMAGE=
|
|
||||||
[ -f .maven.conf ] && source ./.maven.conf
|
[ -f .maven.conf ] && source ./.maven.conf
|
||||||
# les premiers arguments peuvent servir à redéfinir les variables
|
# les premiers arguments peuvent servir à redéfinir les variables
|
||||||
while [ $# -gt 0 ]; do
|
while [ $# -gt 0 ]; do
|
||||||
@ -2453,8 +2390,7 @@ elif progexists podman; then DOCKER=podman
|
|||||||
else DOCKER=docker
|
else DOCKER=docker
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ -n "$COMPOSE_V1" ] && DOCKER_COMPOSE=(docker-compose) || DOCKER_COMPOSE=(docker compose)
|
DEFAULT_PROFILE=devel
|
||||||
|
|
||||||
PROFILE=
|
PROFILE=
|
||||||
DM_ALIASES=()
|
DM_ALIASES=()
|
||||||
DM_PROFILES=()
|
DM_PROFILES=()
|
||||||
@ -2462,55 +2398,19 @@ CLUSTERDIRS=()
|
|||||||
DEFAULT_DEVEL_SRCDIR="$HOME/wop"
|
DEFAULT_DEVEL_SRCDIR="$HOME/wop"
|
||||||
COMPOSER_DEVEL_SRCDIR="$HOME/wop/php"
|
COMPOSER_DEVEL_SRCDIR="$HOME/wop/php"
|
||||||
MAVEN_DEVEL_SRCDIR="$HOME/wop/sn"
|
MAVEN_DEVEL_SRCDIR="$HOME/wop/sn"
|
||||||
DEFAULT_COMPOSER_IMAGE=
|
DEFAULT_COMPOSER_IMAGE=docker.univ-reunion.fr/image/phpbuilder
|
||||||
DEFAULT_MAVEN_IMAGE=
|
DEFAULT_MAVEN_IMAGE=docker.univ-reunion.fr/image/javabuilder
|
||||||
DEFAULT_HOST_MAPPINGS=()
|
DEFAULT_HOST_MAPPINGS=()
|
||||||
|
prod_HOST_MAPPINGS=(
|
||||||
|
docker.univ-reunion.fr:10.82.70.154
|
||||||
|
repos.univ-reunion.fr:10.82.70.246
|
||||||
|
git.univ-reunion.fr:10.82.70.247
|
||||||
|
)
|
||||||
|
test_HOST_MAPPINGS=("${prod_HOST_MAPPINGS[@]}")
|
||||||
set_defaults dk
|
set_defaults dk
|
||||||
export PROFILE
|
export PROFILE
|
||||||
|
|
||||||
DEFAULT_PROFILE=devel
|
|
||||||
REGISTRY=
|
|
||||||
HOST_MAPPINGS=()
|
HOST_MAPPINGS=()
|
||||||
if [ -f ~/.dkbuild.env ]; then
|
|
||||||
function default_profile() {
|
|
||||||
DEFAULT_PROFILE="$1"
|
|
||||||
}
|
|
||||||
function profile() {
|
|
||||||
local profile
|
|
||||||
for profile in "$@"; do
|
|
||||||
[ "$profile" == "$DEFAULT_PROFILE" ] && return 0
|
|
||||||
done
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
function setenv() {
|
|
||||||
eval "export $1"
|
|
||||||
}
|
|
||||||
function default() {
|
|
||||||
local command="$1"; shift
|
|
||||||
local nv n v
|
|
||||||
case "$command" in
|
|
||||||
docker)
|
|
||||||
for nv in "$@"; do
|
|
||||||
[[ "$nv" == *=* ]] || continue
|
|
||||||
n="${nv%%=*}"
|
|
||||||
v="${nv#*=}"
|
|
||||||
case "$n" in
|
|
||||||
host-mappings)
|
|
||||||
read -a nv <<<"$v"
|
|
||||||
for v in "${ns[@]}"; do
|
|
||||||
HOST_MAPPINGS+=("$v")
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
source ~/.dkbuild.env
|
|
||||||
fi
|
|
||||||
[ -n "$REGISTRY" ] || REGISTRY=pubdocker.univ-reunion.fr
|
|
||||||
[ -n "$DEFAULT_COMPOSER_IMAGE" ] || DEFAULT_COMPOSER_IMAGE="$REGISTRY/image/php:d11"
|
|
||||||
[ -n "$DEFAULT_MAVEN_IMAGE" ] || DEFAULT_MAVEN_IMAGE="$REGISTRY/image/javabuilder:d11"
|
|
||||||
|
|
||||||
chdir=
|
chdir=
|
||||||
CONFIG=
|
CONFIG=
|
||||||
@ -2522,7 +2422,6 @@ FAKE=
|
|||||||
VARS=()
|
VARS=()
|
||||||
FORCE=
|
FORCE=
|
||||||
NO_CACHE=
|
NO_CACHE=
|
||||||
PROGRESS=
|
|
||||||
PULL=
|
PULL=
|
||||||
HOST=
|
HOST=
|
||||||
WITH_REGISTRY_AUTH=1
|
WITH_REGISTRY_AUTH=1
|
||||||
@ -2532,7 +2431,6 @@ update_apps_origin=
|
|||||||
update_apps_branch=
|
update_apps_branch=
|
||||||
args=(
|
args=(
|
||||||
--help '$exit_with display_help'
|
--help '$exit_with display_help'
|
||||||
--compose-v1 '$DOCKER_COMPOSE=(docker-compose)'
|
|
||||||
-d:,--chdir: chdir=
|
-d:,--chdir: chdir=
|
||||||
-c:,--config: CONFIG=
|
-c:,--config: CONFIG=
|
||||||
-p:,--profile: PROFILE=
|
-p:,--profile: PROFILE=
|
||||||
@ -2546,7 +2444,6 @@ args=(
|
|||||||
-e:,--build-arg:,--env: VARS
|
-e:,--build-arg:,--env: VARS
|
||||||
-f,--force FORCE=1
|
-f,--force FORCE=1
|
||||||
-j,--no-cache NO_CACHE=1
|
-j,--no-cache NO_CACHE=1
|
||||||
--plain-output PROGRESS=plain
|
|
||||||
-U,--pull PULL=1
|
-U,--pull PULL=1
|
||||||
-h:,--host: HOST=
|
-h:,--host: HOST=
|
||||||
-g,--ug,--no-update-apps update_apps_mode=b
|
-g,--ug,--no-update-apps update_apps_mode=b
|
||||||
@ -3023,11 +2920,6 @@ NR == 1 { print; next }
|
|||||||
"$DOCKER" container prune -f || die
|
"$DOCKER" container prune -f || die
|
||||||
"$DOCKER" image prune -f || die
|
"$DOCKER" image prune -f || die
|
||||||
;;
|
;;
|
||||||
XX|prune-cache)
|
|
||||||
"$DOCKER" container prune -f || die
|
|
||||||
"$DOCKER" image prune -f || die
|
|
||||||
"$DOCKER" builder prune -f || die
|
|
||||||
;;
|
|
||||||
composer|c|ci|cu|cr|cs)
|
composer|c|ci|cu|cr|cs)
|
||||||
build_set_options "$update_apps_mode" "$update_apps_origin" "$update_apps_branch"
|
build_set_options "$update_apps_mode" "$update_apps_origin" "$update_apps_branch"
|
||||||
[ -f .build.scripts.sh ] && source ./.build.scripts.sh
|
[ -f .build.scripts.sh ] && source ./.build.scripts.sh
|
||||||
|
2
dmcerts
2
dmcerts
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source /etc/ulibauto || exit 1
|
||||||
urequire install
|
urequire install
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
|
2
dmctl
2
dmctl
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source /etc/ulibauto || exit 1
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: import/exporter une docker-machine
|
uecho "$scriptname: import/exporter une docker-machine
|
||||||
|
@ -11,7 +11,7 @@ if [ "$#" -eq 1 -a "$1" == --nutools-makelinks ]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
source "$(dirname -- "$0")/lib/ulib/ulib" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
urequire base
|
urequire base
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: afficher les connexions TCP entrantes sur un port
|
uecho "$scriptname: afficher les connexions TCP entrantes sur un port
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
urequire ipcalc
|
urequire DEFAULTS ipcalc
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: s'assurer que l'hôte courant a l'adresse IP spécifiée
|
uecho "$scriptname: s'assurer que l'hôte courant a l'adresse IP spécifiée
|
||||||
|
3
fconv
3
fconv
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: convertir un fichier ou les fichiers d'un répertoire
|
uecho "$scriptname: convertir un fichier ou les fichiers d'un répertoire
|
||||||
|
3
fnconv
3
fnconv
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: renommer un fichier ou les fichiers d'un répertoire
|
uecho "$scriptname: renommer un fichier ou les fichiers d'un répertoire
|
||||||
|
3
fndate
3
fndate
@ -11,7 +11,8 @@ if [ "$#" -eq 1 -a "$1" == --nutools-makelinks ]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: manipuler des noms de fichier pour les dater
|
uecho "$scriptname: manipuler des noms de fichier pour les dater
|
||||||
|
3
foreach
3
foreach
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: lancer une commande pour un ensemble d'arguments
|
uecho "$scriptname: lancer une commande pour un ensemble d'arguments
|
||||||
|
3
geturl
3
geturl
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Télécharger un fichier avec wget ou curl
|
uecho "$scriptname: Télécharger un fichier avec wget ou curl
|
||||||
|
4
ipaddr
4
ipaddr
@ -7,9 +7,7 @@ elif [ -x /bin/ip ]; then IP=/bin/ip
|
|||||||
else IP=ip
|
else IP=ip
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "IPADDR_COLOR" ]; then isatty=1
|
tty -s <&1 && isatty=1 || isatty=
|
||||||
else tty -s <&1 && isatty=1 || isatty=
|
|
||||||
fi
|
|
||||||
|
|
||||||
"$IP" addr "$@" | awk -v isatty="$isatty" '
|
"$IP" addr "$@" | awk -v isatty="$isatty" '
|
||||||
isatty && $0 ~ /^[0-9]/ {
|
isatty && $0 ~ /^[0-9]/ {
|
||||||
|
33
ldiff
33
ldiff
@ -1,33 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
source "$(dirname "$0")/lib/ulib/auto" || exit 1
|
|
||||||
|
|
||||||
function display_help() {
|
|
||||||
uecho "$scriptname: frontend de diff pour comparer deux fichiers encodés en latin1
|
|
||||||
|
|
||||||
USAGE
|
|
||||||
$scriptname [options] Lfile Rfile
|
|
||||||
|
|
||||||
OPTIONS
|
|
||||||
-u, -U, --unified N
|
|
||||||
-w, --ignore-all-space
|
|
||||||
-B, --ignore-blank-lines
|
|
||||||
options de diff qui sont reprises telles quelles"
|
|
||||||
}
|
|
||||||
|
|
||||||
diffopts=()
|
|
||||||
args=(
|
|
||||||
--help '$exit_with display_help'
|
|
||||||
-u '$diffopts+=(-u)'
|
|
||||||
-U:,--unified: '$diffopts+=(-U "$value_")'
|
|
||||||
-w,--ignore-all-space '$diffopts+=(-w)'
|
|
||||||
-B,--ignore-blank-lines '$diffopts+=(-B)'
|
|
||||||
)
|
|
||||||
parse_args "$@"; set -- "${args[@]}"
|
|
||||||
|
|
||||||
Lfile="$1"
|
|
||||||
Rfile="$2"
|
|
||||||
[ -n "$Lfile" -a -n "$Rfile" ] || die "vous devez spécifier les deux fichiers"
|
|
||||||
[ -d "$Lfile" -o -d "$Rfile" ] && die "il faut absolument comparer deux fichiers"
|
|
||||||
|
|
||||||
diff "${diffopts[@]}" <(iconv -f latin1 -t utf-8 "$Lfile") <(iconv -f latin1 -t utf-8 "$Rfile")
|
|
41
lgrep
41
lgrep
@ -1,41 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
source "$(dirname "$0")/lib/ulib/auto" || exit 1
|
|
||||||
|
|
||||||
function display_help() {
|
|
||||||
uecho "$scriptname: frontend de grep pour chercher dans un fichier encodé en latin1
|
|
||||||
|
|
||||||
USAGE
|
|
||||||
$scriptname [options] FILE
|
|
||||||
|
|
||||||
OPTIONS
|
|
||||||
options de grep qui sont reprises telles quelles"
|
|
||||||
}
|
|
||||||
|
|
||||||
grepopts=()
|
|
||||||
args=(
|
|
||||||
--help '$exit_with display_help'
|
|
||||||
-E,--extended-regexp '$grepopts+=(-E)'
|
|
||||||
-F,--fixed-strings '$grepopts+=(-F)'
|
|
||||||
-G,--basic-regexp '$grepopts+=(-G)'
|
|
||||||
-P,--perl-regexp '$grepopts+=(-P)'
|
|
||||||
-i,--ignore-case '$grepopts+=(-i)'
|
|
||||||
-v,--invert-match '$grepopts+=(-v)'
|
|
||||||
-L,--files-without-match '$grepopts+=(-L)'
|
|
||||||
-l,--files-with-matches '$grepopts+=(-l)'
|
|
||||||
-q,--quiet,--silent '$grepopts+=(-q)'
|
|
||||||
-s,--no-messages '$grepopts+=(-s)'
|
|
||||||
-H,--with-filename '$grepopts+=(-H)'
|
|
||||||
-h,--no-filename '$grepopts+=(-h)'
|
|
||||||
-a,--text '$grepopts+=(-a)'
|
|
||||||
-r,--recursive '$grepopts+=(-r)'
|
|
||||||
-R,--dereference-recursive '$grepopts+=(-R)'
|
|
||||||
)
|
|
||||||
parse_args "$@"; set -- "${args[@]}"
|
|
||||||
|
|
||||||
pattern="$1"
|
|
||||||
args=("${@:2}")
|
|
||||||
#XXX ajouter le support de -r, -h, -H, notamment si ${args[@]} contient un
|
|
||||||
# répertoire
|
|
||||||
|
|
||||||
iconv -f latin1 -t utf-8 "${args[@]}" | grep "${grepopts[@]}" "$pattern"
|
|
@ -20,5 +20,10 @@
|
|||||||
#MAVEN_DEVEL_SRCDIR="$HOME/wop/sn"
|
#MAVEN_DEVEL_SRCDIR="$HOME/wop/sn"
|
||||||
|
|
||||||
# Image à utiliser pour les builds
|
# Image à utiliser pour les builds
|
||||||
#DEFAULT_COMPOSER_IMAGE=pubdocker.univ-reunion.fr/image/php:d11
|
#DEFAULT_COMPOSER_IMAGE=docker.univ-reunion.fr/image/phpbuilder:d10
|
||||||
#DEFAULT_MAVEN_IMAGE=pubdocker.univ-reunion.fr/image/javabuilder:d11
|
#DEFAULT_MAVEN_IMAGE=docker.univ-reunion.fr/image/javabuilder:d10
|
||||||
|
|
||||||
|
# Mappings d'hôtes à activer pour les builds à base d'image
|
||||||
|
#DEFAULT_HOST_MAPPINGS=()
|
||||||
|
#prod_HOST_MAPPINGS=(docker.univ-reunion.fr:10.82.70.154 repos.univ-reunion.fr:10.82.70.246 git.univ-reunion.fr:10.82.70.247)
|
||||||
|
#test_HOST_MAPPINGS=("${prod_HOST_MAPPINGS}")
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
# Profil par défaut
|
|
||||||
#DKBUILD_PROFILE=prod
|
|
@ -1,31 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
default_profile "${DKBUILD_PROFILE:-prod}"
|
|
||||||
|
|
||||||
# Source des paquets et proxy
|
|
||||||
#setenv APT_PROXY=http://aptcache.devel.self:3142
|
|
||||||
#setenv APT_MIRROR=default
|
|
||||||
#setenv SEC_MIRROR=default
|
|
||||||
|
|
||||||
# Timezone du serveur
|
|
||||||
#setenv TIMEZONE=Indian/Reunion
|
|
||||||
|
|
||||||
if profile jclain; then
|
|
||||||
setenv REGISTRY=docker.jclain.fr
|
|
||||||
setenv PRIVAREG=docker.jclain.fr
|
|
||||||
elif profile prod test; then
|
|
||||||
setenv REGISTRY=pubdocker.univ-reunion.fr/rununiv
|
|
||||||
setenv PRIVAREG=pridocker.univ-reunion.fr
|
|
||||||
host_mappings=(
|
|
||||||
pridocker.univ-reunion.fr:10.85.1.56
|
|
||||||
pubdocker.univ-reunion.fr:10.85.1.57
|
|
||||||
repos.univ-reunion.fr:10.85.1.57
|
|
||||||
git.univ-reunion.fr:10.85.1.55
|
|
||||||
)
|
|
||||||
default docker host-mappings="${host_mappings[*]}"
|
|
||||||
elif profile dist; then
|
|
||||||
setenv REGISTRY=pubdocker.univ-reunion.fr/dist
|
|
||||||
setenv PRIVAREG=pridocker.univ-reunion.fr
|
|
||||||
elif profile devel; then
|
|
||||||
setenv REGISTRY=docker.devel.self/rununiv
|
|
||||||
setenv PRIVAREG=docker.devel.self
|
|
||||||
fi
|
|
@ -1 +0,0 @@
|
|||||||
php
|
|
3
lib/dkbuild/templates/image/.gitattributes
vendored
3
lib/dkbuild/templates/image/.gitattributes
vendored
@ -1,3 +0,0 @@
|
|||||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
|
||||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
|
||||||
*.tar.gz filter=lfs diff=lfs merge=lfs -text
|
|
2
lib/dkbuild/templates/image/.gitignore
vendored
2
lib/dkbuild/templates/image/.gitignore
vendored
@ -1,2 +0,0 @@
|
|||||||
.~lock*#
|
|
||||||
.*.swp
|
|
@ -1,3 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: dockerfile -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
FROM $REGISTRY/debian/min:$DIST
|
|
||||||
#RUN /debian/pkg i
|
|
@ -1,2 +0,0 @@
|
|||||||
/b/t/
|
|
||||||
**/.git/
|
|
3
lib/dkbuild/templates/image/d11/.gitignore
vendored
3
lib/dkbuild/templates/image/d11/.gitignore
vendored
@ -1,3 +0,0 @@
|
|||||||
/b/
|
|
||||||
/Dockerfile
|
|
||||||
# autogénéré
|
|
@ -1,11 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setdists d11
|
|
||||||
|
|
||||||
# fichiers communs
|
|
||||||
copy ../common/ ./ gitignore=.
|
|
||||||
|
|
||||||
dockerfile "" Dockerfile.in sed="
|
|
||||||
s/\\\$REGISTRY/$REGISTRY/
|
|
||||||
s/\\\$DIST/$DIST/
|
|
||||||
"
|
|
||||||
build
|
|
@ -1 +0,0 @@
|
|||||||
../dkbuild.env
|
|
@ -1,9 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
dists=(
|
|
||||||
d11
|
|
||||||
)
|
|
||||||
setdists "${dists[@]}"
|
|
||||||
|
|
||||||
if dist d11; then
|
|
||||||
include d11
|
|
||||||
fi
|
|
@ -1,3 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setenv REGISTRY=pubdocker.univ-reunion.fr
|
|
||||||
setenv IMAGE=$REGISTRY/GROUP/NAME
|
|
3
lib/dkbuild/templates/php/.gitignore
vendored
3
lib/dkbuild/templates/php/.gitignore
vendored
@ -1,3 +0,0 @@
|
|||||||
/Dockerfile
|
|
||||||
.~lock*#
|
|
||||||
.*.swp
|
|
@ -1,25 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
if profile prod; then
|
|
||||||
default checkout branch=master
|
|
||||||
elif profile test devel; then
|
|
||||||
default checkout branch=develop
|
|
||||||
fi
|
|
||||||
default composer image=$REGISTRY/image/phpbuilder:$DIST
|
|
||||||
|
|
||||||
## web ########################################################################
|
|
||||||
checkout https://git.univ-reunion.fr/sda-php/NAME-app b/web
|
|
||||||
composer b/web
|
|
||||||
|
|
||||||
dockerfile
|
|
||||||
# -*- coding: utf-8 mode: dockerfile -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
FROM $REGISTRY/image/apache-php-myiccas:$DIST
|
|
||||||
#RUN /debian/pkg i
|
|
||||||
|
|
||||||
#ENV MSMTP_ENABLE=1
|
|
||||||
#COPY b/web/config/msmtp /msmtp-config
|
|
||||||
COPY b/web/config/ssl /ssl-config
|
|
||||||
COPY b/web/config/apache /apache-config
|
|
||||||
COPY b/web/config/php /php-config
|
|
||||||
#COPY b/web/config/before-start-apache /
|
|
||||||
COPY b/web /var/www/app
|
|
||||||
build
|
|
@ -1,4 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setenv REGISTRY=pubdocker.univ-reunion.fr
|
|
||||||
setenv IMAGE=$REGISTRY/GROUP/NAME
|
|
||||||
setenv DIST=d11
|
|
6
lib/dkbuild/templates/php_db/.gitignore
vendored
6
lib/dkbuild/templates/php_db/.gitignore
vendored
@ -1,6 +0,0 @@
|
|||||||
/docker-compose.yml
|
|
||||||
/docker-compose.*.yml
|
|
||||||
/web/Dockerfile
|
|
||||||
/db/Dockerfile
|
|
||||||
.~lock*#
|
|
||||||
.*.swp
|
|
@ -1,37 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setprofiles prod test devel
|
|
||||||
|
|
||||||
if profile prod; then
|
|
||||||
default checkout branch=master
|
|
||||||
elif profile test devel; then
|
|
||||||
default checkout branch=develop
|
|
||||||
fi
|
|
||||||
default composer image=$REGISTRY/image/phpbuilder:$DIST
|
|
||||||
|
|
||||||
## web ########################################################################
|
|
||||||
|
|
||||||
checkout https://git.univ-reunion.fr/sda-php/NAME-app web/b/web
|
|
||||||
composer web/b/web
|
|
||||||
|
|
||||||
dockerfile context=web
|
|
||||||
# -*- coding: utf-8 mode: dockerfile -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
FROM $REGISTRY/image/apache-php-myiccas:$DIST
|
|
||||||
#RUN /debian/pkg i
|
|
||||||
|
|
||||||
#ENV MSMTP_ENABLE=1
|
|
||||||
#COPY b/web/config/msmtp /msmtp-config
|
|
||||||
COPY b/web/config/ssl /ssl-config
|
|
||||||
COPY b/web/config/apache /apache-config
|
|
||||||
COPY b/web/config/php /php-config
|
|
||||||
#COPY b/web/config/before-start-apache /
|
|
||||||
COPY b/web /var/www/app
|
|
||||||
|
|
||||||
## db #########################################################################
|
|
||||||
|
|
||||||
copy web/b/web/config/sqlmig db/config/mariadb/sqlmig
|
|
||||||
|
|
||||||
dockerfile context=db
|
|
||||||
# -*- coding: utf-8 mode: dockerfile -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
FROM $REGISTRY/image/mariadb:$DIST
|
|
||||||
|
|
||||||
COPY config/mariadb /mariadb-config
|
|
@ -1,4 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setenv REGISTRY=pubdocker.univ-reunion.fr
|
|
||||||
setenv IMAGE=$REGISTRY/GROUP/NAME
|
|
||||||
setenv DIST=d11
|
|
@ -1,12 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: yaml -*- vim:sw=2:sts=2:et:ai:si:sta:fenc=utf-8
|
|
||||||
version: "3.7"
|
|
||||||
|
|
||||||
services:
|
|
||||||
db:
|
|
||||||
image: $REGISTRY/devel/GROUP/NAME-db
|
|
||||||
|
|
||||||
web:
|
|
||||||
image: $REGISTRY/devel/GROUP/NAME-web
|
|
||||||
environment:
|
|
||||||
- APP_PROFILE=devel
|
|
||||||
- BASE_URL=http://NAME.self
|
|
@ -1,14 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: yaml -*- vim:sw=2:sts=2:et:ai:si:sta:fenc=utf-8
|
|
||||||
version: "3.7"
|
|
||||||
|
|
||||||
services:
|
|
||||||
db:
|
|
||||||
image: $REGISTRY/GROUP/NAME-db
|
|
||||||
|
|
||||||
web:
|
|
||||||
image: $REGISTRY/GROUP/NAME-web
|
|
||||||
environment:
|
|
||||||
- APP_PROFILE=prod
|
|
||||||
- BASE_URL=https://NAME.univ-reunion.fr
|
|
||||||
extra_hosts:
|
|
||||||
- "casn.univ-reunion.fr:10.85.1.15"
|
|
@ -1,14 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: yaml -*- vim:sw=2:sts=2:et:ai:si:sta:fenc=utf-8
|
|
||||||
version: "3.7"
|
|
||||||
|
|
||||||
services:
|
|
||||||
db:
|
|
||||||
image: $REGISTRY/test/GROUP/NAME-db
|
|
||||||
|
|
||||||
web:
|
|
||||||
image: $REGISTRY/test/GROUP/NAME-web
|
|
||||||
environment:
|
|
||||||
- APP_PROFILE=test
|
|
||||||
- BASE_URL=https://NAME-test.univ-reunion.fr
|
|
||||||
extra_hosts:
|
|
||||||
- "casn.univ-reunion.fr:10.85.1.15"
|
|
@ -1,34 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: yaml -*- vim:sw=2:sts=2:et:ai:si:sta:fenc=utf-8
|
|
||||||
version: "3.7"
|
|
||||||
|
|
||||||
services:
|
|
||||||
db:
|
|
||||||
build: db
|
|
||||||
volumes:
|
|
||||||
- db-data:/var/lib/mysql
|
|
||||||
networks:
|
|
||||||
default:
|
|
||||||
aliases:
|
|
||||||
- NAMEdb
|
|
||||||
deploy:
|
|
||||||
update_config:
|
|
||||||
order: stop-first
|
|
||||||
|
|
||||||
web:
|
|
||||||
build: web
|
|
||||||
volumes:
|
|
||||||
- log-data:/var/log/apache2
|
|
||||||
- session-data:/var/lib/php/sessions
|
|
||||||
extra_hosts:
|
|
||||||
- "smtp.univ.run:10.82.70.46"
|
|
||||||
- "vs-apoprod-bdd.univ.run:10.82.91.11"
|
|
||||||
- "vs-apotest-bdd.univ.run:10.82.91.13"
|
|
||||||
- "vs-apodevp-bdd.univ.run:10.82.91.15"
|
|
||||||
deploy:
|
|
||||||
update_config:
|
|
||||||
order: start-first
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
db-data:
|
|
||||||
log-data:
|
|
||||||
session-data:
|
|
@ -1,8 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
# Description des templates de ce répertoire
|
|
||||||
|
|
||||||
TEMPLATES=(
|
|
||||||
[image]="Image générique basée sur debian"
|
|
||||||
[php]="Application web PHP"
|
|
||||||
[php_db]="Application web PHP avec base de données"
|
|
||||||
)
|
|
5
lib/dkbuild/tests/.gitignore
vendored
5
lib/dkbuild/tests/.gitignore
vendored
@ -1,5 +0,0 @@
|
|||||||
/Dockerfile
|
|
||||||
/src
|
|
||||||
/dest
|
|
||||||
/srcdir/
|
|
||||||
/destdir/
|
|
@ -1,8 +0,0 @@
|
|||||||
# tests
|
|
||||||
|
|
||||||
Lancer un test de cette façon
|
|
||||||
~~~sh
|
|
||||||
../../../dkbuild -j test-xxx
|
|
||||||
~~~
|
|
||||||
|
|
||||||
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary
|
|
@ -1,2 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setenv REGISTRY=docker.jclain.fr
|
|
@ -1,16 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
section "variables de build"
|
|
||||||
setarg A="arg A"
|
|
||||||
resetarg B="arg B"
|
|
||||||
|
|
||||||
info "A=${ARGS[A]}, B=${ARGS[B]}"
|
|
||||||
if [ "${ARGS[A]}" != x ]; then
|
|
||||||
note "\
|
|
||||||
Essayer de relancer avec
|
|
||||||
$(qvals dkbuild -j "$(relpath "$DKBUILD")" --arg A=x --arg B=y)
|
|
||||||
on ne devrait pas pouvoir modifier la valeur de B"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,13 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setenv REGISTRY=pubdocker.univ-reunion.fr
|
|
||||||
setenv IMAGE=$REGISTRY/group/name
|
|
||||||
|
|
||||||
info "IMAGE=$IMAGE"
|
|
||||||
if [ "$REGISTRY" == pubdocker.univ-reunion.fr ]; then
|
|
||||||
note "\
|
|
||||||
Essayer de relancer avec
|
|
||||||
$(qvals dkbuild -j "$(relpath "$DKBUILD")" -c registry.env)
|
|
||||||
La valeur de IMAGE devrait changer"
|
|
||||||
fi
|
|
||||||
|
|
||||||
AUTOBUILD=
|
|
@ -1,15 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
run rm -rf src dest srcdir destdir
|
|
||||||
|
|
||||||
run mkdir srcdir
|
|
||||||
genfile srcdir/src <<<"file"
|
|
||||||
run ln -s src srcdir/link
|
|
||||||
|
|
||||||
copy srcdir destdir
|
|
||||||
if run; then
|
|
||||||
[ -f destdir/src ] || die "destdir/src n'a pas été créé"
|
|
||||||
diff -qr srcdir destdir || die "srcdir et destdir ne sont pas identiques"
|
|
||||||
fi
|
|
||||||
|
|
||||||
AUTOBUILD=
|
|
@ -1,13 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
run rm -rf src dest srcdir destdir
|
|
||||||
|
|
||||||
run mkdir srcdir
|
|
||||||
genfile srcdir/src <<<"file"
|
|
||||||
run ln -s src srcdir/link
|
|
||||||
genfile dest <<<"dest"
|
|
||||||
|
|
||||||
copy srcdir dest
|
|
||||||
info "on ne devrait pas arriver ici"
|
|
||||||
|
|
||||||
AUTOBUILD=
|
|
@ -1,20 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setdists v1-d11 v2-d11 v1-d10
|
|
||||||
setenv IMAGE=dkbuild-tests/distversions
|
|
||||||
|
|
||||||
dockerfile
|
|
||||||
# -*- coding: utf-8 mode: dockerfile -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
FROM scratch
|
|
||||||
ENV var=$DIST-$VERSION
|
|
||||||
build
|
|
||||||
|
|
||||||
info "vérifier les images construites avec
|
|
||||||
dk ls dkbuild-tests/distversions
|
|
||||||
on devrait avoir les images suivantes:
|
|
||||||
dkbuild-tests/distversions:v1-d10
|
|
||||||
dkbuild-tests/distversions:d10 -> v1-d10
|
|
||||||
dkbuild-tests/distversions:v1-d11
|
|
||||||
dkbuild-tests/distversions:v2-d11
|
|
||||||
dkbuild-tests/distversions:d11 -> v2-d11
|
|
||||||
dkbuild-tests/distversions:latest -> v2-d11
|
|
||||||
"
|
|
@ -1,8 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
if runb; then
|
|
||||||
qvals dkbuild -c "${DKBUILD_CONFIGS[0]}" "${DKBUILD_CMD_ARGS[@]}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,14 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
run rm -rf src dest srcdir destdir
|
|
||||||
|
|
||||||
genfile src <<<"file"
|
|
||||||
run mkdir destdir
|
|
||||||
|
|
||||||
copy src destdir
|
|
||||||
if run; then
|
|
||||||
[ -f destdir/src ] || die "destdir/src n'a pas été créé"
|
|
||||||
diff -q src destdir/src || die "src et destdir/src ne sont pas identiques"
|
|
||||||
fi
|
|
||||||
|
|
||||||
AUTOBUILD=
|
|
@ -1,13 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
run rm -rf src dest srcdir destdir
|
|
||||||
|
|
||||||
genfile src <<<"file"
|
|
||||||
|
|
||||||
copy src dest
|
|
||||||
if run; then
|
|
||||||
[ -f dest ] || die "dest n'a pas été créé"
|
|
||||||
diff -q src dest || die "src et dest ne sont pas identiques"
|
|
||||||
fi
|
|
||||||
|
|
||||||
AUTOBUILD=
|
|
@ -1,27 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
run rm -rf src dest srcdir destdir
|
|
||||||
|
|
||||||
run mkdir srcdir
|
|
||||||
genfile srcdir/src <<<"file"
|
|
||||||
run ln -s src srcdir/link
|
|
||||||
|
|
||||||
run mkdir destdir
|
|
||||||
genfile destdir/.gitignore <<<"/a/"
|
|
||||||
|
|
||||||
copy srcdir destdir/a gitignore=destdir
|
|
||||||
copy srcdir destdir/b gitignore=destdir
|
|
||||||
if run; then
|
|
||||||
[ -f destdir/a/src ] || die "destdir/a/src n'a pas été créé"
|
|
||||||
[ -f destdir/b/src ] || die "destdir/b/src n'a pas été créé"
|
|
||||||
[ -L destdir/a/link ] || die "destdir/a/link n'a pas été créé"
|
|
||||||
[ -L destdir/b/link ] || die "destdir/b/link n'a pas été créé"
|
|
||||||
ignored="$(<destdir/.gitignore)"
|
|
||||||
expected="\
|
|
||||||
/a/
|
|
||||||
/b/link
|
|
||||||
/b/src"
|
|
||||||
[ "$ignored" == "$expected" ] || die "les fichiers n'ont pas été ignorés"
|
|
||||||
fi
|
|
||||||
|
|
||||||
AUTOBUILD=
|
|
@ -1,13 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setdists d11 d10
|
|
||||||
setprofiles prod test
|
|
||||||
|
|
||||||
if dist LATEST; then
|
|
||||||
info "$DIST est la distribution la plus récente"
|
|
||||||
fi
|
|
||||||
if profile DEFAULT; then
|
|
||||||
info "$PROFILE est le profil par défaut"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,10 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setdists v1-d11 v2-d11 v1-d10
|
|
||||||
|
|
||||||
if dist LATEST; then
|
|
||||||
info "$DIST est la distribution la plus récente"
|
|
||||||
fi
|
|
||||||
info "version=$VERSION"
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,10 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setprofiles v1-prod v2-prod test
|
|
||||||
|
|
||||||
if profile DEFAULT; then
|
|
||||||
info "$PROFILE est le profil par défaut"
|
|
||||||
fi
|
|
||||||
info "version=$VERSION"
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,16 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
if machine fast5; then
|
|
||||||
setprofiles prod
|
|
||||||
elif machine fast4; then
|
|
||||||
setprofiles test
|
|
||||||
else
|
|
||||||
setprofiles devel test prod
|
|
||||||
fi
|
|
||||||
|
|
||||||
if run; then
|
|
||||||
echo "PROFILE=$PROFILE"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,16 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
section "première section"
|
|
||||||
note "une note"
|
|
||||||
info "une première info"
|
|
||||||
info "une deuxième info"
|
|
||||||
debug "message de debug"
|
|
||||||
|
|
||||||
section "deuxième section"
|
|
||||||
note "une note"
|
|
||||||
info "une première info"
|
|
||||||
info "une deuxième info"
|
|
||||||
debug "message de debug"
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,8 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setenv IMAGE=dkbuild-tests/tags0
|
|
||||||
|
|
||||||
dockerfile
|
|
||||||
# -*- coding: utf-8 mode: dockerfile -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
FROM scratch
|
|
||||||
ENV var=empty
|
|
||||||
build
|
|
@ -1,9 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
setprofiles v1-prod v2-prod
|
|
||||||
setenv IMAGE=dkbuild-tests/tags1
|
|
||||||
|
|
||||||
dockerfile
|
|
||||||
# -*- coding: utf-8 mode: dockerfile -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
FROM scratch
|
|
||||||
ENV var=empty
|
|
||||||
build
|
|
@ -1,16 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
section "variables d'environnement"
|
|
||||||
setenv A="env A"
|
|
||||||
resetenv B="env B"
|
|
||||||
|
|
||||||
info "A=$A, B=$B"
|
|
||||||
if [ "$A" != x ]; then
|
|
||||||
note "\
|
|
||||||
Essayer de relancer avec
|
|
||||||
$(qvals "$0" -j "$(relpath "$DKBUILD")" -e A=x -e B=y)
|
|
||||||
on ne devrait pas pouvoir modifier la valeur de B"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,15 +0,0 @@
|
|||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
|
|
||||||
setenv dne=1
|
|
||||||
setenv de=
|
|
||||||
|
|
||||||
info "dne=$dne de=$de"
|
|
||||||
if [ -n "$dne" -o -z "$de" ]; then
|
|
||||||
note "\
|
|
||||||
Relancer avec
|
|
||||||
$(qvals "$0" -j "$(relpath "$DKBUILD")" -e dne= -e de=1)
|
|
||||||
pour vérifier qu'on peut changer la valeur avec les options en ligne de commande"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# pas de build automatique
|
|
||||||
AUTOBUILD=
|
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname:
|
uecho "$scriptname:
|
||||||
|
@ -7,7 +7,6 @@ NAMES=(
|
|||||||
package.html:javadoc-package
|
package.html:javadoc-package
|
||||||
)
|
)
|
||||||
EXTS=(
|
EXTS=(
|
||||||
lst:empty
|
|
||||||
txt:text
|
txt:text
|
||||||
conf:conf
|
conf:conf
|
||||||
sql:sql
|
sql:sql
|
||||||
@ -51,7 +50,7 @@ TEMPLATES=(
|
|||||||
|
|
||||||
# Scripts à utiliser pour générer les templates
|
# Scripts à utiliser pour générer les templates
|
||||||
TEMPLS=(
|
TEMPLS=(
|
||||||
empty:text text:text conf:text sql:text sieve:text yaml:text
|
text:text conf:text sql:text sieve:text yaml:text
|
||||||
markdown:wiki tiddlywiki:wiki
|
markdown:wiki tiddlywiki:wiki
|
||||||
puml:plantuml iuml:plantuml
|
puml:plantuml iuml:plantuml
|
||||||
shell:shell
|
shell:shell
|
||||||
|
@ -23,9 +23,9 @@ OPTIONS
|
|||||||
}
|
}
|
||||||
|
|
||||||
NAME=text
|
NAME=text
|
||||||
TEMPLATES=(empty text conf sql sieve yaml)
|
TEMPLATES=(text conf sql sieve yaml)
|
||||||
NAMES=()
|
NAMES=()
|
||||||
EXTS=(lst txt conf sql sieve yml yaml)
|
EXTS=(txt conf sql sieve yml yaml)
|
||||||
|
|
||||||
if [ $# -eq 2 ]; then
|
if [ $# -eq 2 ]; then
|
||||||
if [ "$1" == "--matches-template" ]; then
|
if [ "$1" == "--matches-template" ]; then
|
||||||
@ -58,16 +58,6 @@ function check_overwrite() {
|
|||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
function generate_empty() {
|
|
||||||
local file="$1"
|
|
||||||
|
|
||||||
check_overwrite "$1" || return
|
|
||||||
estep "$(ppath "$file")"
|
|
||||||
touch "$file"
|
|
||||||
[ -n "$2" ] && array_add "$2" "$file"
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
function generate_text() {
|
function generate_text() {
|
||||||
local file="$1"
|
local file="$1"
|
||||||
local mode=text
|
local mode=text
|
||||||
@ -160,7 +150,6 @@ for file in "$@"; do
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
case "$t" in
|
case "$t" in
|
||||||
empty) generate_empty "$file" files2edit || r=$?;;
|
|
||||||
text|txt|t) generate_text "$file" files2edit || r=$?;;
|
text|txt|t) generate_text "$file" files2edit || r=$?;;
|
||||||
conf|c) generate_conf "$file" files2edit || r=$?;;
|
conf|c) generate_conf "$file" files2edit || r=$?;;
|
||||||
sql) generate_sql "$file" files2edit || r=$?;;
|
sql) generate_sql "$file" files2edit || r=$?;;
|
||||||
|
@ -14,10 +14,9 @@ rm -f .nutools-devel
|
|||||||
# supprimer fichiers de développement
|
# supprimer fichiers de développement
|
||||||
rm -rf lib/pyulib/{build,devel,migrate,test}
|
rm -rf lib/pyulib/{build,devel,migrate,test}
|
||||||
|
|
||||||
if progexists python2; then
|
|
||||||
# compiler les modules python de support
|
# compiler les modules python de support
|
||||||
estep "Compilation des modules python"
|
estep "Compilation des modules python"
|
||||||
PYTHON=python2
|
progexists python2 && PYTHON=python2 || PYTHON=python
|
||||||
"$PYTHON" -m compileall lib/ulib/support/python
|
"$PYTHON" -m compileall lib/ulib/support/python
|
||||||
#"$PYTHON" -m compileall lib/nulib/python
|
#"$PYTHON" -m compileall lib/nulib/python
|
||||||
|
|
||||||
@ -28,7 +27,6 @@ if progexists python2; then
|
|||||||
ln -s lib/ulib/support/cgiupload.py
|
ln -s lib/ulib/support/cgiupload.py
|
||||||
ln -s lib/ulib/support/cgiparams.py
|
ln -s lib/ulib/support/cgiparams.py
|
||||||
ln -s lib/ulib/support/cgilsxml.py
|
ln -s lib/ulib/support/cgilsxml.py
|
||||||
fi
|
|
||||||
|
|
||||||
# liens pour les scripts shell
|
# liens pour les scripts shell
|
||||||
for i in cg cgs; do
|
for i in cg cgs; do
|
||||||
@ -44,7 +42,6 @@ done
|
|||||||
./ulink --nutools-makelinks
|
./ulink --nutools-makelinks
|
||||||
./doinplace --nutools-makelinks
|
./doinplace --nutools-makelinks
|
||||||
./fndate --nutools-makelinks
|
./fndate --nutools-makelinks
|
||||||
./regcp --nutools-makelinks
|
|
||||||
|
|
||||||
# complétion programmable
|
# complétion programmable
|
||||||
rm -f ~/etc/bashrc.d/bash_completion.nutools # renommé
|
rm -f ~/etc/bashrc.d/bash_completion.nutools # renommé
|
||||||
@ -68,9 +65,6 @@ if [ "$UINST_LOCAL_PROFILES" != auto ]; then
|
|||||||
export UTOOLS_LOCAL_PROFILES=$(qvalr "$UINST_LOCAL_PROFILES")" ~/.nutoolsrc
|
export UTOOLS_LOCAL_PROFILES=$(qvalr "$UINST_LOCAL_PROFILES")" ~/.nutoolsrc
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# copier .dkbuild.env
|
|
||||||
[ -f ~/.dkbuild.env ] || cp lib/dkbuild/dot-dkbuild.env ~/.dkbuild.env
|
|
||||||
|
|
||||||
# identification du système
|
# identification du système
|
||||||
echo "##@before *" >lib/profile.d/0nutools
|
echo "##@before *" >lib/profile.d/0nutools
|
||||||
echo_setv UNAME_SYSTEM "$UNAME_SYSTEM" >>lib/profile.d/0nutools
|
echo_setv UNAME_SYSTEM "$UNAME_SYSTEM" >>lib/profile.d/0nutools
|
||||||
|
@ -5,8 +5,6 @@ source "$ULIBDIR/ulib" || exit 1
|
|||||||
urequire DEFAULTS
|
urequire DEFAULTS
|
||||||
|
|
||||||
cd "$scriptdir/../.."
|
cd "$scriptdir/../.."
|
||||||
|
|
||||||
if progexists python2; then
|
|
||||||
log=/tmp/nutools-pyulib-install.log
|
log=/tmp/nutools-pyulib-install.log
|
||||||
etitle -s "Installation des packages python"
|
etitle -s "Installation des packages python"
|
||||||
enote "Le log de l'installation se trouve dans $log"
|
enote "Le log de l'installation se trouve dans $log"
|
||||||
@ -16,7 +14,6 @@ if progexists python2; then
|
|||||||
# setup.py laisse des fichiers avec les droits de root, et ces fichiers ne
|
# setup.py laisse des fichiers avec les droits de root, et ces fichiers ne
|
||||||
# peuvent être supprimés par l'utilisateur qui lance uinst. Les supprimer ici.
|
# peuvent être supprimés par l'utilisateur qui lance uinst. Les supprimer ici.
|
||||||
rm -rf lib/pyulib/build
|
rm -rf lib/pyulib/build
|
||||||
fi
|
|
||||||
|
|
||||||
dest="@@dest@@"
|
dest="@@dest@@"
|
||||||
for i in ulib ulibsh; do
|
for i in ulib ulibsh; do
|
||||||
|
@ -391,7 +391,7 @@ function get_time_fr() {
|
|||||||
}
|
}
|
||||||
function parse_date() {
|
function parse_date() {
|
||||||
local value="$1" type="${2:-date}"
|
local value="$1" type="${2:-date}"
|
||||||
local now="$(awk 'BEGIN { print mktime(strftime("%Y %m %d 00 00 00")) }')"
|
local now="$(awk 'BEGIN { print mktime(strftime("%Y %m %d 00 00 00 +0400")) }')"
|
||||||
case "$value" in
|
case "$value" in
|
||||||
=*) value="${value#=}";;
|
=*) value="${value#=}";;
|
||||||
+*) value="$(($now + ${value#+} * 86400))";;
|
+*) value="$(($now + ${value#+} * 86400))";;
|
||||||
@ -402,7 +402,7 @@ function parse_date() {
|
|||||||
m = $2 + 0; if (m < 1) m = nm;
|
m = $2 + 0; if (m < 1) m = nm;
|
||||||
if ($3 == "") y = ny;
|
if ($3 == "") y = ny;
|
||||||
else { y = $3 + 0; if (y < 100) y = y + 2000; }
|
else { y = $3 + 0; if (y < 100) y = y + 2000; }
|
||||||
print mktime(sprintf("%04i %02i %02i 00 00 00", y, m, d));
|
print mktime(sprintf("%04i %02i %02i 00 00 00 +0400", y, m, d));
|
||||||
}')";;
|
}')";;
|
||||||
esac
|
esac
|
||||||
case "$type" in
|
case "$type" in
|
||||||
@ -1424,7 +1424,6 @@ function is_archive() {
|
|||||||
name="${name%.jar}"
|
name="${name%.jar}"
|
||||||
name="${name%.war}"
|
name="${name%.war}"
|
||||||
name="${name%.ear}"
|
name="${name%.ear}"
|
||||||
[ -n "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && name="${name%.sh}"
|
|
||||||
[ "$name" != "$1" ]
|
[ "$name" != "$1" ]
|
||||||
}
|
}
|
||||||
function extract_archive() {
|
function extract_archive() {
|
||||||
@ -1446,12 +1445,6 @@ function extract_archive() {
|
|||||||
cd "$destdir"
|
cd "$destdir"
|
||||||
jar xf "$arch" "$@"
|
jar xf "$arch" "$@"
|
||||||
) || return
|
) || return
|
||||||
elif [ -n "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && endswith "$arch" .sh; then
|
|
||||||
(
|
|
||||||
arch="$(abspath "$arch")"
|
|
||||||
cd "$destdir"
|
|
||||||
"${BASH:-/bin/sh}" "$arch" --tar xf "$@"
|
|
||||||
) || return
|
|
||||||
else
|
else
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
@ -1469,7 +1462,6 @@ function get_archive_basename() {
|
|||||||
basename="${basename%.jar}"
|
basename="${basename%.jar}"
|
||||||
basename="${basename%.war}"
|
basename="${basename%.war}"
|
||||||
basename="${basename%.ear}"
|
basename="${basename%.ear}"
|
||||||
[ -n "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && basename="${basename%.sh}"
|
|
||||||
# résultat
|
# résultat
|
||||||
echo "$basename"
|
echo "$basename"
|
||||||
}
|
}
|
||||||
@ -1489,13 +1481,9 @@ function get_archive_appname() {
|
|||||||
appname="${appname%.jar}"
|
appname="${appname%.jar}"
|
||||||
appname="${appname%.war}"
|
appname="${appname%.war}"
|
||||||
appname="${appname%.ear}"
|
appname="${appname%.ear}"
|
||||||
[ -n "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && appname="${appname%.sh}"
|
|
||||||
# supprimer la version et afficher
|
# supprimer la version et afficher
|
||||||
echo "$appname" | awk '{
|
echo "$appname" | awk '{
|
||||||
if (match($0, /-([0-9]{5}(_(VA|VSR)[0-9]+)?)$/, vs)) {
|
if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) {
|
||||||
# version style AMUE, e.g 64070 ou 64070_VA1
|
|
||||||
print substr($0, 1, RSTART - 1)
|
|
||||||
} else if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) {
|
|
||||||
print substr($0, 1, RSTART - 1)
|
print substr($0, 1, RSTART - 1)
|
||||||
} else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) {
|
} else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) {
|
||||||
print substr($0, 1, RSTART - 1)
|
print substr($0, 1, RSTART - 1)
|
||||||
@ -1514,10 +1502,7 @@ function get_archive_versionsuffix() {
|
|||||||
# --> -0.1
|
# --> -0.1
|
||||||
local basename="$(get_archive_basename "$1")"
|
local basename="$(get_archive_basename "$1")"
|
||||||
echo "$basename" | awk '{
|
echo "$basename" | awk '{
|
||||||
if (match($0, /(-[0-9]{5}(_(VA|VSR)[0-9]+)?)$/, vs)) {
|
if (match($0, /([-_.][0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) {
|
||||||
# version style AMUE, e.g 64070 ou 64070_VA1
|
|
||||||
print vs["1"]
|
|
||||||
} else if (match($0, /([-_.][0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) {
|
|
||||||
print vs["1"]
|
print vs["1"]
|
||||||
} else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) {
|
} else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) {
|
||||||
print vs["1"]
|
print vs["1"]
|
||||||
@ -1534,10 +1519,7 @@ function get_archive_version() {
|
|||||||
# --> 0.1
|
# --> 0.1
|
||||||
local basename="$(get_archive_basename "$1")"
|
local basename="$(get_archive_basename "$1")"
|
||||||
echo "$basename" | awk '{
|
echo "$basename" | awk '{
|
||||||
if (match($0, /-([0-9]{5}(_(VA|VSR)[0-9]+)?)$/, vs)) {
|
if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) {
|
||||||
# version style AMUE, e.g 64070 ou 64070_VA1
|
|
||||||
print vs["1"]
|
|
||||||
} else if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) {
|
|
||||||
print vs["1"]
|
print vs["1"]
|
||||||
} else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) {
|
} else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) {
|
||||||
print vs["1"]
|
print vs["1"]
|
||||||
|
@ -154,7 +154,7 @@ function ctmatch_one(ctval, ref, parts, part, i, j, start, end, ste
|
|||||||
#print "final: is " ref " ~ " ctval " ? " (ok? "yes": "no") #DEBUG
|
#print "final: is " ref " ~ " ctval " ? " (ok? "yes": "no") #DEBUG
|
||||||
return ok
|
return ok
|
||||||
}
|
}
|
||||||
function ctmatch_all(M, H, dom, mon, dow, refM, refH, refdom, refmon, refdow, Mok, Hok, alldom, domok, monok, alldow, dowok, doxok) {
|
function ctmatch_all(M, H, dom, mon, dow, refM, refH, refdom, refmon, refdow, Mok, Hok, domok, monok, dowok) {
|
||||||
if (refM == "**ANY**") return 1
|
if (refM == "**ANY**") return 1
|
||||||
|
|
||||||
gsub(/\*/, "0-59", M)
|
gsub(/\*/, "0-59", M)
|
||||||
@ -163,28 +163,16 @@ function ctmatch_all(M, H, dom, mon, dow, refM, refH, refdom, refmon, refdow,
|
|||||||
gsub(/\*/, "0-23", H)
|
gsub(/\*/, "0-23", H)
|
||||||
Hok = ctmatch_one(H, refH)
|
Hok = ctmatch_one(H, refH)
|
||||||
|
|
||||||
alldom = dom == "*"
|
|
||||||
gsub(/\*/, "1-31", dom)
|
gsub(/\*/, "1-31", dom)
|
||||||
domok = ctmatch_one(dom, refdom)
|
domok = ctmatch_one(dom, refdom)
|
||||||
|
|
||||||
gsub(/\*/, "1-12", mon)
|
gsub(/\*/, "1-12", mon)
|
||||||
monok = ctmatch_one(mon, refmon)
|
monok = ctmatch_one(mon, refmon)
|
||||||
|
|
||||||
alldow = dow == "*"
|
|
||||||
gsub(/\*/, "1-7", dow)
|
gsub(/\*/, "1-7", dow)
|
||||||
dowok = ctmatch_one(dow, refdow)
|
dowok = ctmatch_one(dow, refdow)
|
||||||
|
|
||||||
if (alldom && alldow) {
|
return Mok && Hok && monok && (domok || dowok)
|
||||||
doxok = 1
|
|
||||||
} else if (alldom) {
|
|
||||||
doxok = dowok
|
|
||||||
} else if (alldow) {
|
|
||||||
doxok = domok
|
|
||||||
} else {
|
|
||||||
doxok = domok || dowok
|
|
||||||
}
|
|
||||||
|
|
||||||
return Mok && Hok && monok && doxok
|
|
||||||
}
|
}
|
||||||
function print_cmd(cmd) {
|
function print_cmd(cmd) {
|
||||||
print "__ctexec " quote_value(cmd)
|
print "__ctexec " quote_value(cmd)
|
||||||
|
162
lib/ulib/java
162
lib/ulib/java
@ -15,8 +15,6 @@ JAVA_VMS6=(); JAVA_HOMES6=()
|
|||||||
JAVA_VMS7=(); JAVA_HOMES7=()
|
JAVA_VMS7=(); JAVA_HOMES7=()
|
||||||
JAVA_VMS8=(); JAVA_HOMES8=()
|
JAVA_VMS8=(); JAVA_HOMES8=()
|
||||||
JAVA_VMS11=(); JAVA_HOMES11=()
|
JAVA_VMS11=(); JAVA_HOMES11=()
|
||||||
JAVA_VMS17=(); JAVA_HOMES17=()
|
|
||||||
JAVA_VMS21=(); JAVA_HOMES21=()
|
|
||||||
# versions locales 32 bits
|
# versions locales 32 bits
|
||||||
JAVA32_VMS1_3=(); JAVA32_HOMES1_3=()
|
JAVA32_VMS1_3=(); JAVA32_HOMES1_3=()
|
||||||
JAVA32_VMS1_4=(); JAVA32_HOMES1_4=()
|
JAVA32_VMS1_4=(); JAVA32_HOMES1_4=()
|
||||||
@ -25,16 +23,12 @@ JAVA32_VMS6=(); JAVA32_HOMES6=()
|
|||||||
JAVA32_VMS7=(); JAVA32_HOMES7=()
|
JAVA32_VMS7=(); JAVA32_HOMES7=()
|
||||||
JAVA32_VMS8=(); JAVA32_HOMES8=()
|
JAVA32_VMS8=(); JAVA32_HOMES8=()
|
||||||
JAVA32_VMS11=(); JAVA32_HOMES11=()
|
JAVA32_VMS11=(); JAVA32_HOMES11=()
|
||||||
JAVA32_VMS17=(); JAVA32_HOMES17=()
|
|
||||||
JAVA32_VMS21=(); JAVA32_HOMES21=()
|
|
||||||
# versions locales 64 bits
|
# versions locales 64 bits
|
||||||
JAVA64_VMS5=(); JAVA64_HOMES5=()
|
JAVA64_VMS5=(); JAVA64_HOMES5=()
|
||||||
JAVA64_VMS6=(); JAVA64_HOMES6=()
|
JAVA64_VMS6=(); JAVA64_HOMES6=()
|
||||||
JAVA64_VMS7=(); JAVA64_HOMES7=()
|
JAVA64_VMS7=(); JAVA64_HOMES7=()
|
||||||
JAVA64_VMS8=(); JAVA64_HOMES8=()
|
JAVA64_VMS8=(); JAVA64_HOMES8=()
|
||||||
JAVA64_VMS11=(); JAVA64_HOMES11=()
|
JAVA64_VMS11=(); JAVA64_HOMES11=()
|
||||||
JAVA64_VMS17=(); JAVA64_HOMES17=()
|
|
||||||
JAVA64_VMS21=(); JAVA64_HOMES21=()
|
|
||||||
# version sélectionnée
|
# version sélectionnée
|
||||||
SELECTED_JAVA_VM=; SELECTED_JAVA_HOME=
|
SELECTED_JAVA_VM=; SELECTED_JAVA_HOME=
|
||||||
SELECTED_JAVA=; SELECTED_JAVAC=
|
SELECTED_JAVA=; SELECTED_JAVAC=
|
||||||
@ -123,22 +117,6 @@ function __java_compute_vms() {
|
|||||||
__java_add HOMES11 "$HOME/opt/jvm64/$vm" 64
|
__java_add HOMES11 "$HOME/opt/jvm64/$vm" 64
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" jdk17)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
v="${vm#jdk}"
|
|
||||||
if [ "$v" == 17 ]; then
|
|
||||||
__java_add VMS17 "$vm" 64
|
|
||||||
__java_add HOMES17 "$HOME/opt/jvm64/$vm" 64
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" jdk21)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
v="${vm#jdk}"
|
|
||||||
if [ "$v" == 21 ]; then
|
|
||||||
__java_add VMS21 "$vm" 64
|
|
||||||
__java_add HOMES21 "$HOME/opt/jvm64/$vm" 64
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk1.5.*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk1.5.*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
__java_add VMS5 "$vm" 64
|
__java_add VMS5 "$vm" 64
|
||||||
@ -164,16 +142,6 @@ function __java_compute_vms() {
|
|||||||
__java_add VMS11 "$vm" 64
|
__java_add VMS11 "$vm" 64
|
||||||
__java_add HOMES11 "$HOME/opt/jvm64/$vm" 64
|
__java_add HOMES11 "$HOME/opt/jvm64/$vm" 64
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk-17.*" | LANG=C sort -r)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
__java_add VMS17 "$vm" 64
|
|
||||||
__java_add HOMES17 "$HOME/opt/jvm64/$vm" 64
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk-21.*" | LANG=C sort -r)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
__java_add VMS21 "$vm" 64
|
|
||||||
__java_add HOMES21 "$HOME/opt/jvm64/$vm" 64
|
|
||||||
done
|
|
||||||
# Puis chercher dans les JVMs installées manuellement dans ~/opt
|
# Puis chercher dans les JVMs installées manuellement dans ~/opt
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" "sun-jdk-*")"
|
array_from_lines vms "$(list_dirs "$HOME/opt" "sun-jdk-*")"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
@ -203,22 +171,6 @@ function __java_compute_vms() {
|
|||||||
__java_add HOMES11 "$HOME/opt/$vm"
|
__java_add HOMES11 "$HOME/opt/$vm"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" jdk17)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
v="${vm#jdk}"
|
|
||||||
if [ "$v" == 17 ]; then
|
|
||||||
__java_add VMS17 "$vm"
|
|
||||||
__java_add HOMES17 "$HOME/opt/$vm"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" jdk21)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
v="${vm#jdk}"
|
|
||||||
if [ "$v" == 21 ]; then
|
|
||||||
__java_add VMS21 "$vm"
|
|
||||||
__java_add HOMES21 "$HOME/opt/$vm"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" "j2sdk1.4.2*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "$HOME/opt" "j2sdk1.4.2*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
__java_add VMS1_4 "$vm"
|
__java_add VMS1_4 "$vm"
|
||||||
@ -249,16 +201,6 @@ function __java_compute_vms() {
|
|||||||
__java_add VMS11 "$vm"
|
__java_add VMS11 "$vm"
|
||||||
__java_add HOMES11 "$HOME/opt/$vm"
|
__java_add HOMES11 "$HOME/opt/$vm"
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" "jdk-17.*" | LANG=C sort -r)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
__java_add VMS17 "$vm"
|
|
||||||
__java_add HOMES17 "$HOME/opt/$vm"
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" "jdk-21.*" | LANG=C sort -r)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
__java_add VMS21 "$vm"
|
|
||||||
__java_add HOMES21 "$HOME/opt/$vm"
|
|
||||||
done
|
|
||||||
# Puis chercher dans les JVMs installées manuellement dans /opt
|
# Puis chercher dans les JVMs installées manuellement dans /opt
|
||||||
array_from_lines vms "$(list_dirs "/opt" "sun-jdk-*")"
|
array_from_lines vms "$(list_dirs "/opt" "sun-jdk-*")"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
@ -288,22 +230,6 @@ function __java_compute_vms() {
|
|||||||
__java_add HOMES11 "/opt/$vm"
|
__java_add HOMES11 "/opt/$vm"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "/opt" jdk17)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
v="${vm#jdk}"
|
|
||||||
if [ "$v" == 17 ]; then
|
|
||||||
__java_add VMS17 "$vm"
|
|
||||||
__java_add HOMES17 "/opt/$vm"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "/opt" jdk21)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
v="${vm#jdk}"
|
|
||||||
if [ "$v" == 21 ]; then
|
|
||||||
__java_add VMS21 "$vm"
|
|
||||||
__java_add HOMES21 "/opt/$vm"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "/opt" "j2sdk1.4.2*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "/opt" "j2sdk1.4.2*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
__java_add VMS1_4 "$vm"
|
__java_add VMS1_4 "$vm"
|
||||||
@ -334,16 +260,6 @@ function __java_compute_vms() {
|
|||||||
__java_add VMS11 "$vm"
|
__java_add VMS11 "$vm"
|
||||||
__java_add HOMES11 "/opt/$vm"
|
__java_add HOMES11 "/opt/$vm"
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "/opt" "jdk-17.*" | LANG=C sort -r)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
__java_add VMS17 "$vm"
|
|
||||||
__java_add HOMES17 "/opt/$vm"
|
|
||||||
done
|
|
||||||
array_from_lines vms "$(list_dirs "/opt" "jdk-21.*" | LANG=C sort -r)"
|
|
||||||
for vm in "${vms[@]}"; do
|
|
||||||
__java_add VMS21 "$vm"
|
|
||||||
__java_add HOMES21 "/opt/$vm"
|
|
||||||
done
|
|
||||||
# Puis chercher dans les JVMs installées par le système dans
|
# Puis chercher dans les JVMs installées par le système dans
|
||||||
# /usr/lib/jvm
|
# /usr/lib/jvm
|
||||||
if check_sysinfos -d gentoo; then
|
if check_sysinfos -d gentoo; then
|
||||||
@ -396,12 +312,6 @@ function __java_compute_vms() {
|
|||||||
elif [ "$v" == 11 ]; then
|
elif [ "$v" == 11 ]; then
|
||||||
__java_add VMS11 "$vm"
|
__java_add VMS11 "$vm"
|
||||||
__java_add HOMES11 "/usr/lib/jvm/$vm"
|
__java_add HOMES11 "/usr/lib/jvm/$vm"
|
||||||
elif [ "$v" == 17 ]; then
|
|
||||||
__java_add VMS17 "$vm"
|
|
||||||
__java_add HOMES17 "/usr/lib/jvm/$vm"
|
|
||||||
elif [ "$v" == 21 ]; then
|
|
||||||
__java_add VMS21 "$vm"
|
|
||||||
__java_add HOMES21 "/usr/lib/jvm/$vm"
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
if [ -d /usr/lib/j2sdk1.4-sun ]; then
|
if [ -d /usr/lib/j2sdk1.4-sun ]; then
|
||||||
@ -443,7 +353,7 @@ function __java_compute_vms() {
|
|||||||
|
|
||||||
function __java_dump_vms() {
|
function __java_dump_vms() {
|
||||||
local v b i vms homes
|
local v b i vms homes
|
||||||
for v in 1_3 1_4 5 6 7 8 11 17 21; do
|
for v in 1_3 1_4 5 6 7 8 11; do
|
||||||
for b in "" 32 64; do
|
for b in "" 32 64; do
|
||||||
vms="JAVA${b}_VMS${v}[@]"; vms=("${!vms}")
|
vms="JAVA${b}_VMS${v}[@]"; vms=("${!vms}")
|
||||||
homes="JAVA${b}_HOMES${v}[@]"; homes=("${!homes}")
|
homes="JAVA${b}_HOMES${v}[@]"; homes=("${!homes}")
|
||||||
@ -474,7 +384,7 @@ function __java_select_vms() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function __java_select() {
|
function __java_select() {
|
||||||
# Sélectionner la version de java $1 (qui peut être 1_3, 1_4, 5, 6, 7, 8, 11, 17, 21)
|
# Sélectionner la version de java $1 (qui peut être 1_3, 1_4, 5, 6, 7, 8 ou 11)
|
||||||
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
||||||
# version 32bits ou 64 bits. Sinon, la version sélectionnée peut être 32bits
|
# version 32bits ou 64 bits. Sinon, la version sélectionnée peut être 32bits
|
||||||
# ou 64bits selon ce qui est disponible.
|
# ou 64bits selon ce qui est disponible.
|
||||||
@ -518,7 +428,7 @@ function __java_select() {
|
|||||||
|
|
||||||
function __java_select_default() {
|
function __java_select_default() {
|
||||||
# Sélectionner la version de java par défaut. Si JAVA_HOME est défini,
|
# Sélectionner la version de java par défaut. Si JAVA_HOME est défini,
|
||||||
# prendre cette valeur. Sinon, essayer dans l'ordre 5, 6, 7, 8, 11, 17, 21 puis 1_4
|
# prendre cette valeur. Sinon, essayer dans l'ordre 5, 6, 7, 8, 11 puis 1_4
|
||||||
# la version 1_3 n'est jamais sélectionnée automatiquement
|
# la version 1_3 n'est jamais sélectionnée automatiquement
|
||||||
if [ -n "$JAVA_HOME" ]; then
|
if [ -n "$JAVA_HOME" ]; then
|
||||||
export JAVA_HOME # s'assurer que cette variable est exportée
|
export JAVA_HOME # s'assurer que cette variable est exportée
|
||||||
@ -530,7 +440,7 @@ function __java_select_default() {
|
|||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
local vm
|
local vm
|
||||||
for vm in 5 6 7 8 11 17 21 1_4; do
|
for vm in 5 6 7 8 11 1_4; do
|
||||||
__java_select "$vm" && return 0
|
__java_select "$vm" && return 0
|
||||||
done
|
done
|
||||||
return 1
|
return 1
|
||||||
@ -538,54 +448,44 @@ function __java_select_default() {
|
|||||||
|
|
||||||
function select_java() {
|
function select_java() {
|
||||||
# sélectionner la version *minimum* de java correspondant à $1
|
# sélectionner la version *minimum* de java correspondant à $1
|
||||||
# $1 == 1.3|1.3+|1.4|1.4+|1.5|1.5+|1.6|1.6+|1.7|1.7+|1.8|1.8+|11|11+|17|17+|21|21+
|
# $1 == 1.3|1.3+|1.4|1.4+|1.5|1.5+|1.6|1.6+|1.7|1.7+|1.8|1.8+|11|11+
|
||||||
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
||||||
# version 32bits ou 64 bits
|
# version 32bits ou 64 bits
|
||||||
local v vms homes
|
local v vms homes
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
1.3|1.3+)
|
1.3|1.3+)
|
||||||
for v in 1_3 1_4 5 6 7 8; do
|
for v in 1_3 1_4 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.4|1.4+)
|
1.4|1.4+)
|
||||||
for v in 1_4 5 6 7 8; do
|
for v in 1_4 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.5|1.5+|5|5+)
|
1.5|1.5+|5|5+)
|
||||||
for v in 5 6 7 8; do
|
for v in 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.6|1.6+|6|6+)
|
1.6|1.6+|6|6+)
|
||||||
for v in 6 7 8; do
|
for v in 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.7|1.7+|7|7+)
|
1.7|1.7+|7|7+)
|
||||||
for v in 7 8; do
|
for v in 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.8|1.8+|8|8+)
|
1.8|1.8+|8|8+)
|
||||||
for v in 8; do
|
for v in 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
11|11+)
|
11|11+)
|
||||||
for v in 11 17 21; do
|
for v in 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
17|17+)
|
|
||||||
for v in 17 21; do
|
|
||||||
__java_select "$v" "$2" && return 0
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
21|21+)
|
|
||||||
for v in 21; do
|
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@ -595,8 +495,8 @@ function select_java() {
|
|||||||
|
|
||||||
function select_java_exact() {
|
function select_java_exact() {
|
||||||
# sélectionner la version *exacte* de java correspondant à $1
|
# sélectionner la version *exacte* de java correspondant à $1
|
||||||
# $1 == 1.3|1.4|1.5|1.6|1.7|1.8|11|17|21 pour une correspondance exacte
|
# $1 == 1.3|1.4|1.5|1.6|1.7|1.8|11 pour une correspondance exacte
|
||||||
# $1 == 1.3+|1.4+|1.5+|1.6+|1.7+|1.8+|11+|17+|21+ pour une version minimum
|
# $1 == 1.3+|1.4+|1.5+|1.6+|1.7+|1.8+|11+ pour une version minimum
|
||||||
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
||||||
# version 32bits ou 64 bits
|
# version 32bits ou 64 bits
|
||||||
local v vms homes
|
local v vms homes
|
||||||
@ -606,7 +506,7 @@ function select_java_exact() {
|
|||||||
__java_select 1_3 && return 0
|
__java_select 1_3 && return 0
|
||||||
;;
|
;;
|
||||||
1.3+)
|
1.3+)
|
||||||
for v in 1_3 1_4 5 6 7 8; do
|
for v in 1_3 1_4 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@ -614,7 +514,7 @@ function select_java_exact() {
|
|||||||
__java_select 1_4 && return 0
|
__java_select 1_4 && return 0
|
||||||
;;
|
;;
|
||||||
1.4+)
|
1.4+)
|
||||||
for v in 1_4 5 6 7 8; do
|
for v in 1_4 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@ -622,7 +522,7 @@ function select_java_exact() {
|
|||||||
__java_select 5 "$2" && return 0
|
__java_select 5 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
1.5+|5+)
|
1.5+|5+)
|
||||||
for v in 5 6 7 8; do
|
for v in 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@ -630,7 +530,7 @@ function select_java_exact() {
|
|||||||
__java_select 6 "$2" && return 0
|
__java_select 6 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
1.6+|6+)
|
1.6+|6+)
|
||||||
for v in 6 7 8; do
|
for v in 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@ -638,7 +538,7 @@ function select_java_exact() {
|
|||||||
__java_select 7 "$2" && return 0
|
__java_select 7 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
1.7+|7+)
|
1.7+|7+)
|
||||||
for v in 7 8; do
|
for v in 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@ -646,7 +546,7 @@ function select_java_exact() {
|
|||||||
__java_select 8 "$2" && return 0
|
__java_select 8 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
1.8+|8+)
|
1.8+|8+)
|
||||||
for v in 8; do
|
for v in 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@ -654,23 +554,7 @@ function select_java_exact() {
|
|||||||
__java_select 11 "$2" && return 0
|
__java_select 11 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
11+)
|
11+)
|
||||||
for v in 11 17 21; do
|
for v in 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
17)
|
|
||||||
__java_select 17 "$2" && return 0
|
|
||||||
;;
|
|
||||||
17+)
|
|
||||||
for v in 17 21; do
|
|
||||||
__java_select "$v" "$2" && return 0
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
21)
|
|
||||||
__java_select 21 "$2" && return 0
|
|
||||||
;;
|
|
||||||
21+)
|
|
||||||
for v in 21; do
|
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@ -682,9 +566,9 @@ function select_java_any() {
|
|||||||
# Sélectionner la version exacte de java correspondant aux arguments, dans
|
# Sélectionner la version exacte de java correspondant aux arguments, dans
|
||||||
# l'ordre, jusqu'à ce qu'un argument corresponde. DEFAULT correspond à la
|
# l'ordre, jusqu'à ce qu'un argument corresponde. DEFAULT correspond à la
|
||||||
# valeur actuelle de JAVA_HOME, si elle est définie.
|
# valeur actuelle de JAVA_HOME, si elle est définie.
|
||||||
# Si aucun argument n'est défini, on assume "DEFAULT 5 6 7 8 11 17 21 1.4"
|
# Si aucun argument n'est défini, on assume "DEFAULT 5 6 7 8 11 1.4"
|
||||||
local v
|
local v
|
||||||
[ -n "$*" ] || set -- DEFAULT 5 6 7 8 11 17 21 1.4
|
[ -n "$*" ] || set -- DEFAULT 5 6 7 8 11 1.4
|
||||||
for v in "$@"; do
|
for v in "$@"; do
|
||||||
if [ "$v" == DEFAULT ]; then
|
if [ "$v" == DEFAULT ]; then
|
||||||
if [ -n "$JAVA_HOME" ]; then
|
if [ -n "$JAVA_HOME" ]; then
|
||||||
|
@ -213,7 +213,7 @@ function tl_modifyattr() {
|
|||||||
dn = ""
|
dn = ""
|
||||||
}
|
}
|
||||||
sub(/:+$/, "", attr)
|
sub(/:+$/, "", attr)
|
||||||
if (tolower(lastattr) != tolower(attr)) {
|
if (lastattr != attr) {
|
||||||
if (lastattr != "") {
|
if (lastattr != "") {
|
||||||
print "-"
|
print "-"
|
||||||
}
|
}
|
||||||
@ -248,7 +248,7 @@ function tl_deleteattr() {
|
|||||||
dn = ""
|
dn = ""
|
||||||
}
|
}
|
||||||
sub(/:+$/, "", attr)
|
sub(/:+$/, "", attr)
|
||||||
if (tolower(lastattr) != tolower(attr)) {
|
if (lastattr != attr) {
|
||||||
if (lastattr != "") {
|
if (lastattr != "") {
|
||||||
print "-"
|
print "-"
|
||||||
}
|
}
|
||||||
|
30
lib/ulib/pff
30
lib/ulib/pff
@ -117,21 +117,8 @@ function pff_get_first_profile() {
|
|||||||
function pff_get_local_files() {
|
function pff_get_local_files() {
|
||||||
# afficher tous les fichiers locaux exprimés relativement au répertoire du
|
# afficher tous les fichiers locaux exprimés relativement au répertoire du
|
||||||
# projet pff $1
|
# projet pff $1
|
||||||
local pffdir="$1" files file dirs dir isald
|
local pffdir="$1"
|
||||||
files="$(find "$pffdir/pff/Base" -type f | sed "s|^$pffdir/pff/Base/||" | grep -v '/__pv-[^/_]*__[^/]*$')"
|
find "$pffdir/pff/Base" -type f | sed "s|^$pffdir/pff/Base/||" | grep -v '__pv-.*__$'
|
||||||
dirs="$(echo "$files" | grep '/\.pffdir$' | sed 's/\.pffdir$//')"
|
|
||||||
setx -a files=echo "$files"
|
|
||||||
setx -a dirs=echo "$dirs"
|
|
||||||
for file in "${files[@]}"; do
|
|
||||||
isald=
|
|
||||||
for dir in "${dirs[@]}"; do
|
|
||||||
if [ "${file#$dir}" != "$file" ]; then
|
|
||||||
isald=1
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
[ -z "$isald" -o "$file" == "${dir}.pffdir" ] && echo "$file"
|
|
||||||
done
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function pff_get_rfile() {
|
function pff_get_rfile() {
|
||||||
@ -266,18 +253,7 @@ function pff_select_profile() {
|
|||||||
setx -a lfiles=pff_get_local_files "$pffdir"
|
setx -a lfiles=pff_get_local_files "$pffdir"
|
||||||
for lfile in "${lfiles[@]}"; do
|
for lfile in "${lfiles[@]}"; do
|
||||||
src="$pffdir/pff/Current/$lfile"
|
src="$pffdir/pff/Current/$lfile"
|
||||||
if [[ "$lfile" == */.pffdir ]]; then
|
if [ -f "$pffdir/pff/$profile/$lfile" ]; then
|
||||||
# répertoires entiers
|
|
||||||
lfile="${lfile%/.pffdir}"
|
|
||||||
src="${src%/.pffdir}"
|
|
||||||
if [ -d "$pffdir/pff/$profile/$lfile" ]; then
|
|
||||||
dest="$profile/$lfile"
|
|
||||||
elif [ "$profile" != Common -a -d "$pffdir/pff/Common/$lfile" ]; then
|
|
||||||
dest="Common/$lfile"
|
|
||||||
else
|
|
||||||
dest="Base/$lfile"
|
|
||||||
fi
|
|
||||||
elif [ -f "$pffdir/pff/$profile/$lfile" ]; then
|
|
||||||
dest="$profile/$lfile"
|
dest="$profile/$lfile"
|
||||||
elif [ "$profile" != Common -a -f "$pffdir/pff/Common/$lfile" ]; then
|
elif [ "$profile" != Common -a -f "$pffdir/pff/Common/$lfile" ]; then
|
||||||
dest="Common/$lfile"
|
dest="Common/$lfile"
|
||||||
|
@ -18,11 +18,11 @@ function is_any_branch() {
|
|||||||
case "$spec" in
|
case "$spec" in
|
||||||
m|master)
|
m|master)
|
||||||
[ -n "$r" ] || r=1
|
[ -n "$r" ] || r=1
|
||||||
[ "$branch" == master ] && return 0
|
[ "$branch" == "master" ] && return 0
|
||||||
;;
|
;;
|
||||||
d|develop)
|
d|develop)
|
||||||
[ -n "$r" ] || r=1
|
[ -n "$r" ] || r=1
|
||||||
[ "$branch" == develop ] && return 0
|
[ "$branch" == "develop" ] && return 0
|
||||||
;;
|
;;
|
||||||
r|release)
|
r|release)
|
||||||
[ -n "$r" ] || r=1
|
[ -n "$r" ] || r=1
|
||||||
@ -34,21 +34,20 @@ function is_any_branch() {
|
|||||||
;;
|
;;
|
||||||
f|feature|t|topic)
|
f|feature|t|topic)
|
||||||
[ -n "$r" ] || r=1
|
[ -n "$r" ] || r=1
|
||||||
[ "$branch" == master ] && continue
|
[ "$branch" == "master" ] && continue
|
||||||
[ "$branch" == develop ] && continue
|
[ "$branch" == "develop" ] && continue
|
||||||
[[ "$branch" == release-* ]] && continue
|
[[ "$branch" == release-* ]] && continue
|
||||||
[[ "$branch" == hotfix-* ]] && continue
|
[[ "$branch" == hotfix-* ]] && continue
|
||||||
[ -n "$annex" -a "$branch" == "git-annex" ] && continue
|
[ -n "$annex" -a "$branch" == "git-annex" ] && continue
|
||||||
[[ "$branch" == wip/* ]] && return 0
|
|
||||||
[[ "$branch" == */* ]] && continue
|
[[ "$branch" == */* ]] && continue
|
||||||
return 0
|
return 0
|
||||||
;;
|
;;
|
||||||
-m|-master)
|
-m|-master)
|
||||||
[ -n "$r" ] || r=0
|
[ -n "$r" ] || r=0
|
||||||
[ "$branch" == master ] && return 1;;
|
[ "$branch" == "master" ] && return 1;;
|
||||||
-d|-develop)
|
-d|-develop)
|
||||||
[ -n "$r" ] || r=0
|
[ -n "$r" ] || r=0
|
||||||
[ "$branch" == develop ] && return 1;;
|
[ "$branch" == "develop" ] && return 1;;
|
||||||
-r|-release)
|
-r|-release)
|
||||||
[ -n "$r" ] || r=0
|
[ -n "$r" ] || r=0
|
||||||
[[ "$branch" == release-* ]] && return 1;;
|
[[ "$branch" == release-* ]] && return 1;;
|
||||||
@ -57,12 +56,11 @@ function is_any_branch() {
|
|||||||
[[ "$branch" == hotfix-* ]] && return 1;;
|
[[ "$branch" == hotfix-* ]] && return 1;;
|
||||||
-f|-feature|-t|-topic)
|
-f|-feature|-t|-topic)
|
||||||
[ -n "$r" ] || r=0
|
[ -n "$r" ] || r=0
|
||||||
[ "$branch" == master ] && continue
|
[ "$branch" == "master" ] && continue
|
||||||
[ "$branch" == develop ] && continue
|
[ "$branch" == "develop" ] && continue
|
||||||
[[ "$branch" == release-* ]] && continue
|
[[ "$branch" == release-* ]] && continue
|
||||||
[[ "$branch" == hotfix-* ]] && continue
|
[[ "$branch" == hotfix-* ]] && continue
|
||||||
[ -n "$annex" -a "$branch" == "git-annex" ] && continue
|
[ -n "$annex" -a "$branch" == "git-annex" ] && continue
|
||||||
[[ "$branch" == wip/* ]] && return 1
|
|
||||||
[[ "$branch" == */* ]] && continue
|
[[ "$branch" == */* ]] && continue
|
||||||
return 1
|
return 1
|
||||||
;;
|
;;
|
||||||
@ -91,7 +89,7 @@ function list_feature_branches() {
|
|||||||
grep -vF develop |
|
grep -vF develop |
|
||||||
grep -v '^release-' |
|
grep -v '^release-' |
|
||||||
grep -v '^hotfix-' |
|
grep -v '^hotfix-' |
|
||||||
grep -Pv '(?<!^wip)/' |
|
grep -v '/' |
|
||||||
if git_have_annex; then
|
if git_have_annex; then
|
||||||
grep -vF git-annex
|
grep -vF git-annex
|
||||||
else
|
else
|
||||||
|
@ -65,15 +65,7 @@ export TMPDIR="${TMPDIR:-${TMP:-${TEMP:-/tmp}}}"
|
|||||||
[ -f /etc/debian_chroot ] && UTOOLS_CHROOT=1
|
[ -f /etc/debian_chroot ] && UTOOLS_CHROOT=1
|
||||||
[ -f /etc/nutoolsrc ] && . /etc/nutoolsrc
|
[ -f /etc/nutoolsrc ] && . /etc/nutoolsrc
|
||||||
[ -f ~/.nutoolsrc ] && . ~/.nutoolsrc
|
[ -f ~/.nutoolsrc ] && . ~/.nutoolsrc
|
||||||
|
true
|
||||||
UNAME_SYSTEM=`uname -s`
|
|
||||||
[ "${UNAME_SYSTEM#CYGWIN}" != "$UNAME_SYSTEM" ] && UNAME_SYSTEM=Cygwin
|
|
||||||
[ "${UNAME_SYSTEM#MINGW32}" != "$UNAME_SYSTEM" ] && UNAME_SYSTEM=Mingw
|
|
||||||
UNAME_MACHINE=`uname -m`
|
|
||||||
if [ -n "$UTOOLS_CHROOT" ]; then
|
|
||||||
[ -n "$UTOOLS_UNAME_SYSTEM" ] && eval "UNAME_SYSTEM=$UTOOLS_UNAME_SYSTEM"
|
|
||||||
[ -n "$UTOOLS_UNAME_MACHINE" ] && eval "UNAME_MACHINE=$UTOOLS_UNAME_MACHINE"
|
|
||||||
fi
|
|
||||||
##@inc]base.init
|
##@inc]base.init
|
||||||
##@inc[base.core
|
##@inc[base.core
|
||||||
## Fonctions de base: fondement
|
## Fonctions de base: fondement
|
||||||
@ -168,44 +160,43 @@ function qwc() {
|
|||||||
s="${s//\"/\\\"}"
|
s="${s//\"/\\\"}"
|
||||||
s="${s//\$/\\\$}"
|
s="${s//\$/\\\$}"
|
||||||
s="${s//\`/\\\`}"
|
s="${s//\`/\\\`}"
|
||||||
local r a b c
|
local r a b
|
||||||
while [ -n "$s" ]; do
|
while [ -n "$s" ]; do
|
||||||
a=; b=; c=
|
if [[ "$s" == *\** ]]; then
|
||||||
a=; [[ "$s" == *\** ]] && { a="${s%%\**}"; a=${#a}; }
|
if [[ "$s" == *\?* ]]; then
|
||||||
b=; [[ "$s" == *\?* ]] && { b="${s%%\?*}"; b=${#b}; }
|
a="${s%%\**}"
|
||||||
c=; [[ "$s" == *\[* ]] && { c="${s%%\[*}"; c=${#c}; }
|
b="${s%%\?*}"
|
||||||
if [ -z "$a" -a -z "$b" -a -z "$c" ]; then
|
if [ ${#a} -lt ${#b} ]; then
|
||||||
r="$r\"$s\""
|
s="${s#*\*}"
|
||||||
break
|
r="$r\"$a\"*"
|
||||||
|
else
|
||||||
|
s="${s#*\?}"
|
||||||
|
r="$r\"$b\"?"
|
||||||
fi
|
fi
|
||||||
if [ -n "$a" ]; then
|
else
|
||||||
[ -n "$b" ] && [ $a -lt $b ] && b=
|
|
||||||
[ -n "$c" ] && [ $a -lt $c ] && c=
|
|
||||||
fi
|
|
||||||
if [ -n "$b" ]; then
|
|
||||||
[ -n "$a" ] && [ $b -lt $a ] && a=
|
|
||||||
[ -n "$c" ] && [ $b -lt $c ] && c=
|
|
||||||
fi
|
|
||||||
if [ -n "$c" ]; then
|
|
||||||
[ -n "$a" ] && [ $c -lt $a ] && a=
|
|
||||||
[ -n "$b" ] && [ $c -lt $b ] && b=
|
|
||||||
fi
|
|
||||||
if [ -n "$a" ]; then # PREFIX*
|
|
||||||
a="${s%%\**}"
|
a="${s%%\**}"
|
||||||
s="${s#*\*}"
|
s="${s#*\*}"
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
r="$r\"$a\"*"
|
||||||
r="$r*"
|
fi
|
||||||
elif [ -n "$b" ]; then # PREFIX?
|
elif [[ "$s" == *\?* ]]; then
|
||||||
|
if [[ "$s" == *\** ]]; then
|
||||||
|
a="${s%%\**}"
|
||||||
|
b="${s%%\?*}"
|
||||||
|
if [ ${#a} -lt ${#b} ]; then
|
||||||
|
s="${s#*\*}"
|
||||||
|
r="$r\"$a\"*"
|
||||||
|
else
|
||||||
|
s="${s#*\?}"
|
||||||
|
r="$r\"$b\"?"
|
||||||
|
fi
|
||||||
|
else
|
||||||
a="${s%%\?*}"
|
a="${s%%\?*}"
|
||||||
s="${s#*\?}"
|
s="${s#*\?}"
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
r="$r\"$a\"?"
|
||||||
r="$r?"
|
fi
|
||||||
elif [ -n "$c" ]; then # PREFIX[class]
|
else
|
||||||
a="${s%%\[*}"
|
r="$r\"$s\""
|
||||||
b="${s#*\[}"; b="${b%%\]*}"
|
break
|
||||||
s="${s:$((${#a} + ${#b} + 2))}"
|
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
|
||||||
r="$r[$b]"
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
recho_ "$r"
|
recho_ "$r"
|
||||||
@ -233,48 +224,6 @@ function echo_setv() {
|
|||||||
fi
|
fi
|
||||||
echo "$__s_var=$(qvalr "$*")"
|
echo "$__s_var=$(qvalr "$*")"
|
||||||
}
|
}
|
||||||
function echo_setv2() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
fi
|
|
||||||
if [ $# -eq 0 ]; then
|
|
||||||
echo_setv "$__s_var" "${!__s_var}"
|
|
||||||
else
|
|
||||||
echo_setv "$__s_var" "$@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
function seta() {
|
|
||||||
local __s_array="$1"; shift
|
|
||||||
if [[ "$__s_array" == *=* ]]; then
|
|
||||||
set -- "${__s_array#*=}" "$@"
|
|
||||||
__s_array="${__s_array%%=*}"
|
|
||||||
fi
|
|
||||||
eval "$__s_array=(\"\$@\")"
|
|
||||||
}
|
|
||||||
function _seta() {
|
|
||||||
local __s_array="$1"; shift
|
|
||||||
eval "$__s_array=(\"\$@\")"
|
|
||||||
}
|
|
||||||
function echo_seta() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
fi
|
|
||||||
echo "$__s_var=($(qvals "$@"))"
|
|
||||||
}
|
|
||||||
function echo_seta2() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
elif [ $# -eq 0 ]; then
|
|
||||||
eval "set -- \"\${$__s_var[@]}\""
|
|
||||||
fi
|
|
||||||
echo "$__s_var=($(qvals "$@"))"
|
|
||||||
}
|
|
||||||
function setx() {
|
function setx() {
|
||||||
if [ "$1" == -a ]; then
|
if [ "$1" == -a ]; then
|
||||||
shift
|
shift
|
||||||
@ -798,19 +747,6 @@ function yesval() {
|
|||||||
is_yes "$1" && echo 1
|
is_yes "$1" && echo 1
|
||||||
}
|
}
|
||||||
|
|
||||||
function setyesval() {
|
|
||||||
is_yes "$2" && _setv "$1" 1 || _setv "$1" ""
|
|
||||||
}
|
|
||||||
function normyesval() {
|
|
||||||
is_yes "${2:-"${!1}"}" && _setv "$1" 1 || _setv "$1" ""
|
|
||||||
}
|
|
||||||
function normyesvals() {
|
|
||||||
local __nyv_yesvar
|
|
||||||
for __nyv_yesvar in "$@"; do
|
|
||||||
is_yes "${!__nyv_yesvar}" && _setv "$__nyv_yesvar" 1 || _setv "$__nyv_yesvar" ""
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
function setb() {
|
function setb() {
|
||||||
local __s_var="$1"; shift
|
local __s_var="$1"; shift
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
if [[ "$__s_var" == *=* ]]; then
|
||||||
@ -1113,44 +1049,43 @@ function qwc() {
|
|||||||
s="${s//\"/\\\"}"
|
s="${s//\"/\\\"}"
|
||||||
s="${s//\$/\\\$}"
|
s="${s//\$/\\\$}"
|
||||||
s="${s//\`/\\\`}"
|
s="${s//\`/\\\`}"
|
||||||
local r a b c
|
local r a b
|
||||||
while [ -n "$s" ]; do
|
while [ -n "$s" ]; do
|
||||||
a=; b=; c=
|
if [[ "$s" == *\** ]]; then
|
||||||
a=; [[ "$s" == *\** ]] && { a="${s%%\**}"; a=${#a}; }
|
if [[ "$s" == *\?* ]]; then
|
||||||
b=; [[ "$s" == *\?* ]] && { b="${s%%\?*}"; b=${#b}; }
|
a="${s%%\**}"
|
||||||
c=; [[ "$s" == *\[* ]] && { c="${s%%\[*}"; c=${#c}; }
|
b="${s%%\?*}"
|
||||||
if [ -z "$a" -a -z "$b" -a -z "$c" ]; then
|
if [ ${#a} -lt ${#b} ]; then
|
||||||
r="$r\"$s\""
|
s="${s#*\*}"
|
||||||
break
|
r="$r\"$a\"*"
|
||||||
|
else
|
||||||
|
s="${s#*\?}"
|
||||||
|
r="$r\"$b\"?"
|
||||||
fi
|
fi
|
||||||
if [ -n "$a" ]; then
|
else
|
||||||
[ -n "$b" ] && [ $a -lt $b ] && b=
|
|
||||||
[ -n "$c" ] && [ $a -lt $c ] && c=
|
|
||||||
fi
|
|
||||||
if [ -n "$b" ]; then
|
|
||||||
[ -n "$a" ] && [ $b -lt $a ] && a=
|
|
||||||
[ -n "$c" ] && [ $b -lt $c ] && c=
|
|
||||||
fi
|
|
||||||
if [ -n "$c" ]; then
|
|
||||||
[ -n "$a" ] && [ $c -lt $a ] && a=
|
|
||||||
[ -n "$b" ] && [ $c -lt $b ] && b=
|
|
||||||
fi
|
|
||||||
if [ -n "$a" ]; then # PREFIX*
|
|
||||||
a="${s%%\**}"
|
a="${s%%\**}"
|
||||||
s="${s#*\*}"
|
s="${s#*\*}"
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
r="$r\"$a\"*"
|
||||||
r="$r*"
|
fi
|
||||||
elif [ -n "$b" ]; then # PREFIX?
|
elif [[ "$s" == *\?* ]]; then
|
||||||
|
if [[ "$s" == *\** ]]; then
|
||||||
|
a="${s%%\**}"
|
||||||
|
b="${s%%\?*}"
|
||||||
|
if [ ${#a} -lt ${#b} ]; then
|
||||||
|
s="${s#*\*}"
|
||||||
|
r="$r\"$a\"*"
|
||||||
|
else
|
||||||
|
s="${s#*\?}"
|
||||||
|
r="$r\"$b\"?"
|
||||||
|
fi
|
||||||
|
else
|
||||||
a="${s%%\?*}"
|
a="${s%%\?*}"
|
||||||
s="${s#*\?}"
|
s="${s#*\?}"
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
r="$r\"$a\"?"
|
||||||
r="$r?"
|
fi
|
||||||
elif [ -n "$c" ]; then # PREFIX[class]
|
else
|
||||||
a="${s%%\[*}"
|
r="$r\"$s\""
|
||||||
b="${s#*\[}"; b="${b%%\]*}"
|
break
|
||||||
s="${s:$((${#a} + ${#b} + 2))}"
|
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
|
||||||
r="$r[$b]"
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
recho_ "$r"
|
recho_ "$r"
|
||||||
@ -1178,48 +1113,6 @@ function echo_setv() {
|
|||||||
fi
|
fi
|
||||||
echo "$__s_var=$(qvalr "$*")"
|
echo "$__s_var=$(qvalr "$*")"
|
||||||
}
|
}
|
||||||
function echo_setv2() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
fi
|
|
||||||
if [ $# -eq 0 ]; then
|
|
||||||
echo_setv "$__s_var" "${!__s_var}"
|
|
||||||
else
|
|
||||||
echo_setv "$__s_var" "$@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
function seta() {
|
|
||||||
local __s_array="$1"; shift
|
|
||||||
if [[ "$__s_array" == *=* ]]; then
|
|
||||||
set -- "${__s_array#*=}" "$@"
|
|
||||||
__s_array="${__s_array%%=*}"
|
|
||||||
fi
|
|
||||||
eval "$__s_array=(\"\$@\")"
|
|
||||||
}
|
|
||||||
function _seta() {
|
|
||||||
local __s_array="$1"; shift
|
|
||||||
eval "$__s_array=(\"\$@\")"
|
|
||||||
}
|
|
||||||
function echo_seta() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
fi
|
|
||||||
echo "$__s_var=($(qvals "$@"))"
|
|
||||||
}
|
|
||||||
function echo_seta2() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
elif [ $# -eq 0 ]; then
|
|
||||||
eval "set -- \"\${$__s_var[@]}\""
|
|
||||||
fi
|
|
||||||
echo "$__s_var=($(qvals "$@"))"
|
|
||||||
}
|
|
||||||
function setx() {
|
function setx() {
|
||||||
if [ "$1" == -a ]; then
|
if [ "$1" == -a ]; then
|
||||||
shift
|
shift
|
||||||
@ -1732,7 +1625,7 @@ function __po_parse_optdescs() {
|
|||||||
option_="${optdesc_%::}"
|
option_="${optdesc_%::}"
|
||||||
if [[ "$2" == *=* ]]; then
|
if [[ "$2" == *=* ]]; then
|
||||||
name_="${2%%=*}="
|
name_="${2%%=*}="
|
||||||
[ -n "$reset_" ] && eval "$name_"
|
[ -n "$reset_" ] && eval "$name_="
|
||||||
else
|
else
|
||||||
name_="$2"
|
name_="$2"
|
||||||
[ -n "$reset_" ] && eval "$name_=()"
|
[ -n "$reset_" ] && eval "$name_=()"
|
||||||
@ -1742,7 +1635,7 @@ function __po_parse_optdescs() {
|
|||||||
option_="${optdesc_%:}"
|
option_="${optdesc_%:}"
|
||||||
if [[ "$2" == *=* ]]; then
|
if [[ "$2" == *=* ]]; then
|
||||||
name_="${2%%=*}="
|
name_="${2%%=*}="
|
||||||
[ -n "$reset_" ] && eval "$name_"
|
[ -n "$reset_" ] && eval "$name_="
|
||||||
else
|
else
|
||||||
name_="$2"
|
name_="$2"
|
||||||
[ -n "$reset_" ] && eval "$name_=()"
|
[ -n "$reset_" ] && eval "$name_=()"
|
||||||
@ -1751,7 +1644,7 @@ function __po_parse_optdescs() {
|
|||||||
else
|
else
|
||||||
option_="$optdesc_"
|
option_="$optdesc_"
|
||||||
name_="$2"
|
name_="$2"
|
||||||
[ -n "$reset_" ] && eval "${2%%=*}="
|
[ -n "$reset_" ] && eval "$name_="
|
||||||
flag_=
|
flag_=
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -2065,44 +1958,43 @@ function qwc() {
|
|||||||
s="${s//\"/\\\"}"
|
s="${s//\"/\\\"}"
|
||||||
s="${s//\$/\\\$}"
|
s="${s//\$/\\\$}"
|
||||||
s="${s//\`/\\\`}"
|
s="${s//\`/\\\`}"
|
||||||
local r a b c
|
local r a b
|
||||||
while [ -n "$s" ]; do
|
while [ -n "$s" ]; do
|
||||||
a=; b=; c=
|
if [[ "$s" == *\** ]]; then
|
||||||
a=; [[ "$s" == *\** ]] && { a="${s%%\**}"; a=${#a}; }
|
if [[ "$s" == *\?* ]]; then
|
||||||
b=; [[ "$s" == *\?* ]] && { b="${s%%\?*}"; b=${#b}; }
|
a="${s%%\**}"
|
||||||
c=; [[ "$s" == *\[* ]] && { c="${s%%\[*}"; c=${#c}; }
|
b="${s%%\?*}"
|
||||||
if [ -z "$a" -a -z "$b" -a -z "$c" ]; then
|
if [ ${#a} -lt ${#b} ]; then
|
||||||
r="$r\"$s\""
|
s="${s#*\*}"
|
||||||
break
|
r="$r\"$a\"*"
|
||||||
|
else
|
||||||
|
s="${s#*\?}"
|
||||||
|
r="$r\"$b\"?"
|
||||||
fi
|
fi
|
||||||
if [ -n "$a" ]; then
|
else
|
||||||
[ -n "$b" ] && [ $a -lt $b ] && b=
|
|
||||||
[ -n "$c" ] && [ $a -lt $c ] && c=
|
|
||||||
fi
|
|
||||||
if [ -n "$b" ]; then
|
|
||||||
[ -n "$a" ] && [ $b -lt $a ] && a=
|
|
||||||
[ -n "$c" ] && [ $b -lt $c ] && c=
|
|
||||||
fi
|
|
||||||
if [ -n "$c" ]; then
|
|
||||||
[ -n "$a" ] && [ $c -lt $a ] && a=
|
|
||||||
[ -n "$b" ] && [ $c -lt $b ] && b=
|
|
||||||
fi
|
|
||||||
if [ -n "$a" ]; then # PREFIX*
|
|
||||||
a="${s%%\**}"
|
a="${s%%\**}"
|
||||||
s="${s#*\*}"
|
s="${s#*\*}"
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
r="$r\"$a\"*"
|
||||||
r="$r*"
|
fi
|
||||||
elif [ -n "$b" ]; then # PREFIX?
|
elif [[ "$s" == *\?* ]]; then
|
||||||
|
if [[ "$s" == *\** ]]; then
|
||||||
|
a="${s%%\**}"
|
||||||
|
b="${s%%\?*}"
|
||||||
|
if [ ${#a} -lt ${#b} ]; then
|
||||||
|
s="${s#*\*}"
|
||||||
|
r="$r\"$a\"*"
|
||||||
|
else
|
||||||
|
s="${s#*\?}"
|
||||||
|
r="$r\"$b\"?"
|
||||||
|
fi
|
||||||
|
else
|
||||||
a="${s%%\?*}"
|
a="${s%%\?*}"
|
||||||
s="${s#*\?}"
|
s="${s#*\?}"
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
r="$r\"$a\"?"
|
||||||
r="$r?"
|
fi
|
||||||
elif [ -n "$c" ]; then # PREFIX[class]
|
else
|
||||||
a="${s%%\[*}"
|
r="$r\"$s\""
|
||||||
b="${s#*\[}"; b="${b%%\]*}"
|
break
|
||||||
s="${s:$((${#a} + ${#b} + 2))}"
|
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
|
||||||
r="$r[$b]"
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
recho_ "$r"
|
recho_ "$r"
|
||||||
@ -2130,48 +2022,6 @@ function echo_setv() {
|
|||||||
fi
|
fi
|
||||||
echo "$__s_var=$(qvalr "$*")"
|
echo "$__s_var=$(qvalr "$*")"
|
||||||
}
|
}
|
||||||
function echo_setv2() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
fi
|
|
||||||
if [ $# -eq 0 ]; then
|
|
||||||
echo_setv "$__s_var" "${!__s_var}"
|
|
||||||
else
|
|
||||||
echo_setv "$__s_var" "$@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
function seta() {
|
|
||||||
local __s_array="$1"; shift
|
|
||||||
if [[ "$__s_array" == *=* ]]; then
|
|
||||||
set -- "${__s_array#*=}" "$@"
|
|
||||||
__s_array="${__s_array%%=*}"
|
|
||||||
fi
|
|
||||||
eval "$__s_array=(\"\$@\")"
|
|
||||||
}
|
|
||||||
function _seta() {
|
|
||||||
local __s_array="$1"; shift
|
|
||||||
eval "$__s_array=(\"\$@\")"
|
|
||||||
}
|
|
||||||
function echo_seta() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
fi
|
|
||||||
echo "$__s_var=($(qvals "$@"))"
|
|
||||||
}
|
|
||||||
function echo_seta2() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
elif [ $# -eq 0 ]; then
|
|
||||||
eval "set -- \"\${$__s_var[@]}\""
|
|
||||||
fi
|
|
||||||
echo "$__s_var=($(qvals "$@"))"
|
|
||||||
}
|
|
||||||
function setx() {
|
function setx() {
|
||||||
if [ "$1" == -a ]; then
|
if [ "$1" == -a ]; then
|
||||||
shift
|
shift
|
||||||
@ -2684,7 +2534,7 @@ function __po_parse_optdescs() {
|
|||||||
option_="${optdesc_%::}"
|
option_="${optdesc_%::}"
|
||||||
if [[ "$2" == *=* ]]; then
|
if [[ "$2" == *=* ]]; then
|
||||||
name_="${2%%=*}="
|
name_="${2%%=*}="
|
||||||
[ -n "$reset_" ] && eval "$name_"
|
[ -n "$reset_" ] && eval "$name_="
|
||||||
else
|
else
|
||||||
name_="$2"
|
name_="$2"
|
||||||
[ -n "$reset_" ] && eval "$name_=()"
|
[ -n "$reset_" ] && eval "$name_=()"
|
||||||
@ -2694,7 +2544,7 @@ function __po_parse_optdescs() {
|
|||||||
option_="${optdesc_%:}"
|
option_="${optdesc_%:}"
|
||||||
if [[ "$2" == *=* ]]; then
|
if [[ "$2" == *=* ]]; then
|
||||||
name_="${2%%=*}="
|
name_="${2%%=*}="
|
||||||
[ -n "$reset_" ] && eval "$name_"
|
[ -n "$reset_" ] && eval "$name_="
|
||||||
else
|
else
|
||||||
name_="$2"
|
name_="$2"
|
||||||
[ -n "$reset_" ] && eval "$name_=()"
|
[ -n "$reset_" ] && eval "$name_=()"
|
||||||
@ -2703,7 +2553,7 @@ function __po_parse_optdescs() {
|
|||||||
else
|
else
|
||||||
option_="$optdesc_"
|
option_="$optdesc_"
|
||||||
name_="$2"
|
name_="$2"
|
||||||
[ -n "$reset_" ] && eval "${2%%=*}="
|
[ -n "$reset_" ] && eval "$name_="
|
||||||
flag_=
|
flag_=
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -3138,44 +2988,43 @@ function qwc() {
|
|||||||
s="${s//\"/\\\"}"
|
s="${s//\"/\\\"}"
|
||||||
s="${s//\$/\\\$}"
|
s="${s//\$/\\\$}"
|
||||||
s="${s//\`/\\\`}"
|
s="${s//\`/\\\`}"
|
||||||
local r a b c
|
local r a b
|
||||||
while [ -n "$s" ]; do
|
while [ -n "$s" ]; do
|
||||||
a=; b=; c=
|
if [[ "$s" == *\** ]]; then
|
||||||
a=; [[ "$s" == *\** ]] && { a="${s%%\**}"; a=${#a}; }
|
if [[ "$s" == *\?* ]]; then
|
||||||
b=; [[ "$s" == *\?* ]] && { b="${s%%\?*}"; b=${#b}; }
|
a="${s%%\**}"
|
||||||
c=; [[ "$s" == *\[* ]] && { c="${s%%\[*}"; c=${#c}; }
|
b="${s%%\?*}"
|
||||||
if [ -z "$a" -a -z "$b" -a -z "$c" ]; then
|
if [ ${#a} -lt ${#b} ]; then
|
||||||
r="$r\"$s\""
|
s="${s#*\*}"
|
||||||
break
|
r="$r\"$a\"*"
|
||||||
|
else
|
||||||
|
s="${s#*\?}"
|
||||||
|
r="$r\"$b\"?"
|
||||||
fi
|
fi
|
||||||
if [ -n "$a" ]; then
|
else
|
||||||
[ -n "$b" ] && [ $a -lt $b ] && b=
|
|
||||||
[ -n "$c" ] && [ $a -lt $c ] && c=
|
|
||||||
fi
|
|
||||||
if [ -n "$b" ]; then
|
|
||||||
[ -n "$a" ] && [ $b -lt $a ] && a=
|
|
||||||
[ -n "$c" ] && [ $b -lt $c ] && c=
|
|
||||||
fi
|
|
||||||
if [ -n "$c" ]; then
|
|
||||||
[ -n "$a" ] && [ $c -lt $a ] && a=
|
|
||||||
[ -n "$b" ] && [ $c -lt $b ] && b=
|
|
||||||
fi
|
|
||||||
if [ -n "$a" ]; then # PREFIX*
|
|
||||||
a="${s%%\**}"
|
a="${s%%\**}"
|
||||||
s="${s#*\*}"
|
s="${s#*\*}"
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
r="$r\"$a\"*"
|
||||||
r="$r*"
|
fi
|
||||||
elif [ -n "$b" ]; then # PREFIX?
|
elif [[ "$s" == *\?* ]]; then
|
||||||
|
if [[ "$s" == *\** ]]; then
|
||||||
|
a="${s%%\**}"
|
||||||
|
b="${s%%\?*}"
|
||||||
|
if [ ${#a} -lt ${#b} ]; then
|
||||||
|
s="${s#*\*}"
|
||||||
|
r="$r\"$a\"*"
|
||||||
|
else
|
||||||
|
s="${s#*\?}"
|
||||||
|
r="$r\"$b\"?"
|
||||||
|
fi
|
||||||
|
else
|
||||||
a="${s%%\?*}"
|
a="${s%%\?*}"
|
||||||
s="${s#*\?}"
|
s="${s#*\?}"
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
r="$r\"$a\"?"
|
||||||
r="$r?"
|
fi
|
||||||
elif [ -n "$c" ]; then # PREFIX[class]
|
else
|
||||||
a="${s%%\[*}"
|
r="$r\"$s\""
|
||||||
b="${s#*\[}"; b="${b%%\]*}"
|
break
|
||||||
s="${s:$((${#a} + ${#b} + 2))}"
|
|
||||||
[ -n "$a" ] && r="$r\"$a\""
|
|
||||||
r="$r[$b]"
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
recho_ "$r"
|
recho_ "$r"
|
||||||
@ -3203,48 +3052,6 @@ function echo_setv() {
|
|||||||
fi
|
fi
|
||||||
echo "$__s_var=$(qvalr "$*")"
|
echo "$__s_var=$(qvalr "$*")"
|
||||||
}
|
}
|
||||||
function echo_setv2() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
fi
|
|
||||||
if [ $# -eq 0 ]; then
|
|
||||||
echo_setv "$__s_var" "${!__s_var}"
|
|
||||||
else
|
|
||||||
echo_setv "$__s_var" "$@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
function seta() {
|
|
||||||
local __s_array="$1"; shift
|
|
||||||
if [[ "$__s_array" == *=* ]]; then
|
|
||||||
set -- "${__s_array#*=}" "$@"
|
|
||||||
__s_array="${__s_array%%=*}"
|
|
||||||
fi
|
|
||||||
eval "$__s_array=(\"\$@\")"
|
|
||||||
}
|
|
||||||
function _seta() {
|
|
||||||
local __s_array="$1"; shift
|
|
||||||
eval "$__s_array=(\"\$@\")"
|
|
||||||
}
|
|
||||||
function echo_seta() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
fi
|
|
||||||
echo "$__s_var=($(qvals "$@"))"
|
|
||||||
}
|
|
||||||
function echo_seta2() {
|
|
||||||
local __s_var="$1"; shift
|
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
|
||||||
set -- "${__s_var#*=}" "$@"
|
|
||||||
__s_var="${__s_var%%=*}"
|
|
||||||
elif [ $# -eq 0 ]; then
|
|
||||||
eval "set -- \"\${$__s_var[@]}\""
|
|
||||||
fi
|
|
||||||
echo "$__s_var=($(qvals "$@"))"
|
|
||||||
}
|
|
||||||
function setx() {
|
function setx() {
|
||||||
if [ "$1" == -a ]; then
|
if [ "$1" == -a ]; then
|
||||||
shift
|
shift
|
||||||
@ -3795,19 +3602,6 @@ function yesval() {
|
|||||||
is_yes "$1" && echo 1
|
is_yes "$1" && echo 1
|
||||||
}
|
}
|
||||||
|
|
||||||
function setyesval() {
|
|
||||||
is_yes "$2" && _setv "$1" 1 || _setv "$1" ""
|
|
||||||
}
|
|
||||||
function normyesval() {
|
|
||||||
is_yes "${2:-"${!1}"}" && _setv "$1" 1 || _setv "$1" ""
|
|
||||||
}
|
|
||||||
function normyesvals() {
|
|
||||||
local __nyv_yesvar
|
|
||||||
for __nyv_yesvar in "$@"; do
|
|
||||||
is_yes "${!__nyv_yesvar}" && _setv "$__nyv_yesvar" 1 || _setv "$__nyv_yesvar" ""
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
function setb() {
|
function setb() {
|
||||||
local __s_var="$1"; shift
|
local __s_var="$1"; shift
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
if [[ "$__s_var" == *=* ]]; then
|
||||||
@ -3870,17 +3664,6 @@ function quote_form() { _qform "$@"; }
|
|||||||
function quoted_form() { qform "$@"; }
|
function quoted_form() { qform "$@"; }
|
||||||
|
|
||||||
|
|
||||||
function set_array_cmd() {
|
|
||||||
if [ $# -eq 1 ]; then echo_seta "$1"
|
|
||||||
elif [ "$2" == @ ]; then echo_seta "$1" "${@:3}"
|
|
||||||
else eval "echo_seta \"\$1\" \"\${$2[@]}\""
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
function set_array() {
|
|
||||||
eval "$(set_array_cmd "$@")"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if [ -n "$BASH_VERSINFO" -a "${BASH_VERSINFO[0]}" -lt 4 ]; then
|
if [ -n "$BASH_VERSINFO" -a "${BASH_VERSINFO[0]}" -lt 4 ]; then
|
||||||
urequire base.string
|
urequire base.string
|
||||||
function strlower() { tr A-Z a-z <<<"$*"; }
|
function strlower() { tr A-Z a-z <<<"$*"; }
|
||||||
@ -3935,22 +3718,30 @@ if [ -n "$BASH_VERSINFO" -a "${BASH_VERSINFO[0]}" -lt 4 ]; then
|
|||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
##@inc]base.compat
|
##@inc]base.compat
|
||||||
##@inc[base.deprecated
|
uprovide base
|
||||||
## Fonctions dépréciées
|
urequire base.init base.core base.string base.num base.bool base.array base.quote base.split base.args base.tools base.compat
|
||||||
uprovide base.deprecated
|
|
||||||
|
|
||||||
|
UNAME_SYSTEM=`uname -s`
|
||||||
function set_array_cmd() {
|
[ "${UNAME_SYSTEM#CYGWIN}" != "$UNAME_SYSTEM" ] && UNAME_SYSTEM=Cygwin
|
||||||
if [ $# -eq 1 ]; then echo_seta2 "$1"
|
[ "${UNAME_SYSTEM#MINGW32}" != "$UNAME_SYSTEM" ] && UNAME_SYSTEM=Mingw
|
||||||
elif [ "$2" == @ ]; then echo_seta "$1" "${@:3}"
|
UNAME_MACHINE=`uname -m`
|
||||||
else eval "echo_seta \"\$1\" \"\${$2[@]}\""
|
if [ -n "$UTOOLS_CHROOT" ]; then
|
||||||
|
[ -n "$UTOOLS_UNAME_SYSTEM" ] && eval "UNAME_SYSTEM=$UTOOLS_UNAME_SYSTEM"
|
||||||
|
[ -n "$UTOOLS_UNAME_MACHINE" ] && eval "UNAME_MACHINE=$UTOOLS_UNAME_MACHINE"
|
||||||
fi
|
fi
|
||||||
}
|
|
||||||
function set_array() {
|
|
||||||
eval "$(set_array_cmd "$@")"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
function setyesval() {
|
||||||
|
is_yes "$2" && _setv "$1" 1 || _setv "$1" ""
|
||||||
|
}
|
||||||
|
function normyesval() {
|
||||||
|
is_yes "${2:-"${!1}"}" && _setv "$1" 1 || _setv "$1" ""
|
||||||
|
}
|
||||||
|
function normyesvals() {
|
||||||
|
local __nyv_yesvar
|
||||||
|
for __nyv_yesvar in "$@"; do
|
||||||
|
is_yes "${!__nyv_yesvar}" && _setv "$__nyv_yesvar" 1 || _setv "$__nyv_yesvar" ""
|
||||||
|
done
|
||||||
|
}
|
||||||
function quote_in() {
|
function quote_in() {
|
||||||
sed 's/\\/\\\\/g
|
sed 's/\\/\\\\/g
|
||||||
s/"/\\"/g
|
s/"/\\"/g
|
||||||
@ -3973,11 +3764,27 @@ function quoted_sargs() {
|
|||||||
done
|
done
|
||||||
recho "$s"
|
recho "$s"
|
||||||
}
|
}
|
||||||
##@inc]base.deprecated
|
|
||||||
uprovide base
|
|
||||||
urequire base.init base.core base.string base.num base.bool base.array base.quote base.split base.args base.tools base.compat
|
|
||||||
urequire base.deprecated
|
|
||||||
|
|
||||||
|
function set_array_cmd() {
|
||||||
|
[ $# -eq 1 ] && set -- "$1" "$1"
|
||||||
|
local __sac_s __sac_v __sac_f
|
||||||
|
__sac_s="$1=("; shift
|
||||||
|
if [ "$1" == "@" ]; then
|
||||||
|
shift
|
||||||
|
else
|
||||||
|
eval "set -- \"\${$1[@]}\""
|
||||||
|
fi
|
||||||
|
__sac_f=1
|
||||||
|
for __sac_v in "$@"; do
|
||||||
|
[ -n "$__sac_f" ] && __sac_f= || __sac_s="$__sac_s "
|
||||||
|
__sac_s="$__sac_s$(qvalm "$__sac_v")"
|
||||||
|
done
|
||||||
|
__sac_s="$__sac_s)"
|
||||||
|
echo "$__sac_s"
|
||||||
|
}
|
||||||
|
function set_array() {
|
||||||
|
eval "$(set_array_cmd "$@")"
|
||||||
|
}
|
||||||
function array_count() {
|
function array_count() {
|
||||||
eval "echo \${#$1[*]}"
|
eval "echo \${#$1[*]}"
|
||||||
}
|
}
|
||||||
@ -4263,25 +4070,22 @@ function get_time_fr() {
|
|||||||
}
|
}
|
||||||
function parse_date() {
|
function parse_date() {
|
||||||
local value="$1" type="${2:-date}"
|
local value="$1" type="${2:-date}"
|
||||||
local now="$(awk 'BEGIN { print mktime(strftime("%Y %m %d 00 00 00")) }')"
|
local now="$(awk 'BEGIN { print mktime(strftime("%Y %m %d 00 00 00 +0400")) }')"
|
||||||
case "$value" in
|
case "$value" in
|
||||||
=*) value="${value#=}";;
|
|
||||||
+*) value="$(($now + ${value#+} * 86400))";;
|
+*) value="$(($now + ${value#+} * 86400))";;
|
||||||
-*) value="$(($now - ${value#-} * 86400))";;
|
|
||||||
*) value="$(<<<"$value" awk -F/ '{
|
*) value="$(<<<"$value" awk -F/ '{
|
||||||
nd = strftime("%d"); nm = strftime("%m"); ny = strftime("%Y")
|
nd = strftime("%d"); nm = strftime("%m"); ny = strftime("%Y")
|
||||||
d = $1 + 0; if (d < 1) d = nd;
|
d = $1 + 0; if (d < 1) d = nd;
|
||||||
m = $2 + 0; if (m < 1) m = nm;
|
m = $2 + 0; if (m < 1) m = nm;
|
||||||
if ($3 == "") y = ny;
|
if ($3 == "") y = ny;
|
||||||
else { y = $3 + 0; if (y < 100) y = y + 2000; }
|
else { y = $3 + 0; if (y < 100) y = y + 2000; }
|
||||||
print mktime(sprintf("%04i %02i %02i 00 00 00", y, m, d));
|
print mktime(sprintf("%04i %02i %02i 00 00 00 +0400", y, m, d));
|
||||||
}')";;
|
}')";;
|
||||||
esac
|
esac
|
||||||
case "$type" in
|
case "$type" in
|
||||||
d|date) awk '{ print strftime("%d/%m/%Y", $0 + 0) }' <<<"$value";;
|
d|date) awk '{ print strftime("%d/%m/%Y", $0 + 0) }' <<<"$value";;
|
||||||
l|ldap) awk '{ print strftime("%Y%m%d%H%M%S+0400", $0 + 0) }' <<<"$value";;
|
l|ldap) awk '{ print strftime("%Y%m%d%H%M%S+0400", $0 + 0) }' <<<"$value";;
|
||||||
m|mysql) awk '{ print strftime("%Y-%m-%d", $0 + 0) }' <<<"$value";;
|
m|mysql) awk '{ print strftime("%Y-%m-%d", $0 + 0) }' <<<"$value";;
|
||||||
t|ts|timestamp) echo "$value";;
|
|
||||||
*) recho "$value";;
|
*) recho "$value";;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
@ -4393,18 +4197,6 @@ function ppath() {
|
|||||||
|
|
||||||
recho "$path"
|
recho "$path"
|
||||||
}
|
}
|
||||||
function ppath2() {
|
|
||||||
local path="$1" cwd="$2"
|
|
||||||
|
|
||||||
path="$(abspath "$path")" # essayer de normaliser le chemin
|
|
||||||
[ -n "$cwd" ] || cwd="$(pwd)"
|
|
||||||
|
|
||||||
[ "$path" = "$cwd" ] && path="../$(basename -- "$path")"
|
|
||||||
[ "$cwd" != "/" -a "$cwd" != "$HOME" ] && path="${path#$cwd/}"
|
|
||||||
[ "${path#$HOME/}" != "$path" ] && path="~${path#$HOME}"
|
|
||||||
|
|
||||||
recho "$path"
|
|
||||||
}
|
|
||||||
function relpath() {
|
function relpath() {
|
||||||
local p="$(abspath "$1" "$3")" cwd="$2"
|
local p="$(abspath "$1" "$3")" cwd="$2"
|
||||||
if [ -z "$cwd" ]; then
|
if [ -z "$cwd" ]; then
|
||||||
@ -4673,13 +4465,13 @@ function testdiff() {
|
|||||||
! quietdiff "$@"
|
! quietdiff "$@"
|
||||||
}
|
}
|
||||||
function testupdated() {
|
function testupdated() {
|
||||||
if [ -n "$3" ]; then return 0
|
if [ -f "$2" ]; then
|
||||||
elif [ -f "$2" ]; then testdiff "$1" "$2"
|
testdiff "$1" "$2"
|
||||||
else return 0
|
else
|
||||||
|
return 0
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
function testnewer() {
|
function testnewer() {
|
||||||
[ -n "$3" ] && return 0
|
|
||||||
test ! -e "$2" -o "$1" -nt "$2"
|
test ! -e "$2" -o "$1" -nt "$2"
|
||||||
}
|
}
|
||||||
function ps_all() {
|
function ps_all() {
|
||||||
@ -4689,9 +4481,7 @@ function progexists() {
|
|||||||
test -n "$1" -a -x "$(which "$1" 2>/dev/null)"
|
test -n "$1" -a -x "$(which "$1" 2>/dev/null)"
|
||||||
}
|
}
|
||||||
function has_python() {
|
function has_python() {
|
||||||
progexists python2 && return 0
|
progexists python
|
||||||
progexists python && return 0
|
|
||||||
return 1
|
|
||||||
}
|
}
|
||||||
function has_gawk() {
|
function has_gawk() {
|
||||||
progexists gawk
|
progexists gawk
|
||||||
@ -4904,23 +4694,10 @@ s/[\xE2\x80\x90\xE2\x80\x91\xE2\x80\x92\xE2\x80\x93\xE2\x80\x94\xE2\x80\x95]/-/g
|
|||||||
s/[‘’]/\x27/g
|
s/[‘’]/\x27/g
|
||||||
s/[«»“”]/"/g
|
s/[«»“”]/"/g
|
||||||
s/[\xC2\xA0\xE2\x80\x87\xE2\x80\xAF\xE2\x81\xA0]/ /g
|
s/[\xC2\xA0\xE2\x80\x87\xE2\x80\xAF\xE2\x81\xA0]/ /g
|
||||||
s/[\xE2\x80\xA6]/.../g
|
|
||||||
s/[œ]/oe/g
|
s/[œ]/oe/g
|
||||||
s/[Œ]/OE/g
|
s/[Œ]/OE/g
|
||||||
s/[æ]/ae/g
|
s/[æ]/ae/g
|
||||||
s/[Æ]/AE/g
|
s/[Æ]/AE/g
|
||||||
s/a\xCC\x80/à/g
|
|
||||||
s/e\xCC\x81/é/g; s/e\xCC\x80/è/g; s/e\xCC\x82/ê/g; s/e\xCC\x88/ë/g
|
|
||||||
s/i\xCC\x88/ï/g; s/i\xCC\x82/î/g
|
|
||||||
s/o\xCC\x82/ô/g; s/o\xCC\x88/ö/g
|
|
||||||
s/u\xCC\x88/ü/g; s/u\xCC\x82/û/g
|
|
||||||
s/c\xCC\xA7/ç/g
|
|
||||||
s/A\xCC\x80/À/g
|
|
||||||
s/E\xCC\x81/É/g; s/E\xCC\x80/È/g; s/E\xCC\x82/Ê/g; s/E\xCC\x88/Ë/g
|
|
||||||
s/I\xCC\x88/Ï/g; s/I\xCC\x82/Î/g
|
|
||||||
s/O\xCC\x82/Ô/g; s/O\xCC\x88/Ö/g
|
|
||||||
s/U\xCC\x88/Ü/g; s/U\xCC\x82/Û/g
|
|
||||||
s/C\xCC\xA7/Ç/g
|
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
function _noaccents() {
|
function _noaccents() {
|
||||||
@ -5054,7 +4831,6 @@ function is_archive() {
|
|||||||
name="${name%.jar}"
|
name="${name%.jar}"
|
||||||
name="${name%.war}"
|
name="${name%.war}"
|
||||||
name="${name%.ear}"
|
name="${name%.ear}"
|
||||||
[ "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && name="${name%.sh}"
|
|
||||||
[ "$name" != "$1" ]
|
[ "$name" != "$1" ]
|
||||||
}
|
}
|
||||||
function extract_archive() {
|
function extract_archive() {
|
||||||
@ -5074,12 +4850,6 @@ function extract_archive() {
|
|||||||
cd "$destdir"
|
cd "$destdir"
|
||||||
jar xf "$arch" "$@"
|
jar xf "$arch" "$@"
|
||||||
) || return
|
) || return
|
||||||
elif [ "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && endswith "$arch" .sh; then
|
|
||||||
(
|
|
||||||
arch="$(abspath "$arch")"
|
|
||||||
cd "$destdir"
|
|
||||||
"${BASH:-/bin/sh}" "$arch" --tar xf "$@"
|
|
||||||
) || return
|
|
||||||
else
|
else
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
@ -5095,7 +4865,6 @@ function get_archive_basename() {
|
|||||||
basename="${basename%.jar}"
|
basename="${basename%.jar}"
|
||||||
basename="${basename%.war}"
|
basename="${basename%.war}"
|
||||||
basename="${basename%.ear}"
|
basename="${basename%.ear}"
|
||||||
[ "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && basename="${basename%.sh}"
|
|
||||||
echo "$basename"
|
echo "$basename"
|
||||||
}
|
}
|
||||||
function get_archive_appname() {
|
function get_archive_appname() {
|
||||||
@ -5109,7 +4878,6 @@ function get_archive_appname() {
|
|||||||
appname="${appname%.jar}"
|
appname="${appname%.jar}"
|
||||||
appname="${appname%.war}"
|
appname="${appname%.war}"
|
||||||
appname="${appname%.ear}"
|
appname="${appname%.ear}"
|
||||||
[ "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && appname="${appname%.sh}"
|
|
||||||
echo "$appname" | awk '{
|
echo "$appname" | awk '{
|
||||||
if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) {
|
if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) {
|
||||||
print substr($0, 1, RSTART - 1)
|
print substr($0, 1, RSTART - 1)
|
||||||
@ -5351,12 +5119,6 @@ function unquote_html(s) {
|
|||||||
gsub(/&/, "\\&", s)
|
gsub(/&/, "\\&", s)
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
function qawk(s) {
|
|
||||||
gsub(/\\/, "\\\\", s)
|
|
||||||
gsub(/"/, "\\\"", s)
|
|
||||||
gsub(/\n/, "\\n", s)
|
|
||||||
return "\"" s "\""
|
|
||||||
}
|
|
||||||
function qval(s) {'"
|
function qval(s) {'"
|
||||||
gsub(/'/, \"'\\\\''\", s)
|
gsub(/'/, \"'\\\\''\", s)
|
||||||
return \"'\" s \"'\"
|
return \"'\" s \"'\"
|
||||||
@ -5440,12 +5202,6 @@ function __parse_date_fr(date, parts, y, m, d) {
|
|||||||
m = int(parts[2])
|
m = int(parts[2])
|
||||||
d = int(parts[1])
|
d = int(parts[1])
|
||||||
return mktime(sprintf("%04i %02i %02i 00 00 00 +0400", y, m, d))
|
return mktime(sprintf("%04i %02i %02i 00 00 00 +0400", y, m, d))
|
||||||
} else if (match(date, /([0-9][0-9]?)\/([0-9][0-9]?)\/([0-9][0-9])/, parts)) {
|
|
||||||
basey = int(strftime("%Y")); basey = basey - basey % 100
|
|
||||||
y = basey + int(parts[3])
|
|
||||||
m = int(parts[2])
|
|
||||||
d = int(parts[1])
|
|
||||||
return mktime(sprintf("%04i %02i %02i 00 00 00 +0400", y, m, d))
|
|
||||||
}
|
}
|
||||||
return -1
|
return -1
|
||||||
}
|
}
|
||||||
@ -6090,7 +5846,7 @@ function pidfile_check() {
|
|||||||
}
|
}
|
||||||
function page_maybe() {
|
function page_maybe() {
|
||||||
if isatty; then
|
if isatty; then
|
||||||
less -XFR "$@"
|
less -XF "$@"
|
||||||
else
|
else
|
||||||
cat
|
cat
|
||||||
fi
|
fi
|
||||||
@ -6802,7 +6558,7 @@ function ask_any() {
|
|||||||
lf="$(strlower "$f")"
|
lf="$(strlower "$f")"
|
||||||
[ "$r" == "$lf" ] && return $i
|
[ "$r" == "$lf" ] && return $i
|
||||||
if [ -z "$defi" ]; then
|
if [ -z "$defi" ]; then
|
||||||
[ -z "${f/[A-Z]/}" ] && defi="$i"
|
[[ "$f" =~ [A-Z] ]] && defi="$i"
|
||||||
fi
|
fi
|
||||||
if [ "$lf" == o ]; then
|
if [ "$lf" == o ]; then
|
||||||
case "$r" in o|y|1|v|t) return $i;; esac
|
case "$r" in o|y|1|v|t) return $i;; esac
|
||||||
@ -6816,8 +6572,7 @@ function ask_any() {
|
|||||||
else
|
else
|
||||||
i=0
|
i=0
|
||||||
while [ $i -lt $count ]; do
|
while [ $i -lt $count ]; do
|
||||||
f="${format:$i:1}"
|
[[ "${format:$i:1}" =~ [A-Z] ]] && return $i
|
||||||
[ -z "${f/[A-Z]/}" ] && return $i
|
|
||||||
i=$(($i + 1))
|
i=$(($i + 1))
|
||||||
done
|
done
|
||||||
return 0
|
return 0
|
||||||
@ -7343,36 +7098,18 @@ SYSDIST_ALIASES=(
|
|||||||
10.7=lion 10.6=snowleopard 10.5=leopard 10.4=tiger 10.3=panther
|
10.7=lion 10.6=snowleopard 10.5=leopard 10.4=tiger 10.3=panther
|
||||||
)
|
)
|
||||||
debianlike_SYSVERS=()
|
debianlike_SYSVERS=()
|
||||||
debian_SYSVERS=(
|
debian_SYSVERS=(stretch jessie wheezy squeeze lenny etch)
|
||||||
forky trixie bookworm bullseye buster stretch jessie wheezy squeeze lenny etch
|
ubuntu_SYSVERS=(oneiric natty maverick lucid karmic jaunty intrepid hardy)
|
||||||
)
|
|
||||||
ubuntu_SYSVERS=(
|
|
||||||
mantic lunar kinetic jammy
|
|
||||||
impish hirsute groovy focal
|
|
||||||
eoan disco cosmic bionic
|
|
||||||
artful zesty yakkety xenial
|
|
||||||
wily vivid utopic trusty
|
|
||||||
saucy raring quantal precise
|
|
||||||
oneiric natty maverick lucid
|
|
||||||
karmic jaunty intrepid hardy
|
|
||||||
)
|
|
||||||
redhatlike_SYSVERS=()
|
redhatlike_SYSVERS=()
|
||||||
ol_SYSVERS=(ol8 ol7 ol6 redhat8 redhat7 redhat6)
|
ol_SYSVERS=(ol7 ol6 redhat7 redhat6)
|
||||||
rhel_SYSVERS=(rhel8 rhel7 rhel6 rhel5 rhel4 redhat8 redhat7 redhat6 redhat5 redhat4)
|
rhel_SYSVERS=(rhel7 rhel6 rhel5 rhel4 redhat7 redhat6 redhat5 redhat4)
|
||||||
fedora_SYSVERS=(fedora14 fedora13 fedora12 fedora11)
|
fedora_SYSVERS=(fedora14 fedora13 fedora12 fedora11)
|
||||||
centos_SYSVERS=(centos7 centos6 centos5 centos4 redhat7 redhat6 redhat5 redhat4)
|
centos_SYSVERS=(centos7 centos6 centos5 centos4 redhat7 redhat6 redhat5 redhat4)
|
||||||
suse_SYSVERS=()
|
suse_SYSVERS=()
|
||||||
gentoo_SYSVERS=()
|
gentoo_SYSVERS=()
|
||||||
SYSVER_ALIASES=(
|
SYSVER_ALIASES=(
|
||||||
14=forky 13=trixie 12=bookworm 11=bullseye 10=buster 9=stretch 8=jessie 7=wheezy 6=squeeze 5=lenny 4=etch
|
9=stretch 8=jessie 7=wheezy 6=squeeze 5=lenny 4=etch
|
||||||
23.10=mantic 23.04=lunar 22.10=kinetic 22.04=jammy
|
11.10=oneiric 11.04=natty 10.10=maverick 10.04=lucid 9.10=karmic 9.04=jaunty 8.10=intrepid 8.04=hardy
|
||||||
21.10=impish 21.04=hirsute 20.10=groovy 20.04=focal
|
|
||||||
19.10=eoan 19.04=disco 18.10=cosmic 18.04=bionic
|
|
||||||
17.10=artful 17.04=zesty 16.10=yakkety 16.04=xenial
|
|
||||||
15.10=wily 15.04=vivid 14.10=utopic 14.04=trusty
|
|
||||||
13.10=saucy 13.04=raring 12.10=quantal 12.04=precise
|
|
||||||
11.10=oneiric 11.04=natty 10.10=maverick 10.04=lucid
|
|
||||||
9.10=karmic 9.04=jaunty 8.10=intrepid 8.04=hardy
|
|
||||||
)
|
)
|
||||||
|
|
||||||
function __setup_ALL_SYSvars() {
|
function __setup_ALL_SYSvars() {
|
||||||
@ -7477,8 +7214,6 @@ function __compute_sysinfos() {
|
|||||||
esac
|
esac
|
||||||
if [ -n "$debian_version" ]; then
|
if [ -n "$debian_version" ]; then
|
||||||
case "$debian_version" in
|
case "$debian_version" in
|
||||||
11*|bullseye*) MYSYSDIST=(debian debianlike); MYSYSVER=(bullseye);;
|
|
||||||
10*|buster*) MYSYSDIST=(debian debianlike); MYSYSVER=(buster);;
|
|
||||||
9*|stretch*) MYSYSDIST=(debian debianlike); MYSYSVER=(stretch);;
|
9*|stretch*) MYSYSDIST=(debian debianlike); MYSYSVER=(stretch);;
|
||||||
8*|jessie*) MYSYSDIST=(debian debianlike); MYSYSVER=(jessie);;
|
8*|jessie*) MYSYSDIST=(debian debianlike); MYSYSVER=(jessie);;
|
||||||
7*|wheezy*) MYSYSDIST=(debian debianlike); MYSYSVER=(wheezy);;
|
7*|wheezy*) MYSYSDIST=(debian debianlike); MYSYSVER=(wheezy);;
|
||||||
@ -7492,7 +7227,6 @@ function __compute_sysinfos() {
|
|||||||
elif [ -n "$oracle_release" ]; then
|
elif [ -n "$oracle_release" ]; then
|
||||||
MYSYSDIST=(ol rhel redhatlike)
|
MYSYSDIST=(ol rhel redhatlike)
|
||||||
case "$oracle_release" in
|
case "$oracle_release" in
|
||||||
Oracle*Linux*release\ 8*) MYSYSVER=(ol8 rhel8 redhat8);;
|
|
||||||
Oracle*Linux*release\ 7*) MYSYSVER=(ol7 rhel7 redhat7);;
|
Oracle*Linux*release\ 7*) MYSYSVER=(ol7 rhel7 redhat7);;
|
||||||
Oracle*Linux*release\ 6*) MYSYSVER=(ol6 rhel6 redhat6);;
|
Oracle*Linux*release\ 6*) MYSYSVER=(ol6 rhel6 redhat6);;
|
||||||
esac
|
esac
|
||||||
@ -7508,12 +7242,10 @@ function __compute_sysinfos() {
|
|||||||
Fedora*13*) MYSYSVER=(fedora13);;
|
Fedora*13*) MYSYSVER=(fedora13);;
|
||||||
Fedora*12*) MYSYSVER=(fedora12);;
|
Fedora*12*) MYSYSVER=(fedora12);;
|
||||||
Fedora*11*) MYSYSVER=(fedora11);;
|
Fedora*11*) MYSYSVER=(fedora11);;
|
||||||
Red*Hat*Enterprise*Linux*release\ 8*) MYSYSVER=(rhel8 redhat8);;
|
|
||||||
Red*Hat*Enterprise*Linux*release\ 7*) MYSYSVER=(rhel7 redhat7);;
|
Red*Hat*Enterprise*Linux*release\ 7*) MYSYSVER=(rhel7 redhat7);;
|
||||||
Red*Hat*Enterprise*Linux*release\ 6*) MYSYSVER=(rhel6 redhat6);;
|
Red*Hat*Enterprise*Linux*release\ 6*) MYSYSVER=(rhel6 redhat6);;
|
||||||
Red*Hat*Enterprise*Linux*release\ 5*) MYSYSVER=(rhel5 redhat5);;
|
Red*Hat*Enterprise*Linux*release\ 5*) MYSYSVER=(rhel5 redhat5);;
|
||||||
Red*Hat*Enterprise*Linux*release\ 4*) MYSYSVER=(rhel4 redhat4);;
|
Red*Hat*Enterprise*Linux*release\ 4*) MYSYSVER=(rhel4 redhat4);;
|
||||||
CentOS*release\ 8*) MYSYSVER=(centos8 redhat8);;
|
|
||||||
CentOS*release\ 7*) MYSYSVER=(centos7 redhat7);;
|
CentOS*release\ 7*) MYSYSVER=(centos7 redhat7);;
|
||||||
CentOS*release\ 6*) MYSYSVER=(centos6 redhat6);;
|
CentOS*release\ 6*) MYSYSVER=(centos6 redhat6);;
|
||||||
CentOS*release\ 5*) MYSYSVER=(centos5 redhat5);;
|
CentOS*release\ 5*) MYSYSVER=(centos5 redhat5);;
|
||||||
@ -7875,29 +7607,6 @@ function on_default() {
|
|||||||
fi
|
fi
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function require_debian() {
|
|
||||||
set -- -d debian "$@"
|
|
||||||
if check_sysinfos "$@"; then
|
|
||||||
urequire debian
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
local -a infos; local info
|
|
||||||
for info in "$@"; do
|
|
||||||
if ! [[ "$info" == -* ]]; then
|
|
||||||
infos=("${infos[@]}" "$info")
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
local msg="Ce script n'est pas supporté sur $(get_sysinfos_desc)"
|
|
||||||
[ -n "$*" ] && msg="$msg
|
|
||||||
Il faut au moins l'un des systèmes suivants: ${infos[*]}"
|
|
||||||
[ -n "$UINST" -a -n "$ABORT" ] && touch "$ABORT"
|
|
||||||
die "$msg"
|
|
||||||
}
|
|
||||||
function require_stretch() {
|
|
||||||
require_debian -v stretch+
|
|
||||||
}
|
|
||||||
##@inc]../sysinfos
|
##@inc]../sysinfos
|
||||||
##@inc[../compat
|
##@inc[../compat
|
||||||
# Code de support pour les architectures autre que Linux
|
# Code de support pour les architectures autre que Linux
|
||||||
|
@ -25,19 +25,8 @@ SYSDIST_ALIASES=(
|
|||||||
# attention: dans *_SYSVERS, les noms doivent être ordonnés du plus récent au
|
# attention: dans *_SYSVERS, les noms doivent être ordonnés du plus récent au
|
||||||
# moins récent
|
# moins récent
|
||||||
debianlike_SYSVERS=()
|
debianlike_SYSVERS=()
|
||||||
debian_SYSVERS=(
|
debian_SYSVERS=(bullseye buster stretch jessie wheezy squeeze lenny etch)
|
||||||
forky trixie bookworm bullseye buster stretch jessie wheezy squeeze lenny etch
|
ubuntu_SYSVERS=(oneiric natty maverick lucid karmic jaunty intrepid hardy)
|
||||||
)
|
|
||||||
ubuntu_SYSVERS=(
|
|
||||||
mantic lunar kinetic jammy
|
|
||||||
impish hirsute groovy focal
|
|
||||||
eoan disco cosmic bionic
|
|
||||||
artful zesty yakkety xenial
|
|
||||||
wily vivid utopic trusty
|
|
||||||
saucy raring quantal precise
|
|
||||||
oneiric natty maverick lucid
|
|
||||||
karmic jaunty intrepid hardy
|
|
||||||
)
|
|
||||||
redhatlike_SYSVERS=()
|
redhatlike_SYSVERS=()
|
||||||
ol_SYSVERS=(ol8 ol7 ol6 redhat8 redhat7 redhat6)
|
ol_SYSVERS=(ol8 ol7 ol6 redhat8 redhat7 redhat6)
|
||||||
rhel_SYSVERS=(rhel8 rhel7 rhel6 rhel5 rhel4 redhat8 redhat7 redhat6 redhat5 redhat4)
|
rhel_SYSVERS=(rhel8 rhel7 rhel6 rhel5 rhel4 redhat8 redhat7 redhat6 redhat5 redhat4)
|
||||||
@ -46,16 +35,8 @@ centos_SYSVERS=(centos7 centos6 centos5 centos4 redhat7 redhat6 redhat5 redhat4)
|
|||||||
suse_SYSVERS=()
|
suse_SYSVERS=()
|
||||||
gentoo_SYSVERS=()
|
gentoo_SYSVERS=()
|
||||||
SYSVER_ALIASES=(
|
SYSVER_ALIASES=(
|
||||||
14=forky 13=trixie 12=bookworm 11=bullseye 10=buster 9=stretch 8=jessie 7=wheezy 6=squeeze 5=lenny 4=etch
|
11=bullseye 10=buster 9=stretch 8=jessie 7=wheezy 6=squeeze 5=lenny 4=etch
|
||||||
# les derniers de chaque lignes sont des LTS
|
11.10=oneiric 11.04=natty 10.10=maverick 10.04=lucid 9.10=karmic 9.04=jaunty 8.10=intrepid 8.04=hardy
|
||||||
23.10=mantic 23.04=lunar 22.10=kinetic 22.04=jammy
|
|
||||||
21.10=impish 21.04=hirsute 20.10=groovy 20.04=focal
|
|
||||||
19.10=eoan 19.04=disco 18.10=cosmic 18.04=bionic
|
|
||||||
17.10=artful 17.04=zesty 16.10=yakkety 16.04=xenial
|
|
||||||
15.10=wily 15.04=vivid 14.10=utopic 14.04=trusty
|
|
||||||
13.10=saucy 13.04=raring 12.10=quantal 12.04=precise
|
|
||||||
11.10=oneiric 11.04=natty 10.10=maverick 10.04=lucid
|
|
||||||
9.10=karmic 9.04=jaunty 8.10=intrepid 8.04=hardy
|
|
||||||
)
|
)
|
||||||
|
|
||||||
function __setup_ALL_SYSvars() {
|
function __setup_ALL_SYSvars() {
|
||||||
|
@ -502,36 +502,36 @@ Essayez avec 'uinst -C'"
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Tester s'il faut bootstrapper
|
# Tester s'il faut bootstrapper
|
||||||
#if [ -f "$srcdir/.nutools-bootstrap" ]; then
|
if [ -f "$srcdir/.nutools-bootstrap" ]; then
|
||||||
# local need_python need_gawk
|
local need_python need_gawk
|
||||||
# has_python || need_python=1
|
has_python || need_python=1
|
||||||
# has_gawk || need_gawk=1
|
has_gawk || need_gawk=1
|
||||||
# if check_sysinfos -s linux; then
|
if check_sysinfos -s linux; then
|
||||||
# if [ -n "$need_python" -o -n "$need_gawk" ]; then
|
if [ -n "$need_python" -o -n "$need_gawk" ]; then
|
||||||
# eimportant "Il FAUT installer Python 2 et $(get_color y)*GNU*$(get_color z)awk pour que nutools fonctionne correctement."
|
eimportant "Il FAUT installer Python 2 et $(get_color y)*GNU*$(get_color z)awk pour que nutools fonctionne correctement."
|
||||||
# if check_sysinfos -d debian; then
|
if check_sysinfos -d debian; then
|
||||||
# if ask_yesno "Voulez-vous que ce script essaye d'installer automatiquement ces dépendances (requière les droits root)?" O; then
|
if ask_yesno "Voulez-vous que ce script essaye d'installer automatiquement ces dépendances (requière les droits root)?" O; then
|
||||||
# urequire debian
|
urequire debian
|
||||||
# pkg_install ${need_python:+python} ${need_gawk:+gawk} || {
|
pkg_install ${need_python:+python} ${need_gawk:+gawk} || {
|
||||||
# eerror "Une erreur s'est produite pendant l'installation. Veuillez faire l'installation manuellement"
|
eerror "Une erreur s'est produite pendant l'installation. Veuillez faire l'installation manuellement"
|
||||||
# return 1
|
return 1
|
||||||
# }
|
}
|
||||||
# need_python=
|
need_python=
|
||||||
# need_gawk=
|
need_gawk=
|
||||||
# fi
|
fi
|
||||||
# fi
|
fi
|
||||||
# fi
|
fi
|
||||||
# fi
|
fi
|
||||||
# if [ -n "$need_python" ]; then
|
if [ -n "$need_python" ]; then
|
||||||
# eerror "Python 2 est requis. Veuillez faire l'installation avant de relancer ce script."
|
eerror "Python 2 est requis. Veuillez faire l'installation avant de relancer ce script."
|
||||||
# return 1
|
return 1
|
||||||
# fi
|
fi
|
||||||
# if [ -n "$need_gawk" ]; then
|
if [ -n "$need_gawk" ]; then
|
||||||
# ewarn "$(get_color y)*GNU*$(get_color z)awk est requis mais n'est pas installé. Ce script va continuer, mais les résultats ne sont pas garantis."
|
ewarn "$(get_color y)*GNU*$(get_color z)awk est requis mais n'est pas installé. Ce script va continuer, mais les résultats ne sont pas garantis."
|
||||||
# fi
|
fi
|
||||||
# # s'assurer que les libraries *locales* sont dans PYTHONPATH
|
# s'assurer que les libraries *locales* sont dans PYTHONPATH
|
||||||
# source "$ULIBDIR/pyulib/pyulib"
|
source "$ULIBDIR/pyulib/pyulib"
|
||||||
#fi
|
fi
|
||||||
|
|
||||||
if [ -n "$UINST_AUTOPREFIX" ]; then
|
if [ -n "$UINST_AUTOPREFIX" ]; then
|
||||||
# initialiser le moteur de préfixes
|
# initialiser le moteur de préfixes
|
||||||
|
10
lib/ulib/vcs
10
lib/ulib/vcs
@ -617,23 +617,23 @@ function git_push() {
|
|||||||
if [ -n "$all" ]; then
|
if [ -n "$all" ]; then
|
||||||
# On a demandé à pusher toutes les branches et tous les tags
|
# On a demandé à pusher toutes les branches et tous les tags
|
||||||
local r
|
local r
|
||||||
git push --all ${force:+--force} "$@"; r=$?
|
git push --all "$@"; r=$?
|
||||||
if [ $r -eq 0 ]; then
|
if [ $r -eq 0 ]; then
|
||||||
git push --tags ${force:+--force} "$@"; r=$?
|
git push --tags "$@"; r=$?
|
||||||
fi
|
fi
|
||||||
return $r
|
return $r
|
||||||
elif [ -n "$all_branches" ]; then
|
elif [ -n "$all_branches" ]; then
|
||||||
# On a demandé à pusher toutes les branches
|
# On a demandé à pusher toutes les branches
|
||||||
git push --all ${force:+--force} "$@"
|
git push --all "$@"
|
||||||
return $?
|
return $?
|
||||||
elif [ -n "$all_tags" ]; then
|
elif [ -n "$all_tags" ]; then
|
||||||
# On a demandé à pusher tous les tags
|
# On a demandé à pusher tous les tags
|
||||||
git push --tags ${force:+--force} "$@"
|
git push --tags "$@"
|
||||||
return $?
|
return $?
|
||||||
elif [ $# -gt 0 ]; then
|
elif [ $# -gt 0 ]; then
|
||||||
# Sinon, si des arguments sont spécifiés, les passer à git sans
|
# Sinon, si des arguments sont spécifiés, les passer à git sans
|
||||||
# modification
|
# modification
|
||||||
git push ${force:+--force} "$@"
|
git push "$@"
|
||||||
return $?
|
return $?
|
||||||
elif git_have_annex; then
|
elif git_have_annex; then
|
||||||
# Si une annexe existe dans le dépôt, demander à git-annex de faire la
|
# Si une annexe existe dans le dépôt, demander à git-annex de faire la
|
||||||
|
31
lless
31
lless
@ -1,31 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
||||||
source "$(dirname "$0")/lib/ulib/auto" || exit 1
|
|
||||||
|
|
||||||
function display_help() {
|
|
||||||
uecho "$scriptname: frontend de less pour lire un fichier encodé en latin1
|
|
||||||
|
|
||||||
USAGE
|
|
||||||
$scriptname [options] FILE
|
|
||||||
|
|
||||||
OPTIONS
|
|
||||||
-S, --chop-long-lines
|
|
||||||
-r, --raw-control-chars
|
|
||||||
-R, --RAW-CONTROL-CHARS
|
|
||||||
-e, --quit-at-eof
|
|
||||||
-E, --QUIT-AT-EOF
|
|
||||||
options de less qui sont reprises telles quelles"
|
|
||||||
}
|
|
||||||
|
|
||||||
lessopts=()
|
|
||||||
args=(
|
|
||||||
--help '$exit_with display_help'
|
|
||||||
-S,--chop-long-lines '$lessopts+=(-S)'
|
|
||||||
-r,--raw-control-chars '$lessopts+=(-r)'
|
|
||||||
-R,--RAW-CONTROL-CHARS '$lessopts+=(-R)'
|
|
||||||
-e,--quit-at-eof '$lessopts+=(-e)'
|
|
||||||
-E,--QUIT-AT-EOF '$lessopts+=(-E)'
|
|
||||||
)
|
|
||||||
parse_args "$@"; set -- "${args[@]}"
|
|
||||||
|
|
||||||
iconv -f latin1 -t utf-8 "$@" | less "${lessopts[@]}"
|
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
urequire apache.tools
|
urequire DEFAULTS apache.tools
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Créer un fichier de redirections pour Apache à partir d'un certain
|
uecho "$scriptname: Créer un fichier de redirections pour Apache à partir d'un certain
|
||||||
|
3
mkiso
3
mkiso
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: créer une image iso d'un répertoire
|
uecho "$scriptname: créer une image iso d'un répertoire
|
||||||
|
3
mkurl
3
mkurl
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Enregistrer une url dans un fichier raccourci
|
uecho "$scriptname: Enregistrer une url dans un fichier raccourci
|
||||||
|
3
mkusfx
3
mkusfx
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Créer une archive auto-extractible qui installe son contenu avec uinst
|
uecho "$scriptname: Créer une archive auto-extractible qui installe son contenu avec uinst
|
||||||
|
3
mocifs
3
mocifs
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Monter un partage Windows/Samba/CIFS
|
uecho "$scriptname: Monter un partage Windows/Samba/CIFS
|
||||||
|
3
modav
3
modav
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Monter un répertoire sur un hôte distant avec davfs
|
uecho "$scriptname: Monter un répertoire sur un hôte distant avec davfs
|
||||||
|
3
moiso
3
moiso
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Monter une image ISO
|
uecho "$scriptname: Monter une image ISO
|
||||||
|
3
mossh
3
mossh
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- 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
|
||||||
source "$(dirname -- "$0")/lib/ulib/auto" || exit 1
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
||||||
|
urequire DEFAULTS
|
||||||
|
|
||||||
function display_help() {
|
function display_help() {
|
||||||
uecho "$scriptname: Monter un répertoire sur un hôte distant avec sshfs
|
uecho "$scriptname: Monter un répertoire sur un hôte distant avec sshfs
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user