-
Notifications
You must be signed in to change notification settings - Fork 31
/
JenkinsfileHW
85 lines (77 loc) · 4.16 KB
/
JenkinsfileHW
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
79
80
81
82
83
84
85
// Pipeline
lock(label: 'adgt_test_harness_boards') {
@Library('sdgtt-lib@adgt-test-harness') _ // Not necessary when we turn on global libraries :)
def hdlBranch = "NA"
def linuxBranch = "NA"
def bootPartitionBranch = "2022_r2"
def firmwareVersion = 'v0.34'
def bootfile_source = 'artifactory' // options: sftp, artifactory, http, local
def harness = getGauntlet(hdlBranch, linuxBranch, bootPartitionBranch, firmwareVersion, bootfile_source)
//Update repos
harness.set_env('libiio_repo', 'http://gateway.englab:3000/mirrors/libiio.git')
harness.set_env('libiio_branch', 'v0.25')
harness.set_env('nebula_repo', 'http://gateway.englab:3000/mirrors/nebula.git')
harness.set_env('nebula_branch','dev')
harness.set_env('nebula_config_branch','release')
// harness.set_env('telemetry_repo', 'http://gateway.englab:3000/mirrors/telemetry.git')
// harness.set_env('telemetry_branch', 'master')
harness.set_env('matlab_repo', 'https://github.com/analogdevicesinc/TransceiverToolbox.git') // Not necessary when using checkout scm
harness.set_env('matlab_release','R2023b')
harness.set_env('matlab_license','network')
harness.set_matlab_timeout('8m')
//Update nebula config from netbox
harness.set_update_nebula_config(true)
harness.set_env('nebula_config_source','netbox')
harness.set_env('netbox_ip','primary.englab')
harness.set_env('netbox_port','8000')
harness.set_env('netbox_base_url','netbox')
withCredentials([string(credentialsId: 'netbox_token', variable: 'TOKEN')]) {
harness.set_env('netbox_token', TOKEN)
}
harness.set_env('netbox_devices_tag','active')
//Update agent with required deps
harness.set_required_agent(["sdg-nuc-01","sdg-nuc-02"])
harness.set_env('update_container_lib', true)
harness.set_env('update_lib_requirements', true)
harness.update_agents()
//Set other test parameters
harness.set_nebula_debug(true)
harness.set_enable_docker(true)
harness.set_env('docker_image', 'tfcollins/test-harness-ci-ubuntu-22_04:latest')
harness.set_docker_host_mode(true) // Set to false if using machine-specific license
harness.set_send_telemetry(false)
harness.set_log_jira(false)
harness.set_enable_resource_queuing(true)
harness.set_lock_agent(false) // Set to true if using machine-specific license
harness.set_elastic_server('192.168.10.1')
harness.set_required_hardware(["zynq-zed-adv7511-adrv9002-vcmos",
"zynq-zed-adv7511-adrv9002-rx2tx2-vcmos",
"zynqmp-zcu102-rev10-adrv9002-vcmos",
"zynqmp-zcu102-rev10-adrv9002-rx2tx2-vcmos",
"zynqmp-zcu102-rev10-adrv9002-vlvds",
"zynqmp-zcu102-rev10-adrv9002-rx2tx2-vlvds",
"pluto",
"zynq-adrv9361-z7035-fmc",
"zynq-zed-adv7511-ad9364-fmcomms4",
"zynq-zed-adv7511-ad9361-fmcomms2-3",
"zynq-zc706-adv7511-ad9361-fmcomms5",
"zynq-zc702-adv7511-ad9361-fmcomms2-3",
"zynq-adrv9364-z7020-bob-vcmos",
"zynq-adrv9364-z7020-bob-vlvds"])
harness.set_docker_args(['Vivado', 'MATLAB', 'udev'])
harness.set_nebula_local_fs_source_root("artifactory.analog.com")
// Set stages (Stages are run sequentially on agents.)
harness.add_stage(harness.stage_library("UpdateBOOTFiles"), 'stopWhenFail',
harness.stage_library("RecoverBoard"))
// Test stage
harness.set_matlab_commands(["ad=adi.utils.libad9361",
"ad.download_libad9361()",
"addpath(genpath('test'))",
"pyenv('Version','/usr/bin/python3')",
"runHWTests(getenv('board'))"])
harness.add_stage(harness.stage_library("MATLABTests"),'continueWhenFail')
// Send results
harness.add_stage(harness.stage_library('SendResults'),'continueWhenFail')
// Go go
harness.run_stages()
}