blob: e7ba39ccb188864314beb2ef62babe4c800dd3f2 [file] [log] [blame]
Benny Prijonoa6b3e7c2010-08-16 12:18:20 +00001#!/usr/bin/python
2import os
3import sys
4import time
Benny Prijono4adead22010-08-16 12:33:52 +00005import datetime
Benny Prijonoa6b3e7c2010-08-16 12:18:20 +00006import ccdash
7
8GROUP = "Continuous"
Benny Prijonoa72cdca2010-08-17 14:53:09 +00009INTERVAL = 300
Benny Prijonoa6b3e7c2010-08-16 12:18:20 +000010
11if __name__ == "__main__":
12 if len(sys.argv)<=1 or sys.argv[1]=="-h" or sys.argv[1]=="--h" or sys.argv[1]=="/h":
13 print "Usage: run_continuous.py scenario1.xml [scenario2.xml ...]"
14 sys.exit(0)
15
16 # Splice list
17 scenarios = sys.argv[1:]
18
19 # Check if scenario exists
20 for scenario in scenarios:
21 if not os.path.exists(scenario):
22 print "Error: file " + scenario + " does not exist"
23 sys.exit(1)
24
25 # Loop foreva
26 while True:
27 argv = []
28
29 # Anything changed recently?
30 argv.append("ccdash.py")
31 argv.append("status")
32 argv.append("-w")
33 argv.append("../..")
34 rc = ccdash.main(argv)
35
36 if rc==0:
37 # Nothing changed
Benny Prijono4adead22010-08-16 12:33:52 +000038 print str(datetime.datetime.now()) + ": No update, will check again in " + str(INTERVAL) + "s.."
Benny Prijonoa6b3e7c2010-08-16 12:18:20 +000039 time.sleep(INTERVAL)
40 continue
41
42 # Run each scenario
43 for scenario in scenarios:
44 argv = []
45 argv.append("ccdash.py")
46 argv.append("scenario")
47 argv.append(scenario)
48 argv.append("--group")
49 argv.append(GROUP)
50 thisrc = ccdash.main(argv)
51 if rc==0 and thisrc:
52 rc = thisrc
53
54 # Sleep even if something does change
Benny Prijonoa72cdca2010-08-17 14:53:09 +000055 print str(datetime.datetime.now()) + ": done, will check again in " + str(INTERVAL) + "s.."
Benny Prijonoa6b3e7c2010-08-16 12:18:20 +000056 time.sleep(INTERVAL)
57