aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Savoye <rob.savoye@linaro.org>2016-06-17 02:57:25 +0200
committerRob Savoye <rob.savoye@linaro.org>2016-06-17 02:57:25 +0200
commit87de77e895a2e116cba32eb714bd1fc42a28d3bc (patch)
tree63797731926d7bfb89b5912eab2b4265d9f66906
parent00d5234ab47fe1a5c2cd4ea408f2299db5db0229 (diff)
New Dockerfiles for Ubuntu, Debian, and OpenSuse for TCWG.tcwg
-rw-r--r--jessie-amd64-tcwg/Dockerfile51
-rwxr-xr-xjessie-amd64-tcwg/build.sh23
-rw-r--r--suse13-amd64-tcwg/Dockerfile23
-rwxr-xr-xsuse13-amd64-tcwg/build.sh7
-rw-r--r--xenial-amd64-tcwg/Dockerfile83
-rwxr-xr-xxenial-amd64-tcwg/build.sh22
6 files changed, 209 insertions, 0 deletions
diff --git a/jessie-amd64-tcwg/Dockerfile b/jessie-amd64-tcwg/Dockerfile
new file mode 100644
index 00000000..f6d515af
--- /dev/null
+++ b/jessie-amd64-tcwg/Dockerfile
@@ -0,0 +1,51 @@
+FROM debian:jessie
+
+COPY *.list *.key /etc/apt/sources.list.d/
+
+RUN dpkg --add-architecture i386 \
+ && apt-key add /etc/apt/sources.list.d/*.key \
+ && apt-get update \
+ && DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y \
+ && DEBIAN_FRONTEND=noninteractive apt-get install -y devscripts \
+ && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
+ autoconf \
+ automake \
+ bison \
+ debhelper \
+ debian-archive-keyring \
+ debian-keyring \
+ device-tree-compiler \
+ fakeroot \
+ flex \
+ gcc \
+ git \
+ libtool \
+ lsb-release \
+ openjdk-8-jdk \
+ openssh-server \
+ qemu-user-static \
+ sudo \
+ wget \
+ && wget -q \
+ http://de.archive.ubuntu.com/ubuntu/pool/main/m/make-dfsg/make_3.81-8.2ubuntu3_amd64.deb \
+ && dpkg -i --force-all *.deb \
+ && apt-mark hold make \
+ && apt-get clean \
+ && rm -rf \
+ /etc/apt/sources.list.d/*.key \
+ /var/lib/apt/lists/* \
+ /tmp/* \
+ /var/tmp/* \
+ *.deb
+
+RUN groupadd -g 9000 tcwg-infra \
+ && useradd -m -g tcwg-infra -u 11827 tcwg-buildslave \
+ && echo 'tcwg-buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins \
+ && chmod 440 /etc/sudoers.d/jenkins \
+ && echo 'PATH="/opt/lsb/bin:$PATH"' >> /home/tcwg-buildslave/.profile \
+ && install -D -p -m0755 /usr/share/doc/git/contrib/workdir/git-new-workdir /usr/local/bin/git-new-workdir \
+ && sed -i -e 's:^session *required *pam_loginuid.so:# session required pam_loginuid.so:' /etc/pam.d/sshd \
+ && mkdir -p /var/run/sshd
+
+EXPOSE 22
+CMD ["/usr/sbin/sshd", "-D"]
diff --git a/jessie-amd64-tcwg/build.sh b/jessie-amd64-tcwg/build.sh
new file mode 100755
index 00000000..adafac8d
--- /dev/null
+++ b/jessie-amd64-tcwg/build.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+set -e
+
+trap cleanup_exit INT TERM EXIT
+
+cleanup_exit()
+{
+ rm -f *.list *.key
+}
+
+export LANG=C
+
+DISTRIBUTION=$(basename ${PWD} | cut -f1 -d '-')
+
+cp -a ../${DISTRIBUTION}.list linaro.list
+cp -a ../linaro-*.list ../linaro-*.key .
+sed -e "s|@DISTRIBUTION@|${DISTRIBUTION}|" -i *.list
+
+# fixup - get rid of PPA usage
+rm -f linaro-*ppa.*
+
+docker build --tag=linaro/$(basename ${PWD}) .
diff --git a/suse13-amd64-tcwg/Dockerfile b/suse13-amd64-tcwg/Dockerfile
new file mode 100644
index 00000000..5e11a187
--- /dev/null
+++ b/suse13-amd64-tcwg/Dockerfile
@@ -0,0 +1,23 @@
+FROM docker.io/saltstack/opensuse-13.2-minimal
+
+RUN zypper update \
+ && zypper -n install \
+ git \
+ gcc \
+ gcc-c++ \
+ autoconf \
+ libtool \
+ automake \
+ autogen \
+ texinfo \
+ python-devel \
+ ncurses-devel \
+ flex \
+ bison
+
+RUN useradd buildslave \
+ && groupadd -g 9000 tcwg-infra \
+ && useradd -m -g tcwg-infra -u 11827 tcwg-buildslave
+
+EXPOSE 22
+CMD ["/usr/sbin/sshd", "-D"]
diff --git a/suse13-amd64-tcwg/build.sh b/suse13-amd64-tcwg/build.sh
new file mode 100755
index 00000000..d18869ee
--- /dev/null
+++ b/suse13-amd64-tcwg/build.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+set -e
+
+export LANG=C
+
+docker build --tag=linaro/$(basename ${PWD}) .
diff --git a/xenial-amd64-tcwg/Dockerfile b/xenial-amd64-tcwg/Dockerfile
new file mode 100644
index 00000000..ce0ba502
--- /dev/null
+++ b/xenial-amd64-tcwg/Dockerfile
@@ -0,0 +1,83 @@
+# TCWG configuration with everything needed to build the GNU toolchain and test it.
+# To run the resulting image manually and mount /tmp to /mnt, use:
+# docker run -i -v /tmp:/mnt -t tcwg/wily-amd64-tcwg /bin/bash
+FROM ubuntu:xenial
+
+COPY *.list *.key /etc/apt/sources.list.d/
+
+RUN dpkg --add-architecture i386 \
+ && apt-key add /etc/apt/sources.list.d/*.key \
+ && apt-get update \
+ && DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y \
+ && DEBIAN_FRONTEND=noninteractive apt-get install -y devscripts \
+ && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
+ alien \
+ autoconf \
+ autogen \
+ automake \
+ bison \
+ build-essential \
+ ccache \
+ ccrypt \
+ byacc \
+ debhelper \
+ dejagnu \
+ dh-autoreconf \
+ dh-translations \
+ distro-info-data \
+ emacs \
+ fakeroot \
+ flex \
+ g++-multilib \
+ gawk \
+ gdb \
+ gdbserver \
+ git \
+ libexpat1-dev \
+ liblzma-dev \
+ libncurses5-dev \
+ libpython2.7-dev \
+ libreadline-dev \
+ libtool \
+ lsb-release \
+ mingw-w64 \
+ net-tools \
+ netcat \
+ openjdk-8-jdk \
+ openssh-server \
+ python-dev \
+ qemu-user \
+ sudo \
+ texinfo \
+ texlive-fonts-recommended \
+ texlive-latex-recommended \
+ time \
+ vim \
+ wget \
+ wine \
+ xz-utils \
+ zlib1g-dev \
+ && find /opt -type d |xargs chmod 0755 \
+ && wget -q \
+ http://de.archive.ubuntu.com/ubuntu/pool/main/m/make-dfsg/make_3.81-8.2ubuntu3_amd64.deb \
+ && dpkg -i --force-all *.deb \
+ && apt-mark hold make \
+ && apt-get clean \
+ && rm -rf \
+ /etc/apt/sources.list.d/*.key \
+ /var/lib/apt/lists/* \
+ /tmp/* \
+ /var/tmp/* \
+ *.deb
+
+RUN groupadd -g 9000 tcwg-infra \
+ && useradd -m -g tcwg-infra -u 11827 tcwg-buildslave \
+ && echo 'tcwg-buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins \
+ && chmod 440 /etc/sudoers.d/jenkins \
+ && echo 'PATH="/opt/lsb/bin:$PATH"' >> /home/tcwg-buildslave/.profile \
+ && install -D -p -m0755 /usr/share/doc/git/contrib/workdir/git-new-workdir /usr/local/bin/git-new-workdir \
+ && sed -i -e 's:^session *required *pam_loginuid.so:# session required pam_loginuid.so:' /etc/pam.d/sshd \
+ && mkdir -p /var/run/sshd
+
+EXPOSE 22
+CMD ["/usr/sbin/sshd", "-D"]
diff --git a/xenial-amd64-tcwg/build.sh b/xenial-amd64-tcwg/build.sh
new file mode 100755
index 00000000..39a649a9
--- /dev/null
+++ b/xenial-amd64-tcwg/build.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+set -e
+
+trap cleanup_exit INT TERM EXIT
+
+cleanup_exit()
+{
+ rm -f *.list *.key
+}
+
+export LANG=C
+
+DISTRIBUTION=$(basename ${PWD} | cut -f1 -d '-')
+
+cp -a ../linaro-*.list ../linaro-*.key .
+sed -e "s|@DISTRIBUTION@|${DISTRIBUTION}|" -i *.list
+
+# fixup - get rid of PPA usage
+rm -f linaro-*ppa.*
+
+docker build --tag=linaro/$(basename ${PWD}) .