Merge "Add registry ui deployment"
This commit is contained in:
commit
190866ca94
|
@ -8,21 +8,26 @@ function usage {
|
|||
echo " $base_name -s <address>"
|
||||
echo " $base_name -n <namespace>"
|
||||
echo " $base_name -i <node>"
|
||||
echo " $base_name -u deploy ui"
|
||||
}
|
||||
|
||||
NAMESPACE_OPT=" --namespace kube-system"
|
||||
export NAMESPACE="kube-system"
|
||||
WORKDIR=$(dirname $0)
|
||||
|
||||
while getopts "s:n:i:" opt; do
|
||||
while getopts "s:n:i:u" opt; do
|
||||
case $opt in
|
||||
"s" )
|
||||
SRV_OPT=" -s $OPTARG"
|
||||
;;
|
||||
"n" )
|
||||
NAMESPACE_OPT=" --namespace $OPTARG"
|
||||
NAMESPACE="$OPTARG"
|
||||
;;
|
||||
"i" )
|
||||
NODE="$OPTARG"
|
||||
;;
|
||||
"u" )
|
||||
DEPLOY_UI=true
|
||||
;;
|
||||
* )
|
||||
usage
|
||||
exit 1
|
||||
|
@ -33,7 +38,26 @@ done
|
|||
which kubectl 1>/dev/null
|
||||
|
||||
function kube_cmd {
|
||||
kubectl $SRV_OPT $NAMESPACE_OPT "$@"
|
||||
kubectl $SRV_OPT --namespace $NAMESPACE "$@"
|
||||
}
|
||||
|
||||
function await_readiness {
|
||||
pod_name=$1;
|
||||
get_pod="kube_cmd get pod $pod_name -o template --template "
|
||||
|
||||
echo "Waiting for $pod_name pod readiness"
|
||||
|
||||
template="{{.status.phase}}"
|
||||
while [ $($get_pod $template) != "Running" ]; do
|
||||
sleep 3
|
||||
done
|
||||
echo "The $pod_name pod is running"
|
||||
|
||||
template="{{range.status.containerStatuses}}{{.ready}}{{end}}"
|
||||
while [ $($get_pod $template) != "true" ]; do
|
||||
sleep 3
|
||||
done
|
||||
echo "The $pod_name pod state is ready"
|
||||
}
|
||||
|
||||
if [ -z $NODE ]; then
|
||||
|
@ -43,29 +67,21 @@ fi
|
|||
|
||||
kubectl label node $NODE app=ccp-registry --overwrite
|
||||
|
||||
workdir=$(dirname $0)
|
||||
function deploy_registry {
|
||||
kube_cmd apply -f $WORKDIR/registry-pod.yaml
|
||||
kube_cmd apply -f $WORKDIR/registry-service.yaml
|
||||
await_readiness registry
|
||||
kube_cmd get service registry
|
||||
}
|
||||
|
||||
kube_cmd create -f $workdir/registry-pod.yaml
|
||||
kube_cmd create -f $workdir/registry-service.yaml
|
||||
function deploy_registry_ui {
|
||||
cat $WORKDIR/registry-ui-pod.yaml | envsubst | kube_cmd apply -f -
|
||||
kube_cmd apply -f $WORKDIR/registry-ui-service.yaml
|
||||
await_readiness registry-ui
|
||||
kube_cmd get service registry-ui
|
||||
}
|
||||
|
||||
# Waiting for status Running
|
||||
while true; do
|
||||
echo "Waiting for 'Running' state"
|
||||
cont_running=$(kube_cmd get pod registry -o template --template="{{ .status.phase }}")
|
||||
if [ "$cont_running" == "Running" ]; then
|
||||
break
|
||||
fi
|
||||
sleep 3
|
||||
done
|
||||
|
||||
# Waiting for readiness
|
||||
while true; do
|
||||
echo "Waiting for 'Ready' condition"
|
||||
cont_ready=$(kube_cmd get pod registry -o template --template="{{ range.status.containerStatuses }}{{ .ready }}{{ end }}")
|
||||
if [ "$cont_ready" == "true" ]; then
|
||||
break
|
||||
fi
|
||||
sleep 3
|
||||
done
|
||||
|
||||
echo "Registy service is ready"
|
||||
deploy_registry
|
||||
if [ $DEPLOY_UI ]; then
|
||||
deploy_registry_ui
|
||||
fi
|
||||
|
|
|
@ -0,0 +1,30 @@
|
|||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: registry-ui
|
||||
labels:
|
||||
app: registry-ui
|
||||
spec:
|
||||
containers:
|
||||
- name: registry-ui
|
||||
image: parabuzzle/docker-registry-ui:latest
|
||||
imagePullPolicy: Always
|
||||
ports:
|
||||
- containerPort: 80
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: 80
|
||||
initialDelaySeconds: 3
|
||||
timeoutSeconds: 1
|
||||
env:
|
||||
- name: REGISTRY_ALLOW_DELETE
|
||||
value: "true"
|
||||
- name: REGISTRY_HOST
|
||||
value: "registry.${NAMESPACE}"
|
||||
- name: REGISTRY_PROTO
|
||||
value: "http"
|
||||
- name: REGISTRY_PORT
|
||||
value: "5000"
|
||||
nodeSelector:
|
||||
app: ccp-registry
|
|
@ -0,0 +1,12 @@
|
|||
kind: Service
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: registry-ui
|
||||
spec:
|
||||
type: NodePort
|
||||
selector:
|
||||
app: registry-ui
|
||||
ports:
|
||||
- name: http
|
||||
nodePort: 31800
|
||||
port: 80
|
Loading…
Reference in New Issue