Commit d13aa7af authored by Timo Koch's avatar Timo Koch
Browse files

Docker images for testing

parent 5bd2fbab
*.tac
\ No newline at end of file
# A latent buildbot worker with ubuntu
# for testing merge requests for dumux-lecture
# the core modules / dune dependencies are release 2.5
FROM ubuntu:xenial
MAINTAINER timokoch <timo.koch@iws.uni-stuttgart.de>
# get the package list
RUN apt-get update && apt-get dist-upgrade --no-install-recommends --yes && \
apt-get install --no-install-recommends --yes \
ca-certificates \
vim \
python-dev \
python-pip \
libffi-dev \
git \
pkg-config \
wget \
build-essential \
gfortran \
cmake \
mpi-default-dev \
mpi-default-bin \
libsuitesparse-dev \
libmetis-dev \
libsuperlu-dev \
libscotchparmetis-dev \
zlib1g-dev \
libboost-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# create a buildbot user
RUN useradd --create-home --home-dir /data/ buildbot
# create system-wide symlink to dunecontrol for convenience
RUN ln -s /data/src/dune-common/bin/dunecontrol /usr/bin/dunecontrol
# install and set up a virtualenv
RUN pip install virtualenv six
# switch to buildbot user
USER buildbot
RUN virtualenv /data/buildbot
WORKDIR /data/buildbot
# install buildbot master using pip in a virtual env
RUN ./bin/pip install --upgrade pip six
RUN ./bin/pip install 'buildbot-worker==0.9.0b9'
# The files in worker get configured by environmental variables at runtime
# Build this image in the same folder as the worker folder
ADD worker /data/buildbot/worker
USER root
RUN chown -R buildbot:buildbot /data/buildbot/worker
USER buildbot
# create source directory
RUN mkdir -p /data/src
WORKDIR /data/src/
RUN git clone -b releases/2.4 https://gitlab.dune-project.org/core/dune-common.git && \
git clone -b releases/2.4 https://gitlab.dune-project.org/core/dune-geometry.git && \
git clone -b releases/2.4 https://gitlab.dune-project.org/core/dune-grid.git && \
git clone -b releases/2.4 https://gitlab.dune-project.org/core/dune-istl.git && \
git clone -b releases/2.4 https://gitlab.dune-project.org/core/dune-localfunctions.git && \
git clone -b releases/2.4 https://gitlab.dune-project.org/extensions/dune-alugrid.git && \
git clone -b releases/2.0 git://github.com/smuething/dune-multidomain.git && \
git clone -b releases/2.3 git://github.com/smuething/dune-multidomaingrid.git && \
git clone -b releases/2.0 https://gitlab.dune-project.org/pdelab/dune-pdelab.git && \
git clone -b releases/2.3 https://gitlab.dune-project.org/staging/dune-typetree.git && \
git clone https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git && \
./dumux/bin/installexternal.sh gstat
# start worker
WORKDIR /data/buildbot/
CMD ["./bin/buildbot-worker", "start", "--nodaemon", "worker"]
# A latent buildbot worker with ubuntu
# for testing merge requests for dumux-lecture
# the core modules / dune dependencies are release 2.5
FROM ubuntu:xenial
MAINTAINER timokoch <timo.koch@iws.uni-stuttgart.de>
# get the package list
RUN apt-get update && apt-get dist-upgrade --no-install-recommends --yes && \
apt-get install --no-install-recommends --yes \
ca-certificates \
vim \
python-dev \
python-pip \
libffi-dev \
git \
pkg-config \
wget \
build-essential \
gfortran \
cmake \
mpi-default-dev \
mpi-default-bin \
libsuitesparse-dev \
libmetis-dev \
libsuperlu-dev \
libscotchparmetis-dev \
zlib1g-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# create a buildbot user
RUN useradd --create-home --home-dir /data/ buildbot
# create system-wide symlink to dunecontrol for convenience
RUN ln -s /data/src/dune-common/bin/dunecontrol /usr/bin/dunecontrol
# install and set up a virtualenv
RUN pip install virtualenv six
# switch to buildbot user
USER buildbot
RUN virtualenv /data/buildbot
WORKDIR /data/buildbot
# install buildbot master using pip in a virtual env
RUN ./bin/pip install --upgrade pip six
RUN ./bin/pip install 'buildbot-worker==0.9.0b9'
# The files in worker get configured by environmental variables at runtime
# Build this image in the same folder as the worker folder
ADD worker /data/buildbot/worker
USER root
RUN chown -R buildbot:buildbot /data/buildbot/worker
USER buildbot
# create source directory
RUN mkdir -p /data/src
WORKDIR /data/src/
RUN git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-common.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-geometry.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-grid.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-istl.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-localfunctions.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/staging/dune-uggrid.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/extensions/dune-foamgrid.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/extensions/dune-alugrid.git && \
git clone https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git && \
./dumux/bin/installexternal.sh gstat
# start worker
WORKDIR /data/buildbot/
CMD ["./bin/buildbot-worker", "start", "--nodaemon", "worker"]
# A latent buildbot worker with ubuntu
# for testing merge requests for dumux-lecture
# the core modules / dune dependencies are release 2.5
FROM ubuntu:xenial
MAINTAINER timokoch <timo.koch@iws.uni-stuttgart.de>
# get the package list
RUN apt-get update && apt-get dist-upgrade --no-install-recommends --yes && \
apt-get install --no-install-recommends --yes \
ca-certificates \
vim \
python-dev \
python-pip \
libffi-dev \
git \
pkg-config \
wget \
build-essential \
gfortran \
cmake \
mpi-default-dev \
mpi-default-bin \
libsuitesparse-dev \
libmetis-dev \
libsuperlu-dev \
libscotchparmetis-dev \
zlib1g-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# create a buildbot user
RUN useradd --create-home --home-dir /data/ buildbot
# create system-wide symlink to dunecontrol for convenience
RUN ln -s /data/src/dune-common/bin/dunecontrol /usr/bin/dunecontrol
# install and set up a virtualenv
RUN pip install virtualenv six
# switch to buildbot user
USER buildbot
RUN virtualenv /data/buildbot
WORKDIR /data/buildbot
# install buildbot master using pip in a virtual env
RUN ./bin/pip install --upgrade pip six
RUN ./bin/pip install 'buildbot-worker==0.9.0b9'
# The files in worker get configured by environmental variables at runtime
# Build this image in the same folder as the worker folder
ADD worker /data/buildbot/worker
USER root
RUN chown -R buildbot:buildbot /data/buildbot/worker
USER buildbot
# create source directory
RUN mkdir -p /data/src
WORKDIR /data/src/
RUN git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-common.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-geometry.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-grid.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-istl.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-localfunctions.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/staging/dune-uggrid.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/extensions/dune-foamgrid.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/extensions/dune-alugrid.git && \
git clone -b releases/2.10 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git && \
./dumux/bin/installexternal.sh gstat
# start worker
WORKDIR /data/buildbot/
CMD ["./bin/buildbot-worker", "start", "--nodaemon", "worker"]
# A latent buildbot worker with ubuntu
# for testing merge requests for dumux-lecture
# the core modules / dune dependencies are release 2.5
FROM ubuntu:xenial
MAINTAINER timokoch <timo.koch@iws.uni-stuttgart.de>
# get the package list
RUN apt-get update && apt-get dist-upgrade --no-install-recommends --yes && \
apt-get install --no-install-recommends --yes \
ca-certificates \
vim \
python-dev \
python-pip \
libffi-dev \
git \
pkg-config \
build-essential \
gfortran \
cmake \
mpi-default-dev \
mpi-default-bin \
libsuitesparse-dev \
libmetis-dev \
libsuperlu-dev \
libscotchparmetis-dev \
zlib1g-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# create a buildbot user
RUN useradd --create-home --home-dir /data/ buildbot
# create system-wide symlink to dunecontrol for convenience
RUN ln -s /data/src/dune-common/bin/dunecontrol /usr/bin/dunecontrol
# install and set up a virtualenv
RUN pip install virtualenv six
# switch to buildbot user
USER buildbot
RUN virtualenv /data/buildbot
WORKDIR /data/buildbot
# install buildbot master using pip in a virtual env
RUN ./bin/pip install --upgrade pip six
RUN ./bin/pip install 'buildbot-worker==0.9.0b9'
# The files in worker get configured by environmental variables at runtime
# Build this image in the same folder as the worker folder
ADD worker /data/buildbot/worker
USER root
RUN chown -R buildbot:buildbot /data/buildbot/worker
USER buildbot
# create source directory
RUN mkdir -p /data/src
WORKDIR /data/src/
RUN git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-common.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-geometry.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-grid.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-istl.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-localfunctions.git && \
git clone https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git && \
git clone https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-lecture.git
# start worker
WORKDIR /data/buildbot/
CMD ["./bin/buildbot-worker", "start", "--nodaemon", "worker"]
# A latent buildbot worker with ubuntu
# for testing merge requests for dumux-lecture
# the core modules / dune dependencies are release 2.5
FROM ubuntu:xenial
MAINTAINER timokoch <timo.koch@iws.uni-stuttgart.de>
# get the package list
RUN apt-get update && apt-get dist-upgrade --no-install-recommends --yes && \
apt-get install --no-install-recommends --yes \
ca-certificates \
vim \
python-dev \
python-pip \
libffi-dev \
git \
pkg-config \
build-essential \
gfortran \
cmake \
mpi-default-dev \
mpi-default-bin \
libsuitesparse-dev \
libmetis-dev \
libsuperlu-dev \
libscotchparmetis-dev \
zlib1g-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# create a buildbot user
RUN useradd --create-home --home-dir /data/ buildbot
# create system-wide symlink to dunecontrol for convenience
RUN ln -s /data/src/dune-common/bin/dunecontrol /usr/bin/dunecontrol
# install and set up a virtualenv
RUN pip install virtualenv six
# switch to buildbot user
USER buildbot
RUN virtualenv /data/buildbot
WORKDIR /data/buildbot
# install buildbot master using pip in a virtual env
RUN ./bin/pip install --upgrade pip six
RUN ./bin/pip install 'buildbot-worker==0.9.0b9'
# The files in worker get configured by environmental variables at runtime
# Build this image in the same folder as the worker folder
ADD worker /data/buildbot/worker
USER root
RUN chown -R buildbot:buildbot /data/buildbot/worker
USER buildbot
# create source directory
RUN mkdir -p /data/src
WORKDIR /data/src/
RUN git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-common.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-geometry.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-grid.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-istl.git && \
git clone -b releases/2.5 https://gitlab.dune-project.org/core/dune-localfunctions.git && \
git clone -b releases/2.10 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git && \
git clone -b releases/2.10 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-lecture.git
# start worker
WORKDIR /data/buildbot/
CMD ["./bin/buildbot-worker", "start", "--nodaemon", "worker"]
# only for me locally to build new images
# when uploading new images also pull them on the build worker
docker build -t timokoch/bb-dumux-master-pdelab:latest -f bb-dumux-master-pdelab/Dockerfile .
docker build -t timokoch/bb-dumux-master:latest -f bb-dumux-master/Dockerfile .
docker build -t timokoch/bb-dumux-release:latest -f bb-dumux-release/Dockerfile .
docker build -t timokoch/bb-lecture-master:latest -f bb-lecture-master/Dockerfile .
docker build -t timokoch/bb-lecture-release:latest -f bb-lecture-release/Dockerfile .
docker push timokoch/bb-dumux-master-pdelab:latest
docker push timokoch/bb-dumux-master:latest
docker push timokoch/bb-dumux-release:latest
docker push timokoch/bb-lecture-master:latest
docker push timokoch/bb-lecture-release:latest
docker rmi timokoch/bb-dumux-master-pdelab:latest
docker rmi timokoch/bb-dumux-master:latest
docker rmi timokoch/bb-dumux-release:latest
docker rmi timokoch/bb-lecture-master:latest
docker rmi timokoch/bb-lecture-release:latest
Timo Koch <timo.koch@iws.uni-stuttgart.de>
\ No newline at end of file
docker-latent-worker
ubuntu:xenial
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment