Changeset 71141 in spip-zone for _dev_


Ignore:
Timestamp:
Mar 27, 2013, 9:24:51 PM (7 years ago)
Author:
kent1@…
Message:

avant de faire un svn up qui est assez long, on compare les révisions en local et du serveur, si la revision en local est >= à celle du serveur, on ne fait rien

Dans le cas où aucune modification sur le serveur, on passe de plus de 5 minutes à 30/35 secondes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _dev_/salvatore2/tireur.php

    r64371 r71141  
    1818    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
    1919
    20     Copyright 2003-2012
     20    Copyright 2003-2013
    2121        Florent Jugla <florent.jugla@eledo.com>,
    2222        Philippe Riviere <fil@rezo.net>,
     
    5151                        $cmd = "svn switch ".$source[0]." ".$tmp.$source[1]."/";
    5252                }else{
    53                         $cmd = "svn update  --non-recursive ".$tmp.$source[1]."/";
     53                        $revision_actuelle = "env LANG=en svn info --non-interactive ".$tmp.$source[1]." | awk '/^Revision:/ { print $2 }'";
     54                        $revision_actuelle = exec($revision_actuelle,$revision_actuelle);
     55                        $last_revision = "env LANG=en svn info --non-interactive ".$source[0]." | awk '/^Last\ Changed\ Rev:/ { print $4 }'";
     56                        $last_revision = exec($last_revision,$last_revision);
     57                        if($revision_actuelle >= $last_revision)
     58                                trad_log("Pas besoin de mettre à jour");
     59                        else
     60                                $cmd = "svn update  --non-recursive ".$tmp.$source[1]."/";
    5461                }
    5562        }else
    5663                $cmd = "svn checkout --non-recursive ". $source[0]."/ ".$tmp.$source[1].'/';
    57         trad_log("$cmd\n");
    58         exec("$cmd 2> /dev/null",$out,$int);
    59         if($int == 0){
    60                 trad_log(end($out)."\n");
    61         }else{
    62                 $sujet = 'Tireur : Erreur';
    63                 $corps = "$cmd\n\n";
    64                 $corps .= "L'adresse distante de ce module n'est certainement plus valide\n\n";
    65                 trad_sendmail($sujet,$corps);
    66                 die("L'adresse distante de ce module n'est certainement plus valide\n\n");
     64               
     65        if($cmd){
     66                trad_log("$cmd\n");
     67                exec("$cmd 2> /dev/null",$out,$int);
     68                if($int == 0){
     69                        trad_log(end($out)."\n");
     70                }else{
     71                        $sujet = 'Tireur : Erreur';
     72                        $corps = "$cmd\n\n";
     73                        $corps .= "L'adresse distante de ce module n'est certainement plus valide\n\n";
     74                        trad_sendmail($sujet,$corps);
     75                        die("L'adresse distante de ce module n'est certainement plus valide\n\n");
     76                }
    6777        }
     78       
    6879        // controle des erreurs : requiert au moins 1 fichier par module !
    6980        if (!file_exists($tmp.$source[1].'/'.$source[1].'_'.$source[2].".php")) {
Note: See TracChangeset for help on using the changeset viewer.