]> git.llucax.com Git - mecon/scripts.git/commitdiff
Se actualiza SAPO para que no use grupos. No se necesita mas sudo para svncreate.
authorLeandro Lucarella <llucax@gmail.com>
Tue, 20 Jan 2004 17:20:00 +0000 (17:20 +0000)
committerLeandro Lucarella <llucax@gmail.com>
Tue, 20 Jan 2004 17:20:00 +0000 (17:20 +0000)
subversion/sapo/.htaccess [deleted file]
subversion/sapo/index.html
subversion/sapo/sapo.php [deleted file]
subversion/sapo/sapo.py
subversion/sapo/svncreate
subversion/sapo/template.conf [deleted file]

diff --git a/subversion/sapo/.htaccess b/subversion/sapo/.htaccess
deleted file mode 100644 (file)
index dc7bdf7..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-AuthName "Creador de Repositorios Subversion"
-AuthType Basic
-AuthUserFile /etc/svn/passwd
-AuthGroupFile /etc/svn/group
-#Require valid-user
-Require group desarrolladores
index c5e75f373f053b8d3d61c3286632b1df0fdea795..08c3bf7870e3a91d0aa25f07c3e11fb9686f5a96 100644 (file)
@@ -7,7 +7,7 @@
         <h1>SAPO</h1>
         <h2>Systema de Administración de Portal y Otros</h2>
         <ul>
-            <li><a href="/svn_new/">Creador de Repositorios Subversion</a></li>
+            <li><a href="sapo.py">Creador de Repositorios Subversion</a></li>
             <li><a href="/cgi-bin/viewcvs.cgi">Visualizador de repositorios</a></li>
         </ul>
     </body>
diff --git a/subversion/sapo/sapo.php b/subversion/sapo/sapo.php
deleted file mode 100644 (file)
index 97cb0cb..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-<!-- vim:set ts=4 softtabstop=4 expandtab: -->
-<html>
-    <head>
-        <title>Creador de Repositorios Subversion</title>
-    </head>
-    <body>
-        <h1>Creador de Repositorios Subversion</h1>
-<? // vim:set ts=4 softtabstop=4 expandtab:
-
-// $Id$
-
-// Configuración
-$svncreate = 'sudo /usr/local/bin/svncreate';
-
-ini_set('implicit_flush', true);
-
-$users = array();
-$f = fopen('/etc/svn/passwd', 'r');
-while (($s = fgets($f, 4096)) !== false) {
-    list($users[], $pass) = split(':', $s);
-}
-fclose($f);
-
-if (@$_REQUEST['enviado']) {
-
-    if (!$_REQUEST['repos']) {
-        die('No se especificó el nombre del repositorio.');
-    }
-    if (!$_REQUEST['desc']) {
-        die('No se especificó la descripción del repositorio.');
-    }
-    if (!$_REQUEST['users']) {
-        die('No se especificaron usuarios habilitados para escribir en el repositorio.');
-    }
-    if (!preg_match('/^[\w\d]+$/', $_REQUEST['repos'])) {
-        die('El nombre del repositorio no es válido (sólo puede tener caracteres alfanuméricos).');
-    }
-    // Chequear usuarios que existan.
-    //if (!$_REQUEST['users']) {
-    //    error('No se especificaron usuarios habilitados para escribir en el repositorio.');
-    //}
-
-    echo '<PRE>';
-    $retval = 0;
-    echo system(
-    //echo(
-        sprintf(
-            "%s %s %s %s",
-            $svncreate,
-            escapeshellarg($_REQUEST['repos']),
-            escapeshellarg($_REQUEST['desc']),
-            escapeshellarg(join(' ', $_REQUEST['users']))
-        ),
-        $retval
-    );
-    if ($retval) {
-        echo "Hubo un error: $retval";
-    }
-    echo "\n";
-    $url = sprintf('http://portal.mecon.ar/svn/%s/tronco/', $_REQUEST['repos']);
-    printf('Puede hacer un checkout con: svn co <A href="%s">%s</A> %s.%s', $url, $url, $_REQUEST['repos'], "\n");
-    printf("Alternativamente puede hacer un checkout con: svn co svn+ssh://portal.mecon.ar/var/lib/svn/%s si tiene acceso via ssh.\n", $_REQUEST['repos']);
-    printf('<A href="%s">Volver</A>', $_SERVER['PHP_SELF']);
-    echo '</PRE>';
-
-} else {
-
-?>
-        <form>
-            Nombre del repositorio: <input type="text" name="repos" value="<?= @$_REQUEST['repos'] ?>"><br>
-            Descripción:            <input type="text" name="desc" value="<?= @$_REQUEST['desc'] ?>"><br>
-            Usuarios habilitados a escribir:
-            <select name="users[]" multiple>
-            <? foreach ($users as $user) { ?>
-                <option><?= $user ?></option>
-            <? } ?>
-            </select><br>
-            <input type="submit" name="enviado" value="Crear"><br>
-        </form>
-<? } ?>
-    </body>
-</html>
index 7b0bd4bce9f57df279384ec3692ad31bf675e031..f73a5418f85a0e5be84cba815f9c3fc01b9ed6a9 100755 (executable)
@@ -5,7 +5,7 @@
 
 # Config.
 
