mirror of https://framagit.org/kyodev/kyopages.git
1.2.0
This commit is contained in:
parent
c17381cd7c
commit
9708c8c24d
|
@ -1,12 +1,11 @@
|
|||
#!/bin/bash
|
||||
|
||||
version=1.1.0
|
||||
version=1.2.0
|
||||
date="27/08/2017"
|
||||
projet="simpledeb"
|
||||
contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues/"
|
||||
script="getIp"
|
||||
urlScript="https://framagit.org/kyodev/kyopages/raw/master/scripts/$script"
|
||||
lognameDev="kyodev"
|
||||
|
||||
##### license LPRAB/WTFPL
|
||||
# auteur: simpledeb
|
||||
|
@ -137,7 +136,7 @@ f__wget_test(){ #v25/08/2017
|
|||
}
|
||||
|
||||
fgi_help(){
|
||||
f__info "\n $GREEN $script $version$BLUE"
|
||||
f__info "$GREEN\n ""$script $version$BLUE"
|
||||
cat << 'EOF'
|
||||
----------------------------------------------------------------------
|
||||
./getIp : exécution normale
|
||||
|
@ -263,7 +262,7 @@ fgi_ip_public(){ # $1=IPv4|IPv6, assigne $ip_public # v18/08/2017
|
|||
}
|
||||
|
||||
# inscription dans tache upgrade en anacron hebdomadaire, via cron horaire
|
||||
fscript_cronAnacron(){ # v23/08/2017
|
||||
fscript_cronAnacron(){ # v27/08/2017
|
||||
[ "$(type -t fscript_cronAnacron_special)" ] && fscript_cronAnacron_special # test, si fonction spécifique, appel
|
||||
local dirAnacron="/home/$user_/.config/anacron"
|
||||
local dirSpool="$dirAnacron/spool"
|
||||
|
@ -275,8 +274,8 @@ fscript_cronAnacron(){ # v23/08/2017
|
|||
# table anacron
|
||||
echo "7 10 $script nice /opt/bin/$script --upgrade 1>/dev/null" > "$fileAnacron" # juste erreurs en syslog
|
||||
## anacron journalier pour dev logname
|
||||
if [ "$user_" == "$lognameDev" ]; then
|
||||
echo "1 00 $script""Dev nice /opt/bin/$script --upgrade 1>/dev/null" >> "$fileAnacron" # juste erreurs en syslog
|
||||
if [ -e "$fileDev" ]; then
|
||||
echo "1 00 $script""Dev nice /opt/bin/$script --upgrade 1>/dev/null" >> "$fileAnacron"
|
||||
fi
|
||||
# création spool anacron utilisateur
|
||||
mkdir -p "$dirSpool"
|
||||
|
@ -297,9 +296,9 @@ fscript_cronAnacron(){ # v23/08/2017
|
|||
}
|
||||
|
||||
# version script en ligne, assigne $versionScript, $script_aJour=ok|ko
|
||||
fscript_get_version(){ # v25/08/2017
|
||||
fscript_get_version(){ # v27/08/2017
|
||||
f__requis "wget"
|
||||
f__info "raw" "$GREEN""version script en cours: $version"
|
||||
f__info "raw" "$GREEN\n ""version script en cours: $version"
|
||||
versionScript="$(wget -q --tries=2 --timeout=15 -O - "$urlScript" | grep '^version=' | cut -d '=' -f 2)"
|
||||
if [ "$versionScript" ]; then
|
||||
if [ "$version" != "$versionScript" ]; then
|
||||
|
@ -313,10 +312,10 @@ fscript_get_version(){ # v25/08/2017
|
|||
}
|
||||
|
||||
# installation du script dans le système
|
||||
fscript_install(){ # v25/08/2017
|
||||
fscript_install(){ # v27/08/2017
|
||||
[ "$(type -t fscript_install_special)" ] && fscript_install_special # test, si fonction spécifique, appel
|
||||
if dirname "$0" | grep -q 'bin' ; then
|
||||
f__info "\n $script $version est déjà installé"
|
||||
f__info "$RED\n ""$script $version est déjà installé"
|
||||
return 1
|
||||
fi
|
||||
[ $EUID -eq 0 ] || f__error "vous devez être ROOT pour installer ce script dans le système"
|
||||
|
@ -332,23 +331,24 @@ fscript_install(){ # v25/08/2017
|
|||
touch "$fileLogs"
|
||||
chmod 644 "$fileLogs"
|
||||
chown "$user_": "$fileLogs" "/opt/bin/$script"
|
||||
[ -e "$script"_changelog.md ] || rm "$(basename $0)" &>/dev/null ## on efface pas si changelog (dev)
|
||||
f__info "log" "$script $version installé dans le système." "maintenant, appel du script par:$GREEN $script$BLUE (sans ./)"
|
||||
[ -e "$fileDev" ] || rm "$(basename $0)" &>/dev/null ## on efface pas si fileDev (dev)
|
||||
f__info "log" "\n $script $version installé dans le système." "maintenant, appel du script par:$GREEN $script$BLUE (sans ./)"
|
||||
}
|
||||
|
||||
# suppression du script dans le système
|
||||
fscript_remove(){ # v21/08/2017
|
||||
fscript_remove(){ # v27/08/2017
|
||||
[ $EUID -eq 0 ] || f__error "vous devez être ROOT pour supprimer ce script dans le système"
|
||||
# suppression de /opt
|
||||
rm /opt/bin/"$script" &>/dev/null
|
||||
unlink /usr/bin/"$script" &>/dev/null
|
||||
# cron/anacron remove
|
||||
fscript_cronAnacron "remove"
|
||||
echo
|
||||
f__info "log" "$script $version supprimé du système."
|
||||
}
|
||||
|
||||
# mise à jour script si dispo
|
||||
fscript_update(){ # v25/08/2017-2
|
||||
fscript_update(){ # v26/08/2017
|
||||
fscript_get_version
|
||||
if [ "$script_aJour" == "ok" ]; then
|
||||
f__info "log" "pas de mise à jour disponible pour $script"
|
||||
|
@ -377,6 +377,7 @@ PATH='/usr/sbin:/usr/bin:/sbin:/bin' ; IFS=' '; TERM=xterm
|
|||
export PATH TERM
|
||||
f__affichage
|
||||
fileLogs="/var/log/sdeb_$script.log"
|
||||
fileDev="fileDev"
|
||||
f__requis "gawk wget ip>iproute2" # requis pour fonctionnement programme
|
||||
|
||||
options="$@"
|
||||
|
@ -396,10 +397,12 @@ for i in "$options"; do
|
|||
echo -e "\tpasserelle(s):\n$gateway_type"
|
||||
;; # affiche ip locales
|
||||
-i | --install )
|
||||
testuser && fscript_install
|
||||
testuser
|
||||
fscript_install
|
||||
;; # installation du script dans le système
|
||||
r | --remove )
|
||||
testuser && fscript_remove
|
||||
-r | --remove )
|
||||
testuser
|
||||
fscript_remove
|
||||
;; # suppression du script dans le système
|
||||
-u | --upgrade )
|
||||
testuser
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
# changelog getIp
|
||||
|
||||
|
||||
## 1.1.0 27/08/2017
|
||||
## 1.2.0 27/08/2017
|
||||
|
||||
* fix bug upgrade
|
||||
* fix bug install/remove
|
||||
* fscript_cronAnacron, fscript_install : changement lognameDev ->fileDev
|
||||
* révision présentation fscript_get_version, fscript_install, fscript_remove
|
||||
|
||||
## 1.0.3 26/08/2017
|
||||
|
Loading…
Reference in New Issue