c12s-kubespray/ccp/ccp-build.sh

95 lines
1.8 KiB
Bash
Raw Normal View History

2016-06-27 15:57:29 +00:00
#!/bin/bash
set -e
2016-07-04 13:22:30 +00:00
PREBUILT="$1"
2016-06-27 15:57:29 +00:00
create_mcp_conf() {
echo "Create mcp config"
cat > /root/mcp.conf << EOF
[builder]
push = True
2016-07-01 14:24:42 +00:00
[registry]
address = "127.0.0.1:31500"
2016-06-27 15:57:29 +00:00
[kubernetes]
environment = "openstack"
[repositories]
skip_empty = True
EOF
}
2016-07-01 15:19:41 +00:00
create_mirantis_mcp_conf() {
echo "Create mcp config"
cat > /root/mcp.conf << EOF
[builder]
push = False
[registry]
2016-07-01 16:10:29 +00:00
address = "registry01-bud.ng.mirantis.net"
2016-07-01 15:19:41 +00:00
insecure = True
2016-07-01 16:10:29 +00:00
[images]
namespace = "nextgen"
2016-07-01 15:19:41 +00:00
[kubernetes]
environment = "openstack"
[repositories]
skip_empty = True
EOF
}
create_resolvconf() {
DNS_IP=`kubectl get service/kubedns --namespace=kube-system --template={{.spec.clusterIP}}`
cat > /root/resolv.conf << EOF
search openstack.svc.cluster.local svc.cluster.local cluster.local default.svc.cluster.local svc.cluster.local cluster.local
nameserver $DNS_IP
options attempts:2
options ndots:5
EOF
}
2016-06-27 15:57:29 +00:00
create_registry() {
if kubectl get pods | grep registry ; then
echo "Registry is already running"
else
echo "Create registry"
kubectl create -f registry_pod.yaml
kubectl create -f registry_svc.yaml
fi
}
build_images() {
echo "Waiting for registry to start..."
while true
do
STATUS=$(kubectl get pod | awk '/registry/ {print $3}')
if [ "$STATUS" == "Running" ]
then
break
fi
sleep 1
done
mcp-microservices --config-file /root/mcp.conf build &> /var/log/mcp-build.log
2016-06-27 15:57:29 +00:00
}
hack_images() {
# useless, but let's keep it just in case we need to hack something else
2016-06-30 17:04:41 +00:00
for dir in ~/microservices-repos/ms-*/docker/* ; do
cp /root/resolv.conf $dir/
sed '/MAINTAINER/a COPY resolv.conf /var/tmp/resolv.conf' -i $dir/Dockerfile.j2
done
}
2016-06-27 15:57:29 +00:00
create_registry
2016-07-04 13:22:30 +00:00
if [ -n "$PREBUILT" ]; then
create_mirantis_mcp_conf
else
create_mcp_conf
build_images
fi