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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
#!/usr/lib/python
import argparse
import os
from string import Template
import sys
import xmlrpclib
# Command line args
# Device type
# Board name (platform)
# Username
# Token
# LAVA server (incl /RPC2)
# Build URL
# Branch name
def main():
parser = argparse.ArgumentParser()
parser.add_argument("--device-type",
help="Device type in LAVA",
dest="device_type",
required=True)
parser.add_argument("--board-name",
help="Zephyr platform name",
dest="board_name",
required=True)
parser.add_argument("--lava-user",
help="LAVA user",
dest="lava_user",
default=os.environ.get('LAVA_USER'))
parser.add_argument("--lava-token",
help="LAVA token",
dest="lava_token",
default=os.environ.get('LAVA_TOKEN'))
parser.add_argument("--lava-server",
help="LAVA server URL",
dest="lava_server",
required=True)
parser.add_argument("--branch-name",
help="branch name",
dest="branch_name",
required=True)
parser.add_argument("--build-url",
help="Jenkins build url",
dest="build_url",
required=True)
args = parser.parse_args()
# server = xmlrpclib.ServerProxy("http://%s:%s@%s/RPC2" % (username, token, hostname))
# TODO : Build the job file here from the template
#
#
# jobtext = jobfile.read()
# TODO : Sumbit the job
# id = server.scheduler.submit_job(jobtext)
# print server.scheduler.job_status(id)
# try:
# results = server.scheduler.submit_job(jobtext)
# except xmlrpclib.ProtocolError as err:
# print("LAVA submission failed")
# print("Error code: %d" % err.errcode)
# print("Error message: %s" % err.errmsg)
# TODO : Poll server.scheduler.job_status(id) with a timeout for completion
#
#
print("** submit_to_lava_lite.py")
if __name__ == "__main__":
main()
|