Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 25-11-2012 19:06:09

bendia
Admin stagiaire
Distrib. : Jessie
Noyau : 3.16.0-4-amd64
(G)UI : Gnome + XFCE + Console
Inscription : 20-03-2012
Site Web

Script de notification d'un nouveau push sur le git-df

Bonjour

Tout est dans le titre smile

La notification se fait par notify-send ou kdialog.

Mettez l'emplacement de l'icone que vous souhaitez utiliser pour la notification dans la variable icone

#!/bin/bash

#Emplacement de l'icone
icone=~/.icons/df-titia-bleu.png

###Fonction de notification####
notif()
{
  if [ -n $(which notify-send) ]
  then
  notify-send "Nouveau commit" "Nouveau commit sur $1 !" -i $icone
  elif [ -n $(which kdialog) ]
  then
  kdialog --title "Nouveaux commit" --msgbox "Nouveau commit sur $1 !" --icon $icone
  fi
}

##Corps du programme##
if [ $# -eq 0 ]
then
echo "Usage : git-notify repertoire-git1 repertoire-git2 ..."
fi
ici=$(pwd) #Stockage du répertoire courrant
for rep in $@ # Pour tous les repertoire passer en arguments
do
if [ -d $rep ] #Si il existe ...
then
  cd $rep # ... s'y rendre
  if ret=$(git fetch 2> /dev/null) #Si pas d'erreur en executant git fetch, il s'agit d'un répertoire de travail git
  then
  shadist=$(cat .git/refs/remotes/origin/master) #C'est là que se trouve la signature SHA téléchargé à l'occasion de git fetch
  shaloc=$(cat .git/refs/heads/master)           # C'est là que se trouve la signature du répertoire de travail
  cd "$ici"
    if [ $shadist != $shaloc ]                 #Si les signature sont différente, un push à été effectué
    then
    notif $rep                  #On appel alors la fonction de notification en passant le répertoire en argument
    fi
else
  notif "$rep n'est pas un répertoire git"       # Si une erreur survient lors de l'execution de git fetch, c'est que le répertoire passé en argument n'est pas un répertoire de travail git
fi
else
notif "$rep n'existe pas"                        
fi
done



Installez le dans le répertoire de votre choix sous le nom git-notify-df par exemple (personnellement c'est dans ~/.local/bin) et rendez le exécutable

chmod a+x git-notify-df



Pour que ça soit lancé à interval régulier, vous pouvez utiliser cron comme ceci

crontab -e



qui ouvre votre éditeur de texte préféré. Vous pouvez ensuite entrer la ligne suivante à la fin du crontab

*/30 * * * * export DISPLAY=$(who | grep user | head -n1 | cut -d"(" -f 2 | cut -d")" -f 1) && /chemin/de/git-notify-df /chemin/de/votre/repertoire/git



Remplacer */30 par le temps de scrutation que vous souhaitez (en minute dans la première colone, en heure dans la deuxième ...) et user par votre identifiant

Et voilà cool


Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
file-Re06858991f6f328b4907296ac5cea283

Hors ligne

#2 25-11-2012 20:09:37

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Bonsoir,

Cela sera utile, merci cool

Quelle est la syntaxe de repertoire-git1 ?
J'ai essayé sans succès

$ ./git-notify /outils/antiseche
$ ./git-notify outils/antiseche
$ ./git-notify df-git:/outils/antiseche


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#3 25-11-2012 20:42:33

bendia
Admin stagiaire
Distrib. : Jessie
Noyau : 3.16.0-4-amd64
(G)UI : Gnome + XFCE + Console
Inscription : 20-03-2012
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Bonsoir

C'est le chemin absolu de ton répertoire local du git genre /home/paskal/git-df/antiseche smile
En bref, le chemin de l'endroit où tu passes tes commandes git comme git pull par exemple

Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
file-Re06858991f6f328b4907296ac5cea283

Hors ligne

#4 25-11-2012 21:17:36

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Hum, j'ai un pb pour antiseche:

cat: .git/refs/remotes/origin/master: Aucun fichier ou dossier de ce type
./git-notify: line 34: [: != : opérateur unaire attendu


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#5 25-11-2012 21:21:12

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Hem, si vous voulez être notifiés, je vous conseille plutôt de m'envoyer votre mail en me précisant les alertes de quels dépôts vous voulez recevoir.

En effet, cela évite des requêtes inutiles vers le serveur DF smile

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#6 25-11-2012 21:24:22

bendia
Admin stagiaire
Distrib. : Jessie
Noyau : 3.16.0-4-amd64
(G)UI : Gnome + XFCE + Console
Inscription : 20-03-2012
Site Web

Re : Script de notification d'un nouveau push sur le git-df

He ben vu comme ca hmm

Peut être peut on supprimer ce fil ?

Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
file-Re06858991f6f328b4907296ac5cea283

Hors ligne

#7 25-11-2012 21:25:35

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Non non, les deux peuvent sans doute être utiles smile
Simplement, les notifications par mail c'est juste… fait pour !
Il y a aussi les notifications par bot sur IRC, sur #df-flood !

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#8 26-11-2012 21:20:57

bendia
Admin stagiaire
Distrib. : Jessie
Noyau : 3.16.0-4-amd64
(G)UI : Gnome + XFCE + Console
Inscription : 20-03-2012
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Bon, dans ce cas, il faut que je comprenne pourquoi ça ne marche pas chez paskal smile

.git/refs/remotes/origin/master



c'est donc que ce fichier n'existe pas chez toi.

Que donne

ls -a /ton/dossier/git-df


Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
file-Re06858991f6f328b4907296ac5cea283

Hors ligne

#9 27-11-2012 18:01:16

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : Script de notification d'un nouveau push sur le git-df

En fait git-clone ne m'a pas créé de dossier outil, j'ai antiseche directement dans projets-df

.../projets-df$ ls -a
.  ..  antiseche  live-df
.../projets-df$ ls -a antiseche/.git/refs/remotes/origin
.  ..  HEAD


point de maître à l'horizon.


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#10 27-11-2012 18:19:42

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
Inscription : 21-10-2008

Re : Script de notification d'un nouveau push sur le git-df

Aaaaaah Ni dieu ni maître chez paskal... Est-ce étonnant ? tongue

"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

#11 27-11-2012 18:33:19

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Bonsoir smolski smile

Damned ! Je suis repéré ! big_smile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#12 27-11-2012 20:12:24

bendia
Admin stagiaire
Distrib. : Jessie
Noyau : 3.16.0-4-amd64
(G)UI : Gnome + XFCE + Console
Inscription : 20-03-2012
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Et que contient le fichier HEAD en question ?

Paskal n'a ni dieu ni maître soit, mais quand même une tête lol

Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
file-Re06858991f6f328b4907296ac5cea283

Hors ligne

#13 27-11-2012 20:28:59

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : Script de notification d'un nouveau push sur le git-df

tsss, tsss tongue

contenue de head (1 neurone)

ref: refs/remotes/origin/master



dernière nouvelle : je viens de trouver mon maître mad
il est dans .git/refs/heads, son contenu :

95d7119129a4dbbe4f18cc453da0e8d5577967df



paskal qui perd la boule (et non pas qui a les ...)

edit : j'ai vérifié sur le projet live-df, le fichier master est identique dans .git/refs/heads et dans .git/refs/remotes/origin
je peux faire une copie, donc. smile

Dernière modification par paskal (27-11-2012 20:38:50)


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#14 27-11-2012 20:45:43

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Vous faites des trucs bizarres avec vos git wink

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#15 27-11-2012 21:17:49

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
Inscription : 21-10-2008

Re : Script de notification d'un nouveau push sur le git-df

De plus, ça rend sourd, attention donc ! tongue

"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

#16 27-11-2012 21:38:08

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : Script de notification d'un nouveau push sur le git-df

hein ?

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#17 27-11-2012 21:40:36

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
Inscription : 21-10-2008

Re : Script de notification d'un nouveau push sur le git-df

ÇA REND SOURD ! Bah... trop tard. lol

"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

#18 28-11-2012 09:43:52

bendia
Admin stagiaire
Distrib. : Jessie
Noyau : 3.16.0-4-amd64
(G)UI : Gnome + XFCE + Console
Inscription : 20-03-2012
Site Web

Re : Script de notification d'un nouveau push sur le git-df

paskal a écrit :

edit : j'ai vérifié sur le projet live-df, le fichier master est identique dans .git/refs/heads et dans .git/refs/remotes/origin
je peux faire une copie, donc



Je ne suis pas un expert de git, donc, je fais là une supposition (pour les comiques de ce fil, je suppute, amusez vous avec ça wink ) :

As tu déjà fais un pull du projet antisèche ? Je me demande si ce fichier n'est pas créer uniquement au premier pull ?


Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
file-Re06858991f6f328b4907296ac5cea283

Hors ligne

#19 28-11-2012 10:00:05

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : Script de notification d'un nouveau push sur le git-df

bendia a écrit :

As tu déjà fais un pull du projet antisèche ?


Ben non, je sèche sur un truc, pour l'instant. wink

bendia a écrit :

Je me demande si ce fichier n'est pas créer uniquement au premier pull ?


Non, car je l'ai sur le projet live et je n'ai pas mis de pull non plus. big_smile

bendia a écrit :

(pour les comiques de ce fil, je suppute, amusez vous avec ça wink ) :


Bah, on se débrouille comme on peut. lol


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#20 28-11-2012 17:48:23

MaTTuX_
La Paillasse !!!
Lieu : Zoubidou-Land
Distrib. : 75 serveurs
Noyau : 3.2.0-4-amd64
(G)UI : tty et ... pas gnome en tout cas....
Inscription : 28-05-2007
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Oula, captnfab a raison, sont bizarre euh !!! lol

\o/ Le closedSource c'est tabou on a viendra tous à bout \o/

Hors ligne

#21 01-12-2012 10:25:14

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : Script de notification d'un nouveau push sur le git-df

Vu que ça fraîchit un max, j'ai passé le pull et j'ai trouvé le master. cool

Maintenant git-notify ne renvoit plus rien, snif. sad

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

Pied de page des forums