]> git.llucax.com Git - software/sercom-old.git/blobdiff - src/sc_deliver
Se conservan resultados de las pruebas.
[software/sercom-old.git] / src / sc_deliver
index 6377f003e4a7c9643c1c697f5542d4bf508f08b3..45975cdb95cdee0a52405fc7955563c5e0d20f55 100755 (executable)
@@ -2,6 +2,8 @@
 # -*- encoding: iso-8859-1 -*-
 # vim: set et sw=4 sts=4 :
 
 # -*- encoding: iso-8859-1 -*-
 # vim: set et sw=4 sts=4 :
 
+# Módulos estándar
+import time
 # Módulos locales
 import sercom
 import sercom.sqlo
 # Módulos locales
 import sercom
 import sercom.sqlo
@@ -39,8 +41,17 @@ log.info('Iniciado')
 # Utilizo el directorio de datos como base para todos los SQLObjects
 sercom.sqlo.dir_base = conf.get('general', 'data_dir')
 
 # Utilizo el directorio de datos como base para todos los SQLObjects
 sercom.sqlo.dir_base = conf.get('general', 'data_dir')
 
+# Atajo
+intervalo = float(conf.get('general', 'intervalo'))
+
 # Busco entregas pendientes
 for entrega in Entrega.getPendientes(conn):
 # Busco entregas pendientes
 for entrega in Entrega.getPendientes(conn):
+    log.debug('Hay una entrega pendiente: %d.%d.%d', entrega.curso.curso,
+        entrega.nroEjercicio, entrega.entrega)
+    while Intento.faltaCompilar(entrega, conn):
+        log.debug('Esperando que termine de compilar, faltan %d intentos',
+            Intento.faltaCompilar(entrega, conn))
+        time.sleep(intervalo)
     log.info('Procesando entrega %d.%d.%d', entrega.curso.curso,
         entrega.nroEjercicio, entrega.entrega)
     for inscripto in Inscripto.selectBy(cursoID=entrega.cursoID, activo=True,
     log.info('Procesando entrega %d.%d.%d', entrega.curso.curso,
         entrega.nroEjercicio, entrega.entrega)
     for inscripto in Inscripto.selectBy(cursoID=entrega.cursoID, activo=True,
@@ -70,3 +81,4 @@ for entrega in Entrega.getPendientes(conn):
     log.debug('Entrega finalizada')
     entrega.finalizada = True
 
     log.debug('Entrega finalizada')
     entrega.finalizada = True
 
+log.info('Finalizado')