summaryrefslogtreecommitdiff
path: root/semaphoreci
diff options
context:
space:
mode:
authorEvgeny Vereshchagin <evvers@ya.ru>2019-01-29 03:44:02 +0100
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2019-02-09 17:43:46 +0100
commit841e1049016de8368644ffbe704752f1ba8d603c (patch)
tree851882b05b7c811dcae1d4099b10e170a9738d27 /semaphoreci
parenta61b550c5061b924b940f7b180c7c98face837b6 (diff)
downloadsystemd-841e1049016de8368644ffbe704752f1ba8d603c.tar.gz
semaphore: keep build settings in the repository
It should make it easier to tweak them without having access to SemaphoreCI itself (I'm glad I'm an admin there now but it shouldn't be necessary to be an admin to add a couple of kludges :-)). More importantly, changes to the settings will go through review and be tested before they're applied globally potentially breaking Semaphore as it happened two days ago. I'll point Semaphore CI to these scripts once the PR is merged.
Diffstat (limited to 'semaphoreci')
-rwxr-xr-xsemaphoreci/gcc-compilation.sh8
-rwxr-xr-xsemaphoreci/setup.sh27
2 files changed, 35 insertions, 0 deletions
diff --git a/semaphoreci/gcc-compilation.sh b/semaphoreci/gcc-compilation.sh
new file mode 100755
index 0000000000..0e0c83788a
--- /dev/null
+++ b/semaphoreci/gcc-compilation.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+set -ex
+
+meson build -Dtests=unsafe -Dsplit-usr=true -Dslow-tests=true
+ninja -C build
+ninja -C build test
+DESTDIR=/var/tmp/inst1 ninja -C build install
diff --git a/semaphoreci/setup.sh b/semaphoreci/setup.sh
new file mode 100755
index 0000000000..d9a7b50685
--- /dev/null
+++ b/semaphoreci/setup.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+set -ex
+
+sudo add-apt-repository ppa:upstream-systemd-ci/systemd-ci -y
+sudo rm -rf /etc/apt/sources.list.d/beineri* /etc/apt/sources.list.d/google-chrome* /etc/apt/sources.list.d/heroku* /etc/apt/sources.list.d/mongodb* /etc/apt/sources.list.d/webupd8team* /etc/apt/sources.list.d/rwky* /etc/apt/sources.list.d/rethinkdb* /etc/apt/sources.list.d/cassandra* /etc/apt/sources.list.d/cwchien* /etc/apt/sources.list.d/rabbitmq* /etc/apt/sources.list.d/docker* /home/runner/{.npm,.phpbrew,.phpunit,.kerl,.kiex,.lein,.nvm,.npm,.phpbrew,.rbenv}
+sudo bash -c "echo 'deb-src http://de.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse' >>/etc/apt/sources.list"
+sudo apt-get update -qq
+sudo apt-get build-dep systemd -y
+sudo apt-get install --force-yes -y util-linux libmount-dev libblkid-dev liblzma-dev libqrencode-dev libmicrohttpd-dev iptables-dev liblz4-dev libcurl4-gnutls-dev unifont clang-3.6 libasan0 itstool kbd cryptsetup-bin net-tools isc-dhcp-client iputils-ping strace qemu-system-x86 linux-image-virtual mount libgpg-error-dev libxkbcommon-dev python-lxml python3-lxml python3-pip libcap-dev
+# curl -s https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
+# sudo add-apt-repository -y 'deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty main'
+# sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
+sudo apt-get update
+sudo apt-get install --force-yes -y gettext python3-evdev python3-pyparsing libmount-dev
+# sudo apt-get install -y clang-6.0
+sudo sh -c 'echo 01010101010101010101010101010101 >/etc/machine-id'
+sudo mount -t tmpfs none /tmp
+test -d /run/mount || sudo mkdir /run/mount
+sudo adduser --system --no-create-home nfsnobody
+sudo rm -f /etc/mtab
+git clone https://github.com/ninja-build/ninja
+cd ninja
+./configure.py --bootstrap
+sudo cp ninja /usr/bin/
+cd ..
+pip3 install --user 'meson == 0.46.1'