blob: b81e801334f317ebeddaa2c7141ac55cc403d467 (
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
- job:
name: leg-openstack-tempest-testing
project-type: freestyle
defaults: global
logrotate:
daysToKeep: 30
numToKeep: 30
properties:
- authorization:
anonymous:
- job-read
- job-extended-read
- job-workspace
linaro:
- job-read
- job-extended-read
- job-build
- job-cancel
parameters:
- string:
name: BUNDLE_STREAM_NAME
default: '/anonymous/tempest-testing/'
- string:
name: LAVA_SERVER
default: 'openstack.validation.linaro.org/RPC2/'
- string:
name: LAVA_JOB_DEFINITION
default: 'configs/leg-openstack-tempest/lava-job-definitions/${DEVICE_TYPE}/template-tempest.yaml'
- string:
name: DEVICE_TYPE
default: mustang
- string:
name: OS_DISTRO
default: ubuntu
- string:
name: OS_VERSION
default: trusty
- string:
name: DEVSTACK_BRANCH
default: master
- string:
name: MUSTANG_DEVICE
default: osmustang02
disabled: false
node: build
display-name: 'LEG - Openstack Tempest (Manual Test Builds)'
wrappers:
- timestamps
builders:
- shell: |
#!/bin/bash
set -ex
# IMPORTANT: specify the exact target device (required by the LAVA job
# template) to use for the specified device type
case "${DEVICE_TYPE}" in
mustang)
export DEVICE_TARGET=${MUSTANG_DEVICE}
;;
esac
rm -rf configs lci-build-tools
git clone --depth 1 http://git.linaro.org/ci/lci-build-tools.git
git clone --depth 1 http://git.linaro.org/ci/job/configs.git
# FIXME: regression introduced with commit 00a22059
wget https://git.linaro.org/ci/lci-build-tools.git/blob_plain/3d23206c4afe0213d8f05b669a8213e7b26903cc:/yaml-to-json.py -O lci-build-tools/yaml-to-json.py
# Update the template based on the specified os distro
case "${OS_DISTRO}" in
ubuntu)
# The template needs to be updated to specify the correct cloud image to
# pull. This must be done BEFORE calling yaml-to-json.py!
LAVA_CLOUD_IMG_URL="http://cloud-images.ubuntu.com/${OS_VERSION}/current/${OS_VERSION}-server-cloudimg-arm64-disk1.img"
sed -i "s|\${LAVA_CLOUD_IMG_URL}|${LAVA_CLOUD_IMG_URL}|" ${LAVA_JOB_DEFINITION}
;;
esac
# Update the metadata fields in the template
sed -e "s|\${DEVSTACK_BRANCH}|${DEVSTACK_BRANCH}|" \
-e "s|\${OS_DISTRO}|${OS_DISTRO}|" \
-e "s|\${OS_VERSION}|${OS_VERSION}|" \
< ${LAVA_JOB_DEFINITION} \
> ${LAVA_JOB_DEFINITION}.new
./lci-build-tools/yaml-to-json.py ${LAVA_JOB_DEFINITION}.new > custom_lava_job_definition.json
cat << EOF > post_build_lava_parameters
DEVICE_TYPE=${DEVICE_TYPE}
BUNDLE_STREAM_NAME=${BUNDLE_STREAM_NAME}
CUSTOM_JSON_URL=${JOB_URL}/ws/custom_lava_job_definition.json
LAVA_SERVER=${LAVA_SERVER}
EOF
- trigger-builds:
- project: 'post-build-lava'
property-file: post_build_lava_parameters
block: true
|