blob: e8447f51b9f9cb9bd423bd1f545a2f9f0c337fa4 [file] [log] [blame]
import sys
from utils import utils
import xmlrpclib
from automation.common import job
from automation.common import job_group
from automation.common import jobs_helper
import optparse
import os
def Main(argv):
"""The main function."""
parser = optparse.OptionParser()
parser.add_option("-c",
"--chromeos-versions",
dest="chromeos_versions",
default="latest",
help=("Use these chromeos versions." +
"Example: -c latest,weekly,quarterly")
)
parser.add_option("-t",
"--toolchain",
dest="toolchain",
default="trunk",
help="Toolchain to use {trunk|branch}"
)
parser.add_option("-b",
"--board",
dest="board",
default="x86-generic",
help="Toolchain to use {trunk|branch}"
)
parser.add_option("-p",
"--p4-snapshot",
dest="p4_snapshot",
default="",
help="An existing perforce checkout for debugging."
)
options = parser.parse_args(argv)[0]
server = xmlrpclib.Server("http://localhost:8000")
all_jobs = []
tc_job = jobs_helper.CreateBuildTCJob(p4_snapshot=options.p4_snapshot,
toolchain=options.toolchain)
all_jobs.append(tc_job)
versions = options.chromeos_versions
versions = versions.strip()
for version in versions.split(","):
build_chromeos_job = (
jobs_helper.CreateBuildAndTestChromeOSJob(
tc_job,
version,
p4_snapshot=options.p4_snapshot))
all_jobs.append(build_chromeos_job)
group = job_group.JobGroup(os.uname()[1], "/tmp/", all_jobs, False, False)
server.ExecuteJobGroup(utils.Serialize(group))
if __name__ == "__main__":
Main(sys.argv)