Merge "Updated the Version of Stating Dockers"
[integration.git] / deployment / heat / onap-oom / k8s_vm_entrypoint.sh
index 79d7db5..e93622c 100644 (file)
@@ -1,9 +1,24 @@
 #!/bin/bash -x
+#
+# Copyright 2018 Huawei Technologies Co., Ltd.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+
+export DEBIAN_FRONTEND=noninteractive
+HOST_IP=$(hostname -I)
+echo $HOST_IP `hostname` >> /etc/hosts
 printenv
 
 mkdir -p /opt/config
+echo "__docker_version__" > /opt/config/docker_version.txt
 echo "__rancher_ip_addr__" > /opt/config/rancher_ip_addr.txt
-echo `hostname -I` `hostname` >> /etc/hosts
+echo "__rancher_private_ip_addr__" > /opt/config/rancher_private_ip_addr.txt
+
 mkdir -p /etc/docker
 if [ ! -z "__docker_proxy__" ]; then
     cat > /etc/docker/daemon.json <<EOF
@@ -18,28 +33,37 @@ Acquire::http { Proxy "http://__apt_proxy__"; };
 Acquire::https::Proxy "DIRECT";
 EOF
 fi
-apt-get -y update
 
 mkdir -p /dockerdata-nfs
-echo "__rancher_ip_addr__:/dockerdata-nfs /dockerdata-nfs nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0" | tee -a /etc/fstab
+echo "__rancher_private_ip_addr__:/dockerdata-nfs /dockerdata-nfs nfs noauto,noatime,fg,retry=1,x-systemd.automount,_netdev,soft,nolock,intr,tcp,actimeo=1800 0 0" | tee -a /etc/fstab
 
-apt-get -y install linux-image-extra-$(uname -r) jq nfs-common
+# workaround for OpenStack intermittent failure to change default apt mirrors
+sed -i 's|http://archive.ubuntu.com|http://nova.clouds.archive.ubuntu.com|g' /etc/apt/sources.list
 
-cd ~
+while ! hash jq &> /dev/null; do
+    apt-get -y update
+    apt-get -y dist-upgrade
+    apt-get -y install linux-image-extra-$(uname -r) apt-transport-https ca-certificates curl software-properties-common jq nfs-common
+    sleep 10
+done
 
 # install docker 17.03
-curl -s https://releases.rancher.com/install-docker/17.03.sh | sh
-usermod -aG docker ubuntu
-
-# Fix virtual memory allocation for onap-log:elasticsearch:
-echo "vm.max_map_count=262144" >> /etc/sysctl.conf
-sysctl -p
-
-sleep 100
+while ! hash docker &> /dev/null; do
+    curl -s https://releases.rancher.com/install-docker/__docker_version__.sh | sh
+    usermod -aG docker ubuntu
+    sleep 10
+done
+apt-mark hold docker-ce
 
 while [ ! -e /dockerdata-nfs/rancher_agent_cmd.sh ]; do
     mount /dockerdata-nfs
-    sleep 5
+    sleep 10
 done
-source /dockerdata-nfs/rancher_agent_cmd.sh
 
+cd ~
+cp /dockerdata-nfs/rancher_agent_cmd.sh .
+sed -i "s/docker run/docker run -e CATTLE_HOST_LABELS='__host_label__=true' -e CATTLE_AGENT_IP=${HOST_IP}/g" rancher_agent_cmd.sh
+source rancher_agent_cmd.sh
+sleep 1m
+
+reboot