mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
[WIP] Extra test and build dependencies in Docker images (#15692)
* Merge conflicts: * [skip ci] Revert changes to run_tests.sh gundalow will update this in a different PR * [skip ci] Add in ubuntu1604 and opensuseleap NOTE: We are not configuring anything to use these new images yet. Therefore no impact on Travis performance * python-mysql for opensuse * It's mysql-server on centos6
This commit is contained in:
parent
8d3da09eae
commit
1861151fa4
8 changed files with 200 additions and 7 deletions
|
@ -1,14 +1,20 @@
|
|||
# Latest version of centos
|
||||
FROM centos:centos6
|
||||
RUN yum -y update; yum clean all;
|
||||
RUN yum -y update; yum clean all;
|
||||
RUN yum -y install \
|
||||
acl \
|
||||
asciidoc \
|
||||
bzip2 \
|
||||
epel-release \
|
||||
file \
|
||||
gcc \
|
||||
git \
|
||||
make \
|
||||
mercurial \
|
||||
mysql \
|
||||
mysql-server \
|
||||
MySQL-python \
|
||||
rpm-build \
|
||||
rubygems \
|
||||
sed \
|
||||
subversion \
|
||||
|
@ -16,7 +22,8 @@ RUN yum -y install \
|
|||
unzip \
|
||||
openssh-clients \
|
||||
openssh-server \
|
||||
which
|
||||
which \
|
||||
zip
|
||||
RUN yum -y install \
|
||||
PyYAML \
|
||||
python-coverage \
|
||||
|
|
|
@ -11,13 +11,18 @@ rm -f /lib/systemd/system/basic.target.wants/*; \
|
|||
rm -f /lib/systemd/system/anaconda.target.wants/*;
|
||||
RUN yum -y install \
|
||||
acl \
|
||||
asciidoc \
|
||||
dbus-python \
|
||||
bzip2 \
|
||||
epel-release \
|
||||
file \
|
||||
git \
|
||||
iproute \
|
||||
make \
|
||||
mercurial \
|
||||
mariadb-server \
|
||||
MySQL-python \
|
||||
rpm-build \
|
||||
rubygems \
|
||||
subversion \
|
||||
sudo \
|
||||
|
|
|
@ -11,7 +11,9 @@ rm -f /lib/systemd/system/basic.target.wants/*; \
|
|||
rm -f /lib/systemd/system/anaconda.target.wants/*;
|
||||
RUN dnf -y install \
|
||||
acl \
|
||||
asciidoc \
|
||||
dbus-python \
|
||||
bzip2 \
|
||||
file \
|
||||
findutils \
|
||||
git \
|
||||
|
@ -19,6 +21,8 @@ RUN dnf -y install \
|
|||
iproute \
|
||||
make \
|
||||
mercurial \
|
||||
mariadb-server \
|
||||
MySQL-python \
|
||||
procps \
|
||||
PyYAML \
|
||||
python-coverage \
|
||||
|
@ -32,6 +36,7 @@ RUN dnf -y install \
|
|||
python-pip \
|
||||
python-setuptools \
|
||||
python-virtualenv \
|
||||
rpm-build \
|
||||
rubygems \
|
||||
subversion \
|
||||
sudo \
|
||||
|
@ -40,7 +45,8 @@ RUN dnf -y install \
|
|||
which \
|
||||
openssh-clients \
|
||||
openssh-server \
|
||||
yum
|
||||
yum \
|
||||
zip
|
||||
RUN localedef --quiet -c -i en_US -f UTF-8 en_US.UTF-8
|
||||
RUN /usr/bin/sed -i -e 's/^\(Defaults\s*requiretty\)/#--- \1/' /etc/sudoers
|
||||
RUN mkdir /etc/ansible/
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Latest version of centos
|
||||
# Latest version of fedora 23
|
||||
FROM fedora:23
|
||||
RUN dnf -y update; dnf clean all
|
||||
RUN (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \
|
||||
|
@ -11,7 +11,9 @@ rm -f /lib/systemd/system/basic.target.wants/*; \
|
|||
rm -f /lib/systemd/system/anaconda.target.wants/*;
|
||||
RUN dnf -y install \
|
||||
acl \
|
||||
asciidoc \
|
||||
dbus-python \
|
||||
bzip2 \
|
||||
file \
|
||||
findutils \
|
||||
glibc-common \
|
||||
|
@ -19,6 +21,8 @@ RUN dnf -y install \
|
|||
iproute \
|
||||
make \
|
||||
mercurial \
|
||||
mariadb-server \
|
||||
MySQL-python \
|
||||
procps \
|
||||
PyYAML \
|
||||
python-coverage \
|
||||
|
@ -32,6 +36,7 @@ RUN dnf -y install \
|
|||
python-pip \
|
||||
python-setuptools \
|
||||
python-virtualenv \
|
||||
rpm-build \
|
||||
rubygems \
|
||||
subversion \
|
||||
sudo \
|
||||
|
@ -40,7 +45,8 @@ RUN dnf -y install \
|
|||
which \
|
||||
openssh-clients \
|
||||
openssh-server \
|
||||
yum
|
||||
yum \
|
||||
zip
|
||||
RUN localedef --quiet -f ISO-8859-1 -i pt_BR pt_BR
|
||||
RUN localedef --quiet -f ISO-8859-1 -i es_MX es_MX
|
||||
RUN /usr/bin/sed -i -e 's/^\(Defaults\s*requiretty\)/#--- \1/' /etc/sudoers
|
||||
|
|
69
test/utils/docker/opensuseleap/Dockerfile
Normal file
69
test/utils/docker/opensuseleap/Dockerfile
Normal file
|
@ -0,0 +1,69 @@
|
|||
FROM opensuse:leap
|
||||
|
||||
RUN zypper --gpg-auto-import-keys --non-interactive ref && \
|
||||
zypper --gpg-auto-import-keys --non-interactive up
|
||||
|
||||
#RUN yum -y update; yum clean all; yum -y swap fakesystemd systemd
|
||||
|
||||
RUN zypper --non-interactive install --auto-agree-with-licenses \
|
||||
acl \
|
||||
asciidoc \
|
||||
bzip2 \
|
||||
dbus-1-python \
|
||||
gcc \
|
||||
git \
|
||||
glibc-locale \
|
||||
iproute \
|
||||
lsb-release \
|
||||
make \
|
||||
mercurial \
|
||||
mariadb \
|
||||
python-mysql \
|
||||
openssh \
|
||||
rpm-build \
|
||||
ruby \
|
||||
subversion \
|
||||
sudo \
|
||||
tar \
|
||||
unzip \
|
||||
which \
|
||||
zip \
|
||||
python-PyYAML \
|
||||
python-coverage \
|
||||
python-httplib2 \
|
||||
python-jinja2 \
|
||||
python-keyczar \
|
||||
python-mock \
|
||||
python-nose \
|
||||
python-paramiko \
|
||||
python-pip \
|
||||
python-setuptools \
|
||||
python-virtualenv
|
||||
|
||||
# systemd path differs from rhel
|
||||
ENV LIBSYSTEMD=/usr/lib/systemd/system
|
||||
RUN (cd ${LIBSYSTEMD}/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \
|
||||
rm -f ${LIBSYSTEMD}/multi-user.target.wants/*; \
|
||||
rm -f /etc/systemd/system/*.wants/*; \
|
||||
rm -f ${LIBSYSTEMD}/local-fs.target.wants/*; \
|
||||
rm -f ${LIBSYSTEMD}/sockets.target.wants/*udev*; \
|
||||
rm -f ${LIBSYSTEMD}/sockets.target.wants/*initctl*; \
|
||||
rm -f ${LIBSYSTEMD}/basic.target.wants/*;
|
||||
|
||||
# don't create systemd-session for ssh connections
|
||||
RUN sed -i /pam_systemd/d /etc/pam.d/common-session-pc
|
||||
|
||||
#RUN localedef --quiet -c -i en_US -f UTF-8 en_US.UTF-8
|
||||
RUN mkdir /etc/ansible/
|
||||
RUN /usr/bin/echo -e '[local]\nlocalhost ansible_connection=local' > /etc/ansible/hosts
|
||||
VOLUME /sys/fs/cgroup /run /tmp
|
||||
RUN ssh-keygen -q -t rsa1 -N '' -f /etc/ssh/ssh_host_key && \
|
||||
ssh-keygen -q -t dsa -N '' -f /etc/ssh/ssh_host_dsa_key && \
|
||||
ssh-keygen -q -t rsa -N '' -f /etc/ssh/ssh_host_rsa_key && \
|
||||
ssh-keygen -q -t rsa -N '' -f /root/.ssh/id_rsa && \
|
||||
cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys && \
|
||||
for key in /etc/ssh/ssh_host_*_key.pub; do echo "localhost $(cat ${key})" >> /root/.ssh/known_hosts; done
|
||||
# explicitly enable the service, opensuse default to disabled services
|
||||
RUN systemctl enable sshd.service
|
||||
ENV container=docker
|
||||
CMD ["/sbin/init"]
|
|
@ -1,20 +1,34 @@
|
|||
FROM ubuntu:precise
|
||||
RUN apt-get clean; apt-get update -y;
|
||||
RUN apt-get install -y \
|
||||
apache2 \
|
||||
asciidoc \
|
||||
acl \
|
||||
bzip2 \
|
||||
cdbs \
|
||||
debhelper \
|
||||
debianutils \
|
||||
devscripts \
|
||||
docbook-xml \
|
||||
dpkg-dev \
|
||||
fakeroot \
|
||||
gawk \
|
||||
git \
|
||||
libxml2-utils \
|
||||
locales \
|
||||
make \
|
||||
mercurial \
|
||||
mysql-server \
|
||||
reprepro \
|
||||
ruby \
|
||||
rubygems \
|
||||
subversion \
|
||||
sudo \
|
||||
openssh-client \
|
||||
openssh-server \
|
||||
unzip
|
||||
unzip \
|
||||
zip \
|
||||
xsltproc
|
||||
|
||||
# helpful things taken from the ubuntu-upstart Dockerfile:
|
||||
# https://github.com/tianon/dockerfiles/blob/4d24a12b54b75b3e0904d8a285900d88d3326361/sbin-init/ubuntu/upstart/14.04/Dockerfile
|
||||
|
@ -51,6 +65,7 @@ RUN apt-get install -y \
|
|||
python-jinja2 \
|
||||
python-keyczar \
|
||||
python-mock \
|
||||
python-mysqldb \
|
||||
python-nose \
|
||||
python-paramiko \
|
||||
python-pip \
|
||||
|
|
|
@ -1,19 +1,33 @@
|
|||
FROM ubuntu:trusty
|
||||
RUN apt-get clean; apt-get update -y;
|
||||
RUN apt-get install -y \
|
||||
apache2 \
|
||||
asciidoc \
|
||||
acl \
|
||||
bzip2 \
|
||||
cdbs \
|
||||
debhelper \
|
||||
debianutils \
|
||||
devscripts \
|
||||
docbook-xml \
|
||||
dpkg-dev \
|
||||
fakeroot \
|
||||
gawk \
|
||||
git \
|
||||
libxml2-utils \
|
||||
locales \
|
||||
make \
|
||||
mercurial \
|
||||
mysql-server \
|
||||
reprepro \
|
||||
ruby \
|
||||
subversion \
|
||||
sudo \
|
||||
openssh-client \
|
||||
openssh-server \
|
||||
unzip
|
||||
unzip \
|
||||
zip \
|
||||
xsltproc
|
||||
|
||||
# helpful things taken from the ubuntu-upstart Dockerfile:
|
||||
# https://github.com/tianon/dockerfiles/blob/4d24a12b54b75b3e0904d8a285900d88d3326361/sbin-init/ubuntu/upstart/14.04/Dockerfile
|
||||
|
@ -49,6 +63,7 @@ RUN apt-get install -y \
|
|||
python-jinja2 \
|
||||
python-keyczar \
|
||||
python-mock \
|
||||
python-mysqldb \
|
||||
python-nose \
|
||||
python-paramiko \
|
||||
python-pip \
|
||||
|
|
70
test/utils/docker/ubuntu1604/Dockerfile
Normal file
70
test/utils/docker/ubuntu1604/Dockerfile
Normal file
|
@ -0,0 +1,70 @@
|
|||
FROM ubuntu:16.04
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
ENV container docker
|
||||
|
||||
RUN apt-get clean; apt-get update -y;
|
||||
RUN echo 'APT::Install-Recommends "0"; \n\
|
||||
APT::Get::Assume-Yes "true"; \n\
|
||||
APT::Install-Suggests "0";' > /etc/apt/apt.conf.d/01buildconfig
|
||||
|
||||
|
||||
RUN apt-get install -y \
|
||||
apache2 \
|
||||
asciidoc \
|
||||
acl \
|
||||
bzip2 \
|
||||
cdbs \
|
||||
debhelper \
|
||||
debianutils \
|
||||
devscripts \
|
||||
docbook-xml \
|
||||
dpkg-dev \
|
||||
fakeroot \
|
||||
gawk \
|
||||
git \
|
||||
iproute2 \
|
||||
libxml2-utils \
|
||||
locales \
|
||||
lsb-release \
|
||||
make \
|
||||
mercurial \
|
||||
mysql-server \
|
||||
openssh-client \
|
||||
openssh-server \
|
||||
python-dbus \
|
||||
reprepro \
|
||||
rsync \
|
||||
ruby \
|
||||
subversion \
|
||||
sudo \
|
||||
unzip \
|
||||
zip \
|
||||
xsltproc \
|
||||
python-coverage \
|
||||
python-httplib2 \
|
||||
python-jinja2 \
|
||||
python-keyczar \
|
||||
python-mock \
|
||||
python-mysqldb \
|
||||
python-nose \
|
||||
python-paramiko \
|
||||
python-pip \
|
||||
python-setuptools \
|
||||
python-virtualenv \
|
||||
virtualenv \
|
||||
python-yaml
|
||||
|
||||
# some tests assume the .deb is cached
|
||||
RUN rm /etc/apt/apt.conf.d/docker-clean
|
||||
|
||||
RUN locale-gen en_US.UTF-8
|
||||
RUN ssh-keygen -q -t rsa -N '' -f /root/.ssh/id_rsa && \
|
||||
cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys && \
|
||||
for key in /etc/ssh/ssh_host_*_key.pub; do echo "localhost $(cat ${key})" >> /root/.ssh/known_hosts; done
|
||||
|
||||
RUN mkdir /etc/ansible/
|
||||
RUN /bin/echo -e "[local]\nlocalhost ansible_connection=local" > /etc/ansible/hosts
|
||||
|
||||
VOLUME /sys/fs/cgroup /run/lock /run /tmp
|
||||
CMD ["/sbin/init"]
|
Loading…
Reference in a new issue