0001-add-test-nspawn-and-Jenkinsfile-21758.patch
Jenkinsfile | ||
---|---|---|
1 |
@Library('eo-jenkins-lib@master') import eo.Utils |
|
2 | ||
3 |
pipeline { |
|
4 |
agent any |
|
5 |
stages { |
|
6 |
stage('Unit Tests') { |
|
7 |
steps { |
|
8 |
sh 'sudo ./test-nspawn buster' |
|
9 |
} |
|
10 |
} |
|
11 |
} |
|
12 |
post { |
|
13 |
always { |
|
14 |
script { |
|
15 |
utils = new Utils() |
|
16 |
utils.mail_notify(currentBuild, env, 'ci+jenkins-publik-devinst@entrouvert.org') |
|
17 |
} |
|
18 |
} |
|
19 |
success { |
|
20 |
cleanWs() |
|
21 |
} |
|
22 |
} |
|
23 |
} |
test-nspawn | ||
---|---|---|
1 |
#!/bin/sh |
|
2 |
set -ex |
|
3 | ||
4 |
if [ $1 = 'buster' ] |
|
5 |
then |
|
6 |
fs=/var/lib/machines/publik-devinst-$1 |
|
7 |
rsync -a --delete . $fs/opt/publik-devinst |
|
8 |
sudo systemd-nspawn -x -D $fs /opt/publik-devinst/test-nspawn test |
|
9 |
elif [ $1 = 'test' ] |
|
10 |
then |
|
11 |
#repo='deb http://deb.entrouvert.org/ stretch main' |
|
12 |
apt update |
|
13 |
apt install -y wget ca-certificates gnupg2 git ansible postgresql sudo python |
|
14 |
adduser --disabled-password --gecos "" testuser |
|
15 |
usermod -a -G sudo testuser |
|
16 |
echo 'testuser ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers |
|
17 |
chown -R testuser /opt/publik-devinst |
|
18 |
/usr/bin/wget https://deb.entrouvert.org/entrouvert.gpg |
|
19 |
apt-key add entrouvert.gpg |
|
20 |
apt update |
|
21 |
/etc/init.d/postgresql start |
|
22 |
su testuser -l -c 'cd /opt/publik-devinst; ansible-playbook -i inventory.yml install.yml' |
|
23 |
fi |
|
24 |
fi |
|
0 |
- |