Merge branch 'devel_anabatic' of ssh://bop.soc.lip6.fr/users/largo2/git/coriolis into devel_anabatic
This commit is contained in:
commit
31940d2824
|
@ -0,0 +1,2 @@
|
||||||
|
# Nightly build of Coriolis.
|
||||||
|
0 4 * * * ${HOME}/bin/socInstaller.py --nightly --rm-all --benchs > /dev/null 2>&1
|
|
@ -34,6 +34,7 @@ try:
|
||||||
import subprocess
|
import subprocess
|
||||||
import socket
|
import socket
|
||||||
import re
|
import re
|
||||||
|
import bz2
|
||||||
import smtplib
|
import smtplib
|
||||||
from email.mime.text import MIMEText
|
from email.mime.text import MIMEText
|
||||||
from email.mime.multipart import MIMEMultipart
|
from email.mime.multipart import MIMEMultipart
|
||||||
|
@ -337,6 +338,21 @@ class Configuration ( object ):
|
||||||
if fd: fd.close()
|
if fd: fd.close()
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def compressLogs ( self ):
|
||||||
|
for log in self._logs.values():
|
||||||
|
if not log: continue
|
||||||
|
|
||||||
|
fd = open( log, 'r' )
|
||||||
|
bzfd = bz2.BZ2File( log+'.bz2', 'w' )
|
||||||
|
|
||||||
|
for line in fd.readlines(): bzfd.write( line )
|
||||||
|
|
||||||
|
bzfd.close()
|
||||||
|
fd.close()
|
||||||
|
|
||||||
|
os.unlink( log )
|
||||||
|
return
|
||||||
|
|
||||||
|
|
||||||
class Report ( object ):
|
class Report ( object ):
|
||||||
|
|
||||||
|
@ -500,6 +516,7 @@ try:
|
||||||
Command( [ 'ssh', host, command ], fd ).execute()
|
Command( [ 'ssh', host, command ], fd ).execute()
|
||||||
|
|
||||||
conf.closeLogs()
|
conf.closeLogs()
|
||||||
|
|
||||||
conf.success = True
|
conf.success = True
|
||||||
|
|
||||||
except ErrorMessage, e:
|
except ErrorMessage, e:
|
||||||
|
@ -518,4 +535,6 @@ if conf.doSendReport:
|
||||||
report.attachLog( conf.logs['benchs'] )
|
report.attachLog( conf.logs['benchs'] )
|
||||||
report.send()
|
report.send()
|
||||||
|
|
||||||
|
conf.compressLogs()
|
||||||
|
|
||||||
sys.exit( conf.rcode )
|
sys.exit( conf.rcode )
|
||||||
|
|
|
@ -207,7 +207,8 @@ class Inst :
|
||||||
if not self._st_cell._hur_cell :
|
if not self._st_cell._hur_cell :
|
||||||
err = "\n[Stratus ERROR] HurricanePlug : Problem of hurricane cell.\nTry to contact Coriolis team.\n"
|
err = "\n[Stratus ERROR] HurricanePlug : Problem of hurricane cell.\nTry to contact Coriolis team.\n"
|
||||||
raise Exception ( err )
|
raise Exception ( err )
|
||||||
|
|
||||||
|
UpdateSession.open()
|
||||||
inst = Instance.create ( self._st_cell._hur_cell
|
inst = Instance.create ( self._st_cell._hur_cell
|
||||||
, self._name
|
, self._name
|
||||||
, self._hur_masterCell
|
, self._hur_masterCell
|
||||||
|
@ -345,7 +346,7 @@ class Inst :
|
||||||
# Not for vdd/vss in case of utilisation of SetGlobal
|
# Not for vdd/vss in case of utilisation of SetGlobal
|
||||||
# The detection is done with vst driver in this case ...
|
# The detection is done with vst driver in this case ...
|
||||||
for plug in self._hur_instance.getUnconnectedPlugs():
|
for plug in self._hur_instance.getUnconnectedPlugs():
|
||||||
if plug.getMasterNet().getType() not in ( TypePOWER, TypeGROUND ) :
|
if plug.getMasterNet().getType() not in ( Net.Type.POWER, Net.Type.GROUND ) :
|
||||||
name = str(plug.getMasterNet().getName())
|
name = str(plug.getMasterNet().getName())
|
||||||
chaine = re.search ( "(.*)\(", name )
|
chaine = re.search ( "(.*)\(", name )
|
||||||
if chaine : name = chaine.group(1)
|
if chaine : name = chaine.group(1)
|
||||||
|
@ -354,6 +355,8 @@ class Inst :
|
||||||
err += ' (raw name: <%s>)\n' % str(plug.getMasterNet().getName())
|
err += ' (raw name: <%s>)\n' % str(plug.getMasterNet().getName())
|
||||||
raise Exception ( err )
|
raise Exception ( err )
|
||||||
|
|
||||||
|
UpdateSession.close()
|
||||||
|
|
||||||
##############
|
##############
|
||||||
### Prints ###
|
### Prints ###
|
||||||
##############
|
##############
|
||||||
|
|
|
@ -274,7 +274,7 @@ class Model :
|
||||||
direction = net.getDirection()
|
direction = net.getDirection()
|
||||||
name = str(net.getName())
|
name = str(net.getName())
|
||||||
|
|
||||||
if net.getType() in ( TypePOWER, TypeGROUND, TypeCLOCK ) :
|
if net.getType() in ( Net.Type.POWER, Net.Type.GROUND, Net.Type.CLOCK ) :
|
||||||
found = True
|
found = True
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -1199,7 +1199,7 @@ class Model :
|
||||||
if plug_de_inst.getMasterNet().getDirection() == DirectionIN :
|
if plug_de_inst.getMasterNet().getDirection() == DirectionIN :
|
||||||
# ignore vdd and vss
|
# ignore vdd and vss
|
||||||
type = plug_de_inst.getNet().getType()
|
type = plug_de_inst.getNet().getType()
|
||||||
if type not in ( TypePOWER, TypeGROUND ) : net_entree_inst.append ( plug_de_inst.getNet() )
|
if type not in ( Net.Type.POWER, Net.Type.GROUND ) : net_entree_inst.append ( plug_de_inst.getNet() )
|
||||||
|
|
||||||
### Deletion of te instance ###
|
### Deletion of te instance ###
|
||||||
# If the instance has only one output
|
# If the instance has only one output
|
||||||
|
|
Loading…
Reference in New Issue