distribution/contrib/docker-integration/install_certs.sh
Derek McGowan 17f7f60d77 Update docker integration tests to use golem
Use registry example from golem repository.
Use the golem test runner for the docker integration environment

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2016-04-04 19:57:40 -07:00

49 lines
1.2 KiB
Bash

#!/bin/sh
set -e
hostname="localregistry"
authhostname="auth.$hostname"
set_etc_hosts() {
hostentry=$1
IP=$(ifconfig eth0|grep "inet addr:"| cut -d: -f2 | awk '{ print $1}')
echo "$IP $hostentry" >> /etc/hosts
# TODO: Check if record already exists in /etc/hosts
}
install_ca() {
mkdir -p $1/$hostname:$2
cp ./nginx/ssl/registry-ca+ca.pem $1/$hostname:$2/ca.crt
if [ "$3" != "" ]; then
cp ./nginx/ssl/registry-$3+client-cert.pem $1/$hostname:$2/client.cert
cp ./nginx/ssl/registry-$3+client-key.pem $1/$hostname:$2/client.key
fi
}
install_test_certs() {
install_ca $1 5440
install_ca $1 5441
install_ca $1 5442 ca
install_ca $1 5443 noca
install_ca $1 5444 ca
install_ca $1 5447 ca
# For test remove CA
rm $1/${hostname}:5447/ca.crt
install_ca $1 5448
}
set_etc_hosts $hostname
set_etc_hosts $authhostname
install_test_certs /etc/docker/certs.d
install_test_certs /root/.docker/tls
# Malevolent server
mkdir -p /etc/docker/certs.d/$hostname:6666
cp ./malevolent-certs/ca.pem /etc/docker/certs.d/$hostname:6666/ca.crt
# Token server
install_file ./tokenserver/certs/ca.pem $1 5555
install_file ./tokenserver/certs/ca.pem $1 5554
install_file ./tokenserver/certs/ca.pem $1 5557
install_file ./tokenserver/certs/ca.pem $1 5558