mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-16 06:48:25 +00:00
Add support for ICE/STUN/TURN in res_rtp_asterisk and chan_sip.
Review: https://reviewboard.asterisk.org/r/1891/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@369517 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
140
res/pjproject/tests/automated/run_continuous.py
Executable file
140
res/pjproject/tests/automated/run_continuous.py
Executable file
@@ -0,0 +1,140 @@
|
||||
#!/usr/bin/python
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
import datetime
|
||||
import ccdash
|
||||
|
||||
INTERVAL = 300
|
||||
DELAY = 0
|
||||
ONCE = False
|
||||
SUFFIX = ""
|
||||
FORCE = False
|
||||
|
||||
def run_scenarios(scenarios, group):
|
||||
# Run each scenario
|
||||
rc = 0
|
||||
for scenario in scenarios:
|
||||
argv = []
|
||||
argv.append("ccdash.py")
|
||||
argv.append("scenario")
|
||||
argv.append(scenario)
|
||||
argv.append("--group")
|
||||
argv.append(group)
|
||||
thisrc = ccdash.main(argv)
|
||||
if rc==0 and thisrc:
|
||||
rc = thisrc
|
||||
return rc
|
||||
|
||||
|
||||
def usage():
|
||||
print """Periodically monitor working directory for Continuous and Nightly builds
|
||||
|
||||
Usage:
|
||||
run_continuous.py [options] scenario1.xml [scenario2.xml ...]
|
||||
|
||||
options:
|
||||
These are options which will be processed by run_continuous.py:
|
||||
|
||||
--delay MIN Delay both Continuous and Nightly builds by MIN minutes.
|
||||
This is useful to coordinate the build with other build
|
||||
machines. By default, Continuous build will be done right
|
||||
after changes are detected, and Nightly build will be done
|
||||
at 00:00 GMT. MIN is a float number.
|
||||
|
||||
--once Just run one loop to see if anything needs to be done and
|
||||
if so just do it once. Quit after that.
|
||||
|
||||
--suffix SFX Set group suffix to SFX. For example, if SFX is "-2.x", then
|
||||
tests will be submitted to "Nightly-2.x", "Continuous-2.x",
|
||||
and "Experimental-2.x"
|
||||
|
||||
--force Force running the test even when nothing has changed.
|
||||
"""
|
||||
sys.exit(1)
|
||||
|
||||
if __name__ == "__main__":
|
||||
if len(sys.argv)<=1 or sys.argv[1]=="-h" or sys.argv[1]=="--h" or sys.argv[1]=="--help" or sys.argv[1]=="/h":
|
||||
usage()
|
||||
|
||||
# Splice list
|
||||
scenarios = []
|
||||
i = 1
|
||||
while i < len(sys.argv):
|
||||
if sys.argv[i]=="--delay":
|
||||
i = i + 1
|
||||
if i >= len(sys.argv):
|
||||
print "Error: missing argument"
|
||||
sys.exit(1)
|
||||
DELAY = float(sys.argv[i]) * 60
|
||||
print "Delay is set to %f minute(s)" % (DELAY / 60)
|
||||
elif sys.argv[i]=="--suffix":
|
||||
i = i + 1
|
||||
if i >= len(sys.argv):
|
||||
print "Error: missing argument"
|
||||
sys.exit(1)
|
||||
SUFFIX = sys.argv[i]
|
||||
print "Suffix is set to %s" % (SUFFIX)
|
||||
elif sys.argv[i]=="--once":
|
||||
ONCE = True
|
||||
elif sys.argv[i]=="--force":
|
||||
FORCE = True
|
||||
else:
|
||||
# Check if scenario exists
|
||||
scenario = sys.argv[i]
|
||||
if not os.path.exists(scenario):
|
||||
print "Error: file " + scenario + " does not exist"
|
||||
sys.exit(1)
|
||||
scenarios.append(scenario)
|
||||
print "Scenario %s added" % (scenario)
|
||||
i = i + 1
|
||||
|
||||
if len(scenarios) < 1:
|
||||
print "Error: scenario is required"
|
||||
sys.exit(1)
|
||||
|
||||
# Current date
|
||||
utc = time.gmtime(None)
|
||||
day = utc.tm_mday
|
||||
|
||||
# Loop foreva
|
||||
while True:
|
||||
argv = []
|
||||
|
||||
# Anything changed recently?
|
||||
argv.append("ccdash.py")
|
||||
argv.append("status")
|
||||
argv.append("-w")
|
||||
argv.append("../..")
|
||||
rc = ccdash.main(argv)
|
||||
|
||||
utc = time.gmtime(None)
|
||||
|
||||
if utc.tm_mday != day or rc != 0 or FORCE:
|
||||
group = ""
|
||||
if utc.tm_mday != day:
|
||||
day = utc.tm_mday
|
||||
group = "Nightly" + SUFFIX
|
||||
elif rc != 0:
|
||||
group = "Continuous" + SUFFIX
|
||||
else:
|
||||
group = "Experimental" + SUFFIX
|
||||
if DELAY > 0:
|
||||
print "Will run %s after %f s.." % (group, DELAY)
|
||||
time.sleep(DELAY)
|
||||
rc = run_scenarios(scenarios, group)
|
||||
msg = str(datetime.datetime.now()) + \
|
||||
": done running " + group + \
|
||||
"tests, will check again in " + str(INTERVAL) + "s.."
|
||||
if ONCE:
|
||||
sys.exit(0)
|
||||
else:
|
||||
# Nothing changed
|
||||
msg = str(datetime.datetime.now()) + \
|
||||
": No update, will check again in " + str(INTERVAL) + "s.."
|
||||
if ONCE:
|
||||
sys.exit(1)
|
||||
|
||||
print msg
|
||||
time.sleep(INTERVAL)
|
||||
|
||||
Reference in New Issue
Block a user