blob: 4266afa1ba722bf53294fe58d9c400b081f9f6ac (
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
|
- job:
name: odp-publish
project-type: matrix
defaults: global
description: |
* Run the tools listed in the axis on different
* ODP implementations and publish the result.
properties:
- authorization:
anonymous:
- job-read
- job-extended-read
linaro:
- job-read
- job-extended-read
- job-build
- job-cancel
- build-discarder:
num-to-keep: 30
days-to-keep: 30
parameters:
- string:
name: platform_type
default: 'generic'
- string:
name: GIT_BRANCH
default: 'master'
disabled: false
node: master
child-workspace: .
display-name: 'ODP publish'
axes:
- axis:
type: user-defined
name: build_type
values:
- lcov
- dox_html
- usr_html
- scan_build
- axis:
type: slave
name: label
values:
- docker-jessie-amd64
execution-strategy:
combination-filter: |
!((GIT_BRANCH=="api-next" || GIT_BRANCH=="next") && (platform_type=="netmap" || platform_type=="dpdk" || platform_type=="ks2"))
wrappers:
- timestamps
- matrix-tie-parent:
node: master
- timeout:
timeout: 60
builders:
- linaro-publish-token
- shell: |
#!/bin/bash
# Assume build-dependencies packages are installed
# build-essential git autoconf automake libtool doxygen libssl-dev
set -ex
rm -rf check-odp
git clone --depth 1 git://git.linaro.org/lng/check-odp.git
./check-odp/pre-install.sh
sudo apt-get install -y python-pycurl
case "${platform_type}" in
dpdk)
mkdir -p ${HOME}/bin
cp check-odp/helper/ci-uname ${HOME}/bin/uname
export PATH=${HOME}/bin:${PATH}
;;
ks2)
export tcbindir="${HOME}/srv/toolchain/arm-tc-16.02/bin"
;;
esac
case "${build_type}" in
lcov)
export LCOV=1
export SUDO=1
echo "build_type_dir=linux-${platform_type}-*lcov-html" > remote_directory_parameters
;;
dox_html)
export DOXYGEN_HTML=1
echo "build_type_dir=linux-${platform_type}-*doxygen-html" > remote_directory_parameters
;;
usr_html)
export USER_HTML=1
echo "build_type_dir=linux-${platform_type}" > remote_directory_parameters
;;
scan_build)
export SCAN_BUILD=1
echo "build_type_dir=linux-${platform_type}-scan-build" > remote_directory_parameters
;;
esac
set +e
bash -x ${WORKSPACE}/check-odp/build-${platform_type}.sh
retcode=$?
set -e
# Set the correct builddir
builddir="odp-${platform_type}"
[[ "${platform_type}" = "generic" ]] && builddir="odp"
# Move log files
if [ -d check-odp/build/${builddir} ]; then
mkdir -p out/log && find check-odp/build/${builddir} -type f -name '*.log' -exec cp {} out/log \;
fi
# Publish to snapshots
test -d ${HOME}/bin || mkdir ${HOME}/bin
wget https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py
if [ -d out ]; then
PUB_DEST=components/lng/odp/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/${BUILD_NUMBER}
time python ${HOME}/bin/linaro-cp.py --api_version 3 --link-latest out ${PUB_DEST}
echo "***************************"
echo "Logs published on http://snapshots.linaro.org/${PUB_DEST}"
echo "***************************"
fi
if [ ${retcode} -ne 0 ]; then
exit 1
else
exit 0
fi
- inject:
properties-file: remote_directory_parameters
- ssh:
site: 'docs.opendataplane.org'
target: 'incoming/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/${BUILD_NUMBER}'
source: 'check-odp/publishing/${GIT_BRANCH}/**'
command: |
cd /srv/docs.opendataplane.org
mkdir -p snapshots/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/${BUILD_NUMBER}
cp -a incoming/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/${BUILD_NUMBER}/${build_type_dir} snapshots/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/${BUILD_NUMBER}
rm -rf $(pwd)/snapshots/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/latest
ln -sf $(pwd)/snapshots/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/${BUILD_NUMBER} snapshots/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/latest
rm -rf incoming/odp-publish/${platform_type}/${build_type}/${GIT_BRANCH}/${BUILD_NUMBER}
timeout: 120000
remove-prefix: 'check-odp/publishing/${GIT_BRANCH}'
always-publish-from-master: true
publishers:
- warnings:
console-log-parsers:
- 'Clang (LLVM based)'
- 'Doxygen'
- email:
recipients: 'lng-ci@lists.linaro.org'
|