blob: 2c6d38799405b80aa8b801aeab624d30e9ddc963 (
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
|
- job:
name: 96boards-reference-platform-openembedded
project-type: matrix
defaults: global
logrotate:
daysToKeep: 30
numToKeep: 30
artifactNumToKeep: 1
properties:
- authorization:
anonymous:
- job-read
- job-extended-read
- job-workspace
linaro:
- job-read
- job-extended-read
- job-build
- job-cancel
parameters:
- string:
name: IMAGES
default: 'core-image-minimal'
- string:
name: MANIFEST_BRANCH
default: 'jethro'
disabled: false
node: master
display-name: '96boards - Reference Platform - OpenEmbedded'
axes:
- axis:
type: user-defined
name: MACHINE
values:
- dragonboard-410c
- hikey
- axis:
type: user-defined
name: DISTRO
values:
- rpb
- axis:
type: slave
name: label
values:
- docker-jessie-amd64
execution-strategy:
sequential: true
wrappers:
- timestamps
- matrix-tie-parent:
node: master
builders:
- linaro-publish-token:
host: builds.96boards.org
- shell: |
#!/bin/bash
set -ex
trap cleanup_exit INT TERM EXIT
cleanup_exit()
{
echo "Running cleanup_exit..."
}
sudo apt-get update
sudo apt-get install -y python-pycurl chrpath gawk texinfo libsdl1.2-dev whiptail diffstat cpio
mkdir -p ${HOME}/bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ${HOME}/bin/repo
chmod a+x ${HOME}/bin/repo
export PATH=${HOME}/bin:${PATH}
# initialize repo if not done already
if [ ! -e ".repo/manifest.xml" ]; then
repo init -u https://github.com/96boards/oe-rpb-manifest.git -b ${MANIFEST_BRANCH}
# link to shared downloads on persistent disk
# our builds config is expecting downloads and sstate-cache, here.
# DL_DIR = "${OEROOT}/sources/downloads"
# SSTATE_DIR = "${OEROOT}/build/sstate-cache"
mkdir -p ${HOME}/srv/oe/downloads ${HOME}/srv/oe/sstate-cache
mkdir -p sources build
ln -s ${HOME}/srv/oe/downloads sources/
ln -s ${HOME}/srv/oe/sstate-cache build/
fi
repo sync
cp .repo/manifest.xml source-manifest.xml
repo manifest -r -o pinned-manifest.xml
MANIFEST_COMMIT=$(cd .repo/manifests && git rev-parse --short HEAD)
# the setup-environment will create auto.conf and site.conf
# make sure we get rid of old config.
# let's remove the previous TMPDIR as well.
# we want to preserve build/buildhistory though.
rm -rf conf build/conf build/tmp-*glibc/
# Accept EULA if/when needed
export EULA_dragonboard410c=1
source setup-environment build
# Add job BUILD_NUMBER to output files names
cat << EOF >> conf/auto.conf
IMAGE_NAME_append = "-${BUILD_NUMBER}"
KERNEL_IMAGE_BASE_NAME_append = "-${BUILD_NUMBER}"
MODULE_IMAGE_BASE_NAME_append = "-${BUILD_NUMBER}"
DT_IMAGE_BASE_NAME_append = "-${BUILD_NUMBER}"
BOOT_IMAGE_BASE_NAME_append = "-${BUILD_NUMBER}"
EOF
# get build stats to make sure that we use sstate properly
cat << EOF >> conf/auto.conf
INHERIT += "buildstats buildstats-summary"
EOF
# add useful debug info
cat conf/{site,auto}.conf
bitbake ${IMAGES}
# Prepare files to publish
rm -f ${WORKSPACE}/build/tmp-*glibc/deploy/images/${MACHINE}/*.txt
find ${WORKSPACE}/build/tmp-*glibc/deploy/images/${MACHINE} -type l -delete
mv {source,pinned}-manifest.xml ${WORKSPACE}/build/tmp-*glibc/deploy/images/${MACHINE}
# Create MD5SUMS file
(cd ${WORKSPACE}/build/tmp-*glibc/deploy/images/${MACHINE} && md5sum * > MD5SUMS.txt)
# Publish
test -d ${HOME}/bin || mkdir ${HOME}/bin
wget -q https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py
time python ${HOME}/bin/linaro-cp.py \
--server ${PUBLISH_SERVER} \
--link-latest \
${WORKSPACE}/build/tmp-*glibc/deploy/images/${MACHINE}/ \
snapshots/reference-platform/openembedded/${MACHINE}/${BUILD_NUMBER}
publishers:
- archive:
artifacts: 'build/tmp-*glibc/deploy/images/${MACHINE}/*'
- email:
recipients: 'fathi.boudra@linaro.org koen.kooi@linaro.org nicolas.dechesne@linaro.org ricardo.salveti@linaro.org'
|