-svncreate = 'sudo /usr/local/bin/svncreate'
+svncreate = './svncreate'
 
 import sys
 import os
@@ -17,12 +17,6 @@ import cgitb
 # Para que tire errores más verborrágicos.
 cgitb.enable()
 
-def is_in(elem, lst):
-    for e in lst:
-        if elem == e:
-            return True
-    return False
-
 class FormError(Exception):
     def __init__(self, value):
         self.value = value
@@ -48,29 +42,16 @@ def print_footer():
 """
 
 def print_form(form):
-    def selected(user):
-        if is_in(user, form.getlist('users')):
-            return ' selected'
-        return ''
-
     repos = ''
     if form.getfirst('repos'):
         repos = form.getfirst('repos')
-    desc = ''
-    if form.getfirst('desc'):
-        desc = form.getfirst('desc')
     print """\
+        <p>
         <form method="POST">
-            Nombre del repositorio: <input type="text" name="repos" value="%s"><br>
-            Descripción:            <input type="text" name="desc" value="%s"><br>
-            Usuarios habilitados a escribir:
-            <select name="users" multiple>""" % (repos, desc)
-    for user in get_users('/etc/svn/passwd'):
-        print """<option%s>%s</option>""" % (selected(user), user)
-    print """\
-            </select><br>
-            <input type="submit" name="enviado" value="Crear"><br>
-        </form>"""
+            Nombre del repositorio: <input type="text" name="repos" value="%s">
+            <input type="submit" name="enviado" value="Crear">
+        </form>
+       </p>""" % repos
 
 def print_repos(repos):
     url = 'http://portal.mecon.ar/svn/%s/tronco/' % repos
@@ -79,19 +60,8 @@ def print_repos(repos):
     #print 'Alternativamente puede hacer un checkout con: svn co svn+ssh://portal.mecon.ar/var/lib/svn/%s si tiene acceso via ssh.\n' % repos
     print '<div style="text-align: center"><a href="./">Volver</a></div>'
 
-def get_users(file):
-    users = []
-    f = open(file, 'r')
-    lines = f.readlines()
-    for line in lines:
-        users.append(line.strip().split(':')[0])
-    f.close()
-    return users
-
 def check_form(form):
     check_cond(form.has_key('repos'), 'No se especificó el nombre del repositorio.')
-    check_cond(form.has_key('desc'), 'No se especificó la descripción del repositorio.')
-    check_cond(form.has_key('users'), 'No se especificaron usuarios habilitados para escribir en el repositorio.')
     check_cond(re.match('^[\w\d]+$', form['repos'].value),
         'El nombre del repositorio no es válido (sólo puede tener caracteres alfanuméricos).')
 
@@ -114,10 +84,7 @@ try:
         check_form(form)
         print '<pre>'
         repos = escape(form.getfirst('repos'))
-        desc = escape(form.getfirst('desc'))
-        usrs = ' '
-        usrs = escape(usrs.join(form.getlist('users')))
-        cmd = "%s '%s' '%s' '%s'" % (svncreate, repos, desc, usrs)
+        cmd = "%s '%s'" % (svncreate, repos)
         sys.stdout.flush()
         status = os.system(cmd)
         print '</pre>'
index 0cf6681a6059fa48ccfcdd30cf8ee9c203d24c74..8f4bf664e1143a78c9a963121b3ed4987dced6a1 100755 (executable)
@@ -2,36 +2,19 @@
 # $Id$
 
 repos_root=/var/lib/svn
-repos_www=/svn
-template=/etc/svn/template.conf
 sistema_base=sistema
 
 repos=$1
-desc=$2
-users=$3
 
 if [ -r $repos_root/$repos ]; then
     echo "ERROR: El repositorio $repos ya existe."
     exit 1
 fi
 echo "Creando repositorio en $repos_root/$repos..."
-#svnadmin create $repos_root/$repos
 cp -a $repos_root/$sistema_base $repos_root/$repos
 
 echo "Corrigiendo permisos de $repos_root/$repos..."
 chown -R .src $repos_root/$repos
 chmod -R g=u $repos_root/$repos
 
-echo "Agregando repositorio $repos al Apache2 en $repos_www..."
-sed -e "s|{REPOS}|$repos|" -e "s/{DESC}/$desc/" \
-    -e "s|{REPOS_ROOT}|$repos_root/$repos|" \
-    -e "s|{REPOS_WWW}|$repos_www/$repos|" \
-    $template >> /etc/svn/apache.conf
-
-echo "Agregando grupo $repos con los usuarios $users..."
-echo "$repos: $users" >> /etc/svn/group
-
-echo "Reiniciando Apache2..."
-/etc/init.d/apache2 reload
-
 echo "Finalizado."
diff --git a/subversion/sapo/template.conf b/subversion/sapo/template.conf
deleted file mode 100644 (file)
index dab5336..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-
-# {REPOS} - {DESC}
-<Location {REPOS_WWW}>
-
-   SVNReposName "{DESC}"
-
-   <LimitExcept GET PROPFIND OPTIONS REPORT>
-      Require group {REPOS}
-   </LimitExcept>
-
-</Location>