aboutsummaryrefslogtreecommitdiff
path: root/zephyr-tutorial/submit_to_lava_lite.py
blob: 09fcdcdb571d64dbe1884a287019f972a15613e7 (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
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()