Changeset 8110 in spip-zone


Ignore:
Timestamp:
Dec 18, 2006, 5:13:50 PM (12 years ago)
Author:
bertrand@…
Message:

Maintenant zonedist.php sait tout, ça fait toujours rien , que des dump.
Juste pour sauvegarder...

Location:
_dev_/bin_svn
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _dev_/bin_svn/zonedist.php

    r7974 r8110  
    1111$changed = array();
    1212while (preg_match('#^[ADUCG]\s+(.+)$#', $line = fgets(STDIN), $matches)) {
    13         $changed[] = $matches[1];
     13        $changed[$rep = $matches[1]] = true;
     14        while (($pos = strrpos($rep, '/')) && ($rep = substr($rep, 0, $pos)) &&
     15                        !isset($changed[$rep])) {
     16                $changed[$rep] = true;
     17        }
    1418}
    1519
     
    2125        die("parti de $was, on arrive a rien, recu:$line\n");
    2226}
     27if (!$changed) {
     28        exit(0);
     29}
     30var_dump($changed);
    2331
    24 sort($changed);
     32function addfol(&$folder, $name, $key, $val)
     33{
     34        if (!isset($folders[$name])) {
     35                $folders[$name] = array();
     36        }
     37        $folders[$name][$key] = $val;
     38       
     39}
     40function folders(&$folder, $in)
     41{
     42        while (($line = fgets($in)) !== false) {
     43                if (count($zip = explode(';', $line)) > 1) {
     44                        if ($zip[0][strlen($zip[0]) - 1] == '/') {
     45                                $zip[0] = substr($zip[0], 0, -1);
     46                        }
     47                        addfol($folder, array_shift($zip), 'z', $zip);
     48                        continue;
     49                }
     50                if (!preg_match('#^(.+)/(?:(p)lugin|theme)\.xml$#', $line, $matches)) {
     51                        continue;
     52                }
     53                addfol($folder, $matches[1], empty($matches[2]) ? 't' : 'p', true);
     54        }
     55}
     56
    2557// les plugin.xml, theme.xml et references archivelist.txt triees
    2658$folders = array();
    27 while ($line = fgets(STDIN)) {
    28         if (count($zip = explode(';', $line)) > 1) {
    29                 if ($zip[0][strlen($zip[0]) - 1] == '/') {
    30                         $zip[0] = substr($zip[0], 0, -1);
    31                 }
    32                 if (!isset($folders[$zip[0]])) {
    33                         $folders[$zip[0]] = array();
    34                 }
    35                 $folders[array_shift($zip)]['z'] = $zip;
    36                 continue;
    37         }
    38         if (!preg_match('#^(.+)/(?:(p)lugin|theme)\.xml$#', $line, $matches)) {
    39                 continue;
    40         }
    41         if (!isset($folders[$matches[1]])) {
    42                 $folders[$matches[1]] = array();
    43         }
    44         $folders[$matches[1]][empty($matches[2]) ? 't' : 'p'] = true;
     59$status = folders($folders, STDIN);
     60
     61$oldfol = array();
     62if (isset($changed['archivelist.txt'])) {
     63        $old = fopen('archivelist.txt.old');
     64        $statold = folders($oldfol, $old);
    4565}
    46 // maintenant voir si des dossiers sont imbriques ?
    47 // une petite poursuite ...
    4866var_dump($folders);
     67var_dump($oldfol);
     68// Chercher le heros qui est plugin.xml, theme.xml et dans archivelist.txt
    4969foreach ($folders as $folder => $things) {
    5070        if (!empty($things['z']) && !empty($things['p']) && !empty($things['t'])) {
  • _dev_/bin_svn/zonedist.sh

    r8038 r8110  
    11#!/bin/bash
    22cd `dirname $0`; dirbin=$PWD; cd $OLDPWD
    3 cd `dirname ${1:-.}`; dirtar=$PWD; cd $OLDPWD
     3cd ${1:-.}; dirtar=$PWD; cd $OLDPWD
    44cd $dirtar
     5touch archivelist.txt
     6cp archivelist.txt archivelist.txt.old
    57(svnversion ; svn up
    68 (find * \( -iname plugin.xml -o -iname theme.xml \) -print
Note: See TracChangeset for help on using the changeset viewer.