Remove obsolete test containers.

- opensuse42.1 - EOL
- opensuse42.2 - EOL
- ubuntu1204 - EOL
- cloudstack-simulator - Migrated to https://github.com/ansible/cloudstack-test-container
pull/39335/head
Matt Clay 6 years ago
parent 4b52a54e18
commit ee02d0c120

@ -1,66 +0,0 @@
FROM ubuntu:16.04
MAINTAINER "René Moser" <mail@renemoser.net>
RUN echo 'mysql-server mysql-server/root_password password root' | debconf-set-selections; \
echo 'mysql-server mysql-server/root_password_again password root' | debconf-set-selections;
RUN apt-get -y update && apt-get install -y \
genisoimage \
libffi-dev \
libssl-dev \
sudo \
ipmitool \
maven \
netcat \
openjdk-8-jdk \
python-dev \
python-mysql.connector \
python-pip \
python-setuptools \
supervisor \
wget \
nginx \
jq \
mysql-server \
openssh-client \
&& apt-get clean all \
&& rm -rf /var/lib/apt/lists/*;
# TODO: check if and why this is needed
RUN mkdir -p /root/.ssh \
&& chmod 0700 /root/.ssh \
&& ssh-keygen -t rsa -N "" -f id_rsa.cloud
RUN mkdir -p /var/run/mysqld; \
chown mysql /var/run/mysqld; \
echo '''sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"''' >> /etc/mysql/mysql.conf.d/mysqld.cnf
RUN (/usr/bin/mysqld_safe &); sleep 5; mysqladmin -u root -proot password ''
RUN wget https://github.com/apache/cloudstack/archive/4.9.2.0.tar.gz -O /opt/cloudstack.tar.gz; \
mkdir -p /opt/cloudstack; \
tar xvzf /opt/cloudstack.tar.gz -C /opt/cloudstack --strip-components=1
WORKDIR /opt/cloudstack
RUN mvn -Pdeveloper -Dsimulator -DskipTests clean install
RUN mvn -Pdeveloper -Dsimulator dependency:go-offline
RUN mvn -pl client jetty:run -Dsimulator -Djetty.skip -Dorg.eclipse.jetty.annotations.maxWait=120
RUN (/usr/bin/mysqld_safe &); \
sleep 5; \
mvn -Pdeveloper -pl developer -Ddeploydb; \
mvn -Pdeveloper -pl developer -Ddeploydb-simulator; \
MARVIN_FILE=$(find /opt/cloudstack/tools/marvin/dist/ -name "Marvin*.tar.gz"); \
pip install $MARVIN_FILE;
COPY zones.cfg /opt/zones.cfg
COPY nginx_default.conf /etc/nginx/sites-available/default
RUN pip install cs
COPY run.sh /opt/run.sh
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
EXPOSE 8888 8080 8096
CMD ["/usr/bin/supervisord"]

@ -1,14 +0,0 @@
build:
docker build -t cloudstack-sim .
clean:
docker rm -f cloudstack
run:
docker run --name cloudstack -d -p 8080:8080 -p 8888:8888 cloudstack-sim
shell:
docker exec -it cloudstack /bin/bash
logs:
docker logs -f cloudstack

@ -1,31 +0,0 @@
CloudStack Simulator as Docker Image
====================================
The purpose of this docker image is to run automated integration tests for the CloudStack modules in Ansible.
Setup
-----
The docker image runs the CloudStack simulator and contains two zones for the different network setups: `basic` and `advanced` networking.
- CloudStack Zone: Sandbox-simulator-advanced
- Zone: Sandbox-simulator-basic
Build
-----
.. code-block:: shell
docker build -t ansible/cloudstack-simulator .
Run
---
.. code-block:: shell
docker run --name cloudstack-simulator -d -p 8888:8888 ansible/cloudstack-simulator
.. Note::
It may take some time until the zones are deployed. The web server will respond with HTTP 503 on port 8888 unless the zones are fully deployed.

@ -1,23 +0,0 @@
upstream cloudstack-backend {
server 127.0.0.1:8080;
}
server {
listen 8888 default_server;
root /var/www/html;
server_name _;
# waiting for zone to be deployed
if (!-f /var/www/html/admin.json) {
return 503;
}
location /client {
proxy_pass http://cloudstack-backend;
}
location / {
}
}

@ -1,15 +0,0 @@
#!/bin/bash
until nc -z localhost 8096; do
echo "waiting for port 8096..."
sleep 3
done
sleep 3
if [ ! -e /var/www/html/admin.json ]
then
python /opt/cloudstack/tools/marvin/marvin/deployDataCenter.py -i /opt/zones.cfg
export CLOUDSTACK_ENDPOINT=http://127.0.0.1:8096
export CLOUDSTACK_KEY=""
export CLOUDSTACK_SECRET=""
cs listUsers account=admin | jq .user[0] > /var/www/html/admin.json
fi

@ -1,28 +0,0 @@
[supervisord]
nodaemon=true
[program:mysqld]
command=/usr/bin/mysqld_safe
autostart=true
autorestart=true
user=root
[program:cloudstack]
command=/bin/bash -c "mvn -pl client jetty:run-forked -Dsimulator -Dorg.eclipse.jetty.annotations.maxWait=120"
directory=/opt/cloudstack
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
user=root
[program:nginx]
command=/usr/sbin/nginx
autostart=true
autorestart=false
user=root
[program:deploy-zones]
command = /opt/run.sh
startsecs = 0
autorestart = false
startretries = 1
user=root

@ -1,310 +0,0 @@
{
"zones": [
{
"name": "Sandbox-simulator-basic",
"dns1": "8.8.8.8",
"physical_networks": [
{
"broadcastdomainrange": "Zone",
"name": "Sandbox-pnet",
"traffictypes": [
{
"typ": "Guest"
},
{
"typ": "Management"
}
],
"providers": [
{
"broadcastdomainrange": "ZONE",
"name": "VirtualRouter"
},
{
"broadcastdomainrange": "Pod",
"name": "SecurityGroupProvider"
}
],
"isolationmethods": [
"L3"
]
}
],
"securitygroupenabled": "true",
"networktype": "Basic",
"pods": [
{
"endip": "172.16.15.254",
"name": "POD0-basic",
"startip": "172.16.15.2",
"guestIpRanges": [
{
"startip": "60.147.41.2",
"endip": "60.147.41.254",
"netmask": "255.255.255.0",
"gateway": "60.147.41.1"
}
],
"netmask": "255.255.255.0",
"clusters": [
{
"clustername": "C0-basic",
"hypervisor": "simulator",
"hosts": [
{
"username": "root",
"url": "http://sim/c0-basic/h0",
"password": "password"
},
{
"username": "root",
"url": "http://sim/c0-basic/h1",
"password": "password"
}
],
"clustertype": "CloudManaged",
"primaryStorages": [
{
"url": "nfs://nfsstor:/export/home/sandbox/primary",
"name": "PS0-basic"
}
]
}
],
"gateway": "172.16.15.1"
}
],
"internaldns1": "8.8.8.8",
"secondaryStorages": [
{
"url": "nfs://nfsstor:/export/home/sandbox/secondary",
"provider" : "NFS"
}
]
},
{
"name": "Sandbox-simulator-advanced",
"guestcidraddress": "10.1.1.0/24",
"dns1": "10.147.28.7",
"physical_networks": [
{
"broadcastdomainrange": "Zone",
"vlan": "100-200",
"name": "Sandbox-pnet",
"traffictypes": [
{
"typ": "Guest"
},
{
"typ": "Management"
},
{
"typ": "Public"
}
],
"providers": [
{
"broadcastdomainrange": "ZONE",
"name": "VirtualRouter"
},
{
"broadcastdomainrange": "ZONE",
"name": "VpcVirtualRouter"
},
{
"broadcastdomainrange": "ZONE",
"name": "InternalLbVm"
}
],
"isolationmethods": [
"VLAN"
]
}
],
"vmwaredc": {
"username": "",
"vcenter": "",
"password": "",
"name": ""
},
"ipranges": [
{
"startip": "192.168.2.2",
"endip": "192.168.2.200",
"netmask": "255.255.255.0",
"vlan": "50",
"gateway": "192.168.2.1"
}
],
"networktype": "Advanced",
"pods": [
{
"endip": "172.16.15.200",
"name": "POD0-adv",
"startip": "172.16.15.2",
"netmask": "255.255.255.0",
"clusters": [
{
"clustername": "C0-adv",
"hypervisor": "simulator",
"hosts": [
{
"username": "root",
"url": "http://sim/c0-adv/h0",
"password": "password"
},
{
"username": "root",
"url": "http://sim/c0-adv/h1",
"password": "password"
}
],
"clustertype": "CloudManaged",
"primaryStorages": [
{
"url": "nfs://10.147.28.7:/export/home/sandbox/primary0",
"name": "PS0-adv"
},
{
"url": "nfs://10.147.28.7:/export/home/sandbox/primary1",
"name": "PS1-adv"
}
]
},
{
"clustername": "C1-adv",
"hypervisor": "simulator",
"hosts": [
{
"username": "root",
"url": "http://sim/c1-adv/h0",
"password": "password"
}
],
"clustertype": "CloudManaged",
"primaryStorages": [
{
"url": "nfs://10.147.28.7:/export/home/sandbox/primary2",
"name": "PS2-adv"
}
]
}
],
"gateway": "172.16.15.1"
}
],
"internaldns1": "10.147.28.7",
"secondaryStorages": [
{
"url": "nfs://10.147.28.7:/export/home/sandbox/secondary",
"provider" : "NFS"
}
]
}
],
"dbSvr": {
"dbSvr": "localhost",
"passwd": "cloud",
"db": "cloud",
"port": 3306,
"user": "cloud"
},
"logger":
{
"LogFolderPath": "/tmp/"
},
"globalConfig": [
{
"name": "network.gc.wait",
"value": "20"
},
{
"name": "storage.cleanup.interval",
"value": "40"
},
{
"name": "vm.op.wait.interval",
"value": "5"
},
{
"name": "default.page.size",
"value": "500"
},
{
"name": "network.gc.interval",
"value": "20"
},
{
"name": "instance.name",
"value": "QA"
},
{
"name": "workers",
"value": "10"
},
{
"name": "account.cleanup.interval",
"value": "20"
},
{
"name": "guest.domain.suffix",
"value": "sandbox.simulator"
},
{
"name": "expunge.delay",
"value": "20"
},
{
"name": "vm.allocation.algorithm",
"value": "random"
},
{
"name": "expunge.interval",
"value": "20"
},
{
"name": "expunge.workers",
"value": "3"
},
{
"name": "check.pod.cidrs",
"value": "true"
},
{
"name": "secstorage.allowed.internal.sites",
"value": "10.147.28.0/24"
},
{
"name": "direct.agent.load.size",
"value": "1000"
},
{
"name": "enable.dynamic.scale.vm",
"value": "true"
},
{
"name": "ping.interval",
"value": "10"
},
{
"name": "ping.timeout",
"value": "1.5"
},
{
"name": "outofbandmanagement.sync.interval",
"value": "1000"
}
],
"mgtSvr": [
{
"mgtSvrIp": "localhost",
"passwd": "password",
"user": "root",
"port": 8096,
"hypervisor": "simulator",
"useHttps": "False",
"certCAPath": "NA",
"certPath": "NA"
}
]
}

@ -1,78 +0,0 @@
FROM opensuse:42.1
RUN zypper --non-interactive --gpg-auto-import-keys refresh && \
zypper --non-interactive install --force systemd-sysvinit && \
zypper --non-interactive install --auto-agree-with-licenses --no-recommends \
acl \
apache2 \
asciidoc \
bzip2 \
curl \
dbus-1-python \
gcc \
git \
glibc-i18ndata \
glibc-locale \
iproute2 \
lsb-release \
make \
mariadb \
mercurial \
openssh \
password-store \
postgresql-server \
python-cryptography \
python-devel \
python-httplib2 \
python-jinja2 \
python-keyczar \
python-lxml \
python-mock \
python-MySQL-python \
python-nose \
python-paramiko \
python-passlib \
python-pip \
python-psycopg2 \
python-PyYAML \
python-setuptools \
python-virtualenv \
rpm-build \
ruby \
sshpass \
subversion \
sudo \
tar \
unzip \
which \
zip \
&& \
zypper clean
# 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 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
RUN pip install coverage junit-xml
ENV container=docker
CMD ["/sbin/init"]

@ -1,78 +0,0 @@
FROM opensuse:42.2
RUN zypper --non-interactive --gpg-auto-import-keys refresh --services --force && \
zypper --non-interactive install --force systemd-sysvinit && \
zypper --non-interactive install --auto-agree-with-licenses --no-recommends \
acl \
apache2 \
asciidoc \
bzip2 \
curl \
dbus-1-python \
gcc \
git \
glibc-i18ndata \
glibc-locale \
iproute2 \
lsb-release \
make \
mariadb \
mercurial \
openssh \
password-store \
postgresql-server \
python-cryptography \
python-devel \
python-httplib2 \
python-jinja2 \
python-keyczar \
python-lxml \
python-mock \
python-MySQL-python \
python-nose \
python-paramiko \
python-passlib \
python-pip \
python-psycopg2 \
python-PyYAML \
python-setuptools \
python-virtualenv \
rpm-build \
ruby \
sshpass \
subversion \
sudo \
tar \
unzip \
which \
zip \
&& \
zypper clean --all
# 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 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
RUN pip install coverage junit-xml
ENV container=docker
CMD ["/sbin/init"]

@ -1,98 +0,0 @@
FROM ubuntu:12.04
RUN apt-get update -y && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
acl \
apache2 \
asciidoc \
bzip2 \
cdbs \
curl \
debhelper \
debianutils \
devscripts \
docbook-xml \
dpkg-dev \
fakeroot \
gawk \
gcc \
git \
libffi-dev \
libssl-dev \
libxml2-utils \
locales \
make \
mercurial \
mysql-server \
openssh-client \
openssh-server \
python-dev \
python-httplib2 \
python-jinja2 \
python-keyczar \
python-lxml \
python-mock \
python-mysqldb \
python-nose \
python-paramiko \
python-passlib \
python-pip \
python-setuptools \
python-virtualenv \
python-yaml \
reprepro \
rsync \
ruby \
rubygems \
sshpass \
subversion \
sudo \
tzdata \
unzip \
xsltproc \
zip \
&& \
apt-get clean
RUN pip install --upgrade pycrypto cryptography
# helpful things taken from the ubuntu-upstart Dockerfile:
# https://github.com/tianon/dockerfiles/blob/4d24a12b54b75b3e0904d8a285900d88d3326361/sbin-init/ubuntu/upstart/14.04/Dockerfile
ADD init-fake.conf /etc/init/fake-container-events.conf
# undo some leet hax of the base image
RUN rm /usr/sbin/policy-rc.d; \
rm /sbin/initctl; dpkg-divert --rename --remove /sbin/initctl
# remove some pointless services
RUN /usr/sbin/update-rc.d -f ondemand remove; \
for f in \
/etc/init/u*.conf \
/etc/init/mounted-dev.conf \
/etc/init/mounted-proc.conf \
/etc/init/mounted-run.conf \
/etc/init/mounted-tmp.conf \
/etc/init/mounted-var.conf \
/etc/init/hostname.conf \
/etc/init/networking.conf \
/etc/init/tty*.conf \
/etc/init/plymouth*.conf \
/etc/init/hwclock*.conf \
/etc/init/module*.conf\
; do \
dpkg-divert --local --rename --add "$f"; \
done; \
echo '# /lib/init/fstab: cleared out for bare-bones Docker' > /lib/init/fstab
# end things from ubuntu-upstart Dockerfile
RUN rm /etc/apt/apt.conf.d/docker-clean
RUN mkdir /etc/ansible/
RUN /bin/echo -e "[local]\nlocalhost ansible_connection=local" > /etc/ansible/hosts
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
VOLUME /sys/fs/cgroup /run/lock /run /tmp
RUN pip install pip --upgrade
RUN pip install coverage junit-xml
ENV container=docker
CMD ["/sbin/init"]

@ -1,13 +0,0 @@
# fake some events needed for correct startup other services
description "In-Container Upstart Fake Events"
start on startup
script
rm -rf /var/run/*.pid
rm -rf /var/run/network/*
/sbin/initctl emit stopped JOB=udevtrigger --no-wait
/sbin/initctl emit started JOB=udev --no-wait
/sbin/initctl emit runlevel RUNLEVEL=3 --no-wait
end script
Loading…
Cancel
Save