aboutsummaryrefslogtreecommitdiff
path: root/lite-aeolus/submit-for-test.py
blob: 72c8b29bceebede5ea6c18dc3cd8fa241e1e44ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import os
import sys
from string import Template
import xmlrpclib

# Actually submit job to LAVA
SUBMIT = 1

ENV = os.environ
expect = sys.argv[1]

ENV["JOB_NAME_SHORT"] = ENV["JOB_NAME"].split("/", 1)[0]

with open("lava-job-definitions/%s/template.yaml" % ENV["DEVICE_TYPE"]) as f:
    tpl = f.read()


TEST_SPEC = """\
    monitors:
    - name: "boot_test"
      start: ""
      end: "%s"
      pattern: _unused_
""" % expect

tpl = Template(tpl)
jobdef = tpl.safe_substitute(ENV, TEST_SPEC=TEST_SPEC)

print(jobdef)

if SUBMIT:
    username = os.getenv("LAVA_USER")
    token = os.getenv("LAVA_TOKEN")
    uri = os.getenv("LAVA_SERVER")
    server = xmlrpclib.ServerProxy("https://%s:%s@%s" % (username, token, uri))

    job_id = server.scheduler.submit_job(jobdef)
    print("LAVA: https://%s../scheduler/job/%s" % (uri, job_id))