Add K8S deployment above Vagrant 29/30929/2
authorAreli Fuss <af732p@att.com>
Thu, 8 Feb 2018 22:08:52 +0000 (00:08 +0200)
committerMichael Lando <ml636r@att.com>
Thu, 15 Feb 2018 17:39:55 +0000 (17:39 +0000)
Set deployment manifest files and scripts
for deploy SDC over Kubernetes inside
Vagrant
Preparation for OOM integration

Change-Id: If5d6b4131b75eb4795ce8bfd8ec228808938d40e
Issue-ID: SDC-907
Signed-off-by: Areli Fuss <af732p@att.com>
13 files changed:
sdc-os-chef/kubernetes/sdc/templates/deployments/sdc-be.yaml
sdc-os-chef/kubernetes/sdc/templates/deployments/sdc-cs.yaml
sdc-os-chef/kubernetes/sdc/templates/deployments/sdc-es.yaml
sdc-os-chef/kubernetes/sdc/templates/deployments/sdc-fe.yaml
sdc-os-chef/kubernetes/sdc/templates/deployments/sdc-kb.yaml
sdc-os-chef/kubernetes/sdc/templates/jobs/sdc-config-cs.yaml
sdc-os-chef/kubernetes/sdc/templates/jobs/sdc-config-es.yaml
sdc-os-chef/kubernetes/sdc/templates/secrets/sdc-cs-secret.yaml
sdc-os-chef/kubernetes/sdc/values.yaml
sdc-os-chef/scripts/k8s/deploy_k8s_sdc.sh
sdc-os-chef/scripts/k8s/get_helm.sh [deleted file]
sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/recipes/02-changeCSpass.rb
sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/recipes/03-prepareProbeFile.rb

index ab293c2..7c3a91c 100644 (file)
@@ -18,17 +18,14 @@ spec:
       app: sdc-be
   template:
     metadata:
-      annotations:
-        checksum/config: {{ include (print $.Template.BasePath "/configmaps/sdc-environment-configmap.yaml") . | sha256sum }}
-        checksum/config: {{ include (print $.Template.BasePath "/configmaps/sdc-check-job-completion.yaml") . | sha256sum }}
       labels:
         app: sdc-be
       name: sdc-be
     spec:
       initContainers:
       - name: sdc-be-readiness
-        image: {{ .Values.image.readiness }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.readiness }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         command:
         - /root/ready.py
         args:
@@ -45,8 +42,8 @@ spec:
               apiVersion: v1
               fieldPath: metadata.namespace
       - name: sdc-job-completion
-        image: {{ .Values.image.readiness }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.readiness }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         command:
         - python
         args:
@@ -64,8 +61,8 @@ spec:
           name: sdc-check-job-completion
       containers:
       - name: sdc-be
-        image: {{ .Values.image.sdcBackend }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.sdcBackend }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         ports:
         - containerPort: 8443
         - containerPort: 8080
@@ -85,7 +82,7 @@ spec:
           name: sdc-logback
         env:
         - name: ENVNAME
-          value: AUTO
+          value: "{{ .Values.env.name }}"
         - name: HOST_IP
           valueFrom:
             fieldRef:
@@ -97,8 +94,9 @@ spec:
         readinessProbe:
           tcpSocket:
             port: 8443
-          initialDelaySeconds: 5
+          initialDelaySeconds: 120
           periodSeconds: 10
+          failureThreshold: 30
       volumes:
         - name: filebeat-conf
           hostPath:
index 64d1837..906b7c6 100644 (file)
@@ -28,22 +28,23 @@ spec:
             fieldRef:
               apiVersion: v1
               fieldPath: metadata.namespace
-        image: {{ .Values.image.readiness }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.readiness }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         name: sdc-cs-readiness
       containers:
       - name: sdc-cs
-        image: {{ .Values.image.sdcCassandra }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.sdcCassandra }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
+        # run cs & wait forever
+        command: ["/root/startup.sh"]
+        args: [ "/bin/sh", "-c" , "while true; do sleep 30; done;" ]
         env:
         - name: ENVNAME
-          value: AUTO
+          value: "{{ .Values.env.name }}"
         - name: HOST_IP
           valueFrom:
             fieldRef:
               fieldPath: status.podIP
-        - name: ES_HEAP_SIZE
-          value: "1024M"
         - name: CS_PASSWORD
           valueFrom:
             secretKeyRef: {name: sdc-cs-secret, key: cs_password}
@@ -63,10 +64,8 @@ spec:
         readinessProbe:
           exec:
             command:
-            - /bin/sh
-            - -c
-            - /var/lib/ready/probe.sh
-          initialDelaySeconds: 30
+            - "/var/lib/ready-probe.sh"
+          initialDelaySeconds: 60
           periodSeconds: 10
       volumes:
       - name: sdc-sdc-cs-cs
index d673e40..5ab7fee 100644 (file)
@@ -17,12 +17,16 @@ spec:
       name: sdc-es
     spec:
       containers:
-      - image: {{ .Values.image.sdcElasticsearch }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
-        name: sdc-es
+      - name: sdc-es
+        image: "{{ .Values.image.sdcElasticsearch }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
+        # run & wait forever
+        command: ["/root/startup.sh"]
+        args: [ "/bin/sh", "-c" , "while true; do sleep 30; done;" ]
+        
         env:
         - name: ENVNAME
-          value: "AUTO"
+          value: "{{ .Values.env.name }}"
         - name: HOST_IP
           valueFrom:
             fieldRef:
index c21efdc..49f5bb3 100644 (file)
@@ -17,7 +17,8 @@ spec:
       name: sdc-fe
     spec:
       initContainers:
-      - command:
+      - name: sdc-fe-readiness
+        command:
         - /root/ready.py
         args:
         - --container-name
@@ -34,9 +35,8 @@ spec:
             fieldRef:
               apiVersion: v1
               fieldPath: metadata.namespace
-        image: {{ .Values.image.readiness }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
-        name: sdc-fe-readiness
+        image: "{{ .Values.image.readiness }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
       volumes:
 #        - name: filebeat-conf
 #          hostPath:
@@ -67,15 +67,15 @@ spec:
       - name: "{{ .Values.nsPrefix }}-docker-registry-key"
       containers:
       - name: sdc-fe
+        image: "{{ .Values.image.sdcFrontend }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         env:
         - name: ENVNAME
-          value: AUTO
+          value: "{{ .Values.env.name }}"
         - name: HOST_IP
           valueFrom:
             fieldRef:
               fieldPath: status.podIP
-        image: {{ .Values.image.sdcFrontend }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
         volumeMounts:
 #        - mountPath: /usr/share/elasticsearch/data/
 #          name: sdc-sdc-es-es
@@ -92,16 +92,16 @@ spec:
 #          name: sdc-fe-config
 #        - mountPath: /tmp/logback.xml
 #          name: sdc-logback
-        lifecycle:
-          postStart:
-            exec:
-              command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-fe/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+#        lifecycle:
+#          postStart:
+#            exec:
+#              command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-fe/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
         ports:
         - containerPort: 9443
         - containerPort: 8181
         readinessProbe:
           tcpSocket:
             port: 8181
-          initialDelaySeconds: 5
+          initialDelaySeconds: 30
           periodSeconds: 10
 #{{ end }}
index 5c7f4a4..30b1be6 100644 (file)
@@ -30,17 +30,17 @@ spec:
             fieldRef:
               apiVersion: v1
               fieldPath: metadata.namespace
-        image: {{ .Values.image.readiness }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.readiness }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         name: sdc-kb-readiness
       containers:
       - env:
         - name: ENVNAME
-          value: AUTO
+          value: "{{ .Values.env.name }}"
         - name: ELASTICSEARCH_URL
           value: http://sdc-es:9200
-        image: {{ .Values.image.sdcKibana }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.sdcKibana }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         name: sdc-kb
         volumeMounts:
         - mountPath: /root/chef-solo/environments/
index e371b43..722f104 100644 (file)
@@ -13,8 +13,8 @@ spec:
     spec:
       initContainers:
       - name: sdc-init-cs-readiness
-        image: {{ .Values.image.readiness }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.readiness }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         command:
         - /root/ready.py
         args:
@@ -28,22 +28,23 @@ spec:
               fieldPath: metadata.namespace
       containers:
       - name: sdc-config-cs
-        image: {{ .Values.image.sdcCassandraInit }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
-        ports:
-        - containerPort: 8080
+        image: "{{ .Values.image.sdcCassandraInit }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         volumeMounts:
         - mountPath: /root/chef-solo/environments/
           name: sdc-environments
         env:
         - name: ENVNAME
-          value: "AUTO"
+          value: "{{ .Values.env.name }}"
         - name: SDC_USER
           valueFrom:
             secretKeyRef: {name: sdc-cs-secret, key: sdc_user}
         - name: SDC_PASSWORD
           valueFrom:
             secretKeyRef: {name: sdc-cs-secret, key: sdc_password}
+        - name: CS_PASSWORD
+          valueFrom:
+            secretKeyRef: {name: sdc-cs-secret, key: cs_password}
       volumes:
         - name: sdc-environments
           configMap:
index e0f6466..6aec759 100644 (file)
@@ -13,8 +13,8 @@ spec:
     spec:
       initContainers:
       - name: sdc-init-es-readiness
-        image: {{ .Values.image.readiness }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
+        image: "{{ .Values.image.readiness }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         command:
         - /root/ready.py
         args:
@@ -28,16 +28,14 @@ spec:
               fieldPath: metadata.namespace
       containers:
       - name: sdc-config-es
-        image: {{ .Values.image.sdcElasticsearchInit }}
-        imagePullPolicy: {{ .Values.pullPolicy }}
-        ports:
-        - containerPort: 8080
+        image: "{{ .Values.image.sdcElasticsearchInit }}"
+        imagePullPolicy: "{{ .Values.pullPolicy }}"
         volumeMounts:
         - mountPath: /root/chef-solo/environments/
           name: sdc-environments
         env:
         - name: ENVNAME
-          value: "AUTO"
+          value: "{{ .Values.env.name }}"
       volumes:
         - name: sdc-environments
           configMap:
index 2e63c60..ce1907f 100644 (file)
@@ -7,8 +7,8 @@ metadata:
 type: Opaque
 data:
     #application user
-    sdc_user: YXNkY191c2Vy
-    sdc_password: QWExMjM0JV4h
+    sdc_user: "{{ .Values.secrets.sdc_user }}"
+    sdc_password: "{{ .Values.secrets.sdc_password }}"
     #default user:
-    cs_password: b25hcDEyMyNAIQ==
+    cs_password: "{{ .Values.secrets.cs_password }}"
     
index a6950b2..61aaa9a 100644 (file)
@@ -5,11 +5,11 @@ image:
   readiness: oomk8s/readiness-check:1.0.0
   sdcKibana: nexus3.onap.org:10001/onap/sdc-kibana:1.2-STAGING-latest
   sdcFrontend: nexus3.onap.org:10001/onap/sdc-frontend:1.2-STAGING-latest
-  sdcElasticsearch: nexus3.onap.org:10001/onap/sdc-elasticsearch:1.2.0-STAGING-latest
-  sdcCassandra: nexus3.onap.org:10001/onap/sdc-cassandra:1.2.0-STAGING-latest
+  sdcElasticsearch: nexus3.onap.org:10001/onap/sdc-elasticsearch:1.2-STAGING-latest
+  sdcCassandra: nexus3.onap.org:10001/onap/sdc-cassandra:1.2-STAGING-latest
   sdcBackend: nexus3.onap.org:10001/onap/sdc-backend:1.2-STAGING-latest
   sdcElasticsearchInit: nexus3.onap.org:10001/onap/sdc-init-elasticsearch:1.2-STAGING-latest
-  sdcCassandraInit: vulpe03/cqlsh
+  sdcCassandraInit: nexus3.onap.org:10001/onap/sdc-cassandra-init:1.2-STAGING-latest
   filebeat: docker.elastic.co/beats/filebeat:5.5.0
 
 env:
@@ -18,4 +18,9 @@ env:
   nodeCS: sdc-cs.onap-sdc
   nodeES: sdc-es.onap-sdc
   nodeBE: sdc-be.onap-sdc
-  nodeFe: sdc-fe.onap-sdc
\ No newline at end of file
+  nodeFe: sdc-fe.onap-sdc
+
+secrets:
+    sdc_user: YXNkY191c2Vy
+    sdc_password: QWExMjM0JV4h
+    cs_password: b25hcDEyMyNAIQ==
\ No newline at end of file
index 9a7b577..83c2950 100644 (file)
@@ -12,6 +12,24 @@ check_status()
   fi
 }
 
+check_pods_status()
+{ 
+    num_of_pods=$1
+    status=0
+    while [ ${status} -ne ${num_of_pods} ]
+    do 
+      status=$(sudo kubectl get pods --namespace kube-system -o json \
+      | jq -r '
+        .items[]
+        | select(.status.phase == "Running" and 
+        ([ .status.conditions[] | select(.type == "Ready" and .status == "True") ]
+        | length ) == 1 )
+        | .metadata.namespace + "/" + .metadata.name
+        ' \
+      |  wc -l )
+      sleep 3
+    done
+}
 
 # Should be removed while private dockers (maven build) will be available:
 echo "[INFO] ONAP Docker login"
@@ -22,20 +40,8 @@ check_status $? "Onap docker registry login"
 # kube-addon-manager, kube-dns, kubernetes-dashboard, storage-provisioner, tiller-deploy
 echo "[INFO] Wait for Kubernetes Service ..." 
 cd ../../kubernetes
-status=0
-while [ ${status} -ne 5 ]
-do 
-  status=$(sudo kubectl get pods --namespace kube-system -o json \
-  | jq -r '
-    .items[]
-    | select(.status.phase == "Running" and 
-    ([ .status.conditions[] | select(.type == "Ready" and .status == "True") ]
-    | length ) == 1 )
-    | .metadata.namespace + "/" + .metadata.name
-    ' \
-  |  wc -l )
-  sleep 3
-done
+
+check_pods_status 4
 
 # Create namespace 
 echo "[INFO] Check Namespace existence"
@@ -49,7 +55,7 @@ echo "[INFO] Running helm init"
 sudo helm init
 check_status $? "Helm init"
 
-set -x
+check_pods_status 5
 
 printf "[INFO] Wait for helm to get ready\n"
 helm_health=1
diff --git a/sdc-os-chef/scripts/k8s/get_helm.sh b/sdc-os-chef/scripts/k8s/get_helm.sh
deleted file mode 100755 (executable)
index 79e9f35..0000000
+++ /dev/null
@@ -1,230 +0,0 @@
-#!/usr/bin/env bash
-
-# Copyright 2016 The Kubernetes Authors All rights reserved.
-#
-# 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
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# The install script is based off of the MIT-licensed script from glide,
-# the package manager for Go: https://github.com/Masterminds/glide.sh/blob/master/get
-
-PROJECT_NAME="helm"
-
-: ${HELM_INSTALL_DIR:="/usr/local/bin"}
-
-# initArch discovers the architecture for this system.
-initArch() {
-  ARCH=$(uname -m)
-  case $ARCH in
-    armv5*) ARCH="armv5";;
-    armv6*) ARCH="armv6";;
-    armv7*) ARCH="armv7";;
-    aarch64) ARCH="arm64";;
-    x86) ARCH="386";;
-    x86_64) ARCH="amd64";;
-    i686) ARCH="386";;
-    i386) ARCH="386";;
-  esac
-}
-
-# initOS discovers the operating system for this system.
-initOS() {
-  OS=$(echo `uname`|tr '[:upper:]' '[:lower:]')
-
-  case "$OS" in
-    # Minimalist GNU for Windows
-    mingw*) OS='windows';;
-  esac
-}
-
-# runs the given command as root (detects if we are root already)
-runAsRoot() {
-  local CMD="$*"
-  
-  if [ $EUID -ne 0 ]; then
-    CMD="sudo $CMD"
-  fi
-  
-  $CMD
-}
-
-# verifySupported checks that the os/arch combination is supported for
-# binary builds.
-verifySupported() {
-  local supported="darwin-386\ndarwin-amd64\nlinux-386\nlinux-amd64\nlinux-arm\nlinux-arm64\nlinux-ppc64le\nwindows-386\nwindows-amd64"
-  if ! echo "${supported}" | grep -q "${OS}-${ARCH}"; then
-    echo "No prebuilt binary for ${OS}-${ARCH}."
-    echo "To build from source, go to https://github.com/kubernetes/helm"
-    exit 1
-  fi
-
-  if ! type "curl" > /dev/null && ! type "wget" > /dev/null; then
-    echo "Either curl or wget is required"
-    exit 1
-  fi
-}
-
-# checkDesiredVersion checks if the desired version is available.
-checkDesiredVersion() {
-  # Use the GitHub releases webpage for the project to find the desired version for this project.
-  local release_url="https://github.com/kubernetes/helm/releases/${DESIRED_VERSION:-latest}"
-  if type "curl" > /dev/null; then
-    TAG=$(curl -SsL $release_url | awk '/\/tag\//' | cut -d '"' -f 2 | awk '{n=split($NF,a,"/");print a[n]}' | awk 'a !~ $0{print}; {a=$0}')
-  elif type "wget" > /dev/null; then
-    TAG=$(wget -q -O - $release_url | awk '/\/tag\//' | cut -d '"' -f 2 | awk '{n=split($NF,a,"/");print a[n]}' | awk 'a !~ $0{print}; {a=$0}')
-  fi
-  if [ "x$TAG" == "x" ]; then
-    echo "Cannot determine ${DESIRED_VERSION} tag."
-    exit 1
-  fi
-}
-
-# checkHelmInstalledVersion checks which version of helm is installed and
-# if it needs to be changed.
-checkHelmInstalledVersion() {
-  if [[ -f "${HELM_INSTALL_DIR}/${PROJECT_NAME}" ]]; then
-    local version=$(helm version | grep '^Client' | cut -d'"' -f2)
-    if [[ "$version" == "$TAG" ]]; then
-      echo "Helm ${version} is already ${DESIRED_VERSION:-latest}"
-      return 0
-    else
-      echo "Helm ${TAG} is available. Changing from version ${version}."
-      return 1
-    fi
-  else
-    return 1
-  fi
-}
-
-# downloadFile downloads the latest binary package and also the checksum
-# for that binary.
-downloadFile() {
-  HELM_DIST="helm-$TAG-$OS-$ARCH.tar.gz"
-  DOWNLOAD_URL="https://kubernetes-helm.storage.googleapis.com/$HELM_DIST"
-  CHECKSUM_URL="$DOWNLOAD_URL.sha256"
-  HELM_TMP_ROOT="$(mktemp -dt helm-installer-XXXXXX)"
-  HELM_TMP_FILE="$HELM_TMP_ROOT/$HELM_DIST"
-  HELM_SUM_FILE="$HELM_TMP_ROOT/$HELM_DIST.sha256"
-  echo "Downloading $DOWNLOAD_URL"
-  if type "curl" > /dev/null; then
-    curl -SsL "$CHECKSUM_URL" -o "$HELM_SUM_FILE"
-  elif type "wget" > /dev/null; then
-    wget -q -O "$HELM_SUM_FILE" "$CHECKSUM_URL"
-  fi
-  if type "curl" > /dev/null; then
-    curl -SsL "$DOWNLOAD_URL" -o "$HELM_TMP_FILE"
-  elif type "wget" > /dev/null; then
-    wget -q -O "$HELM_TMP_FILE" "$DOWNLOAD_URL"
-  fi
-}
-
-# installFile verifies the SHA256 for the file, then unpacks and
-# installs it.
-installFile() {
-  HELM_TMP="$HELM_TMP_ROOT/$PROJECT_NAME"
-  local sum=$(openssl sha1 -sha256 ${HELM_TMP_FILE} | awk '{print $2}')
-  local expected_sum=$(cat ${HELM_SUM_FILE})
-  if [ "$sum" != "$expected_sum" ]; then
-    echo "SHA sum of $HELM_TMP does not match. Aborting."
-    exit 1
-  fi
-
-  mkdir -p "$HELM_TMP"
-  tar xf "$HELM_TMP_FILE" -C "$HELM_TMP"
-  HELM_TMP_BIN="$HELM_TMP/$OS-$ARCH/$PROJECT_NAME"
-  echo "Preparing to install into ${HELM_INSTALL_DIR}"
-  runAsRoot cp "$HELM_TMP_BIN" "$HELM_INSTALL_DIR"
-}
-
-# fail_trap is executed if an error occurs.
-fail_trap() {
-  result=$?
-  if [ "$result" != "0" ]; then
-    if [[ -n "$INPUT_ARGUMENTS" ]]; then
-      echo "Failed to install $PROJECT_NAME with the arguments provided: $INPUT_ARGUMENTS"
-      help
-    else
-      echo "Failed to install $PROJECT_NAME"
-    fi
-    echo -e "\tFor support, go to https://github.com/kubernetes/helm."
-  fi
-  cleanup
-  exit $result
-}
-
-# testVersion tests the installed client to make sure it is working.
-testVersion() {
-  set +e
-  echo "$PROJECT_NAME installed into $HELM_INSTALL_DIR/$PROJECT_NAME"
-  HELM="$(which $PROJECT_NAME)"
-  if [ "$?" = "1" ]; then
-    echo "$PROJECT_NAME not found. Is $HELM_INSTALL_DIR on your "'$PATH?'
-    exit 1
-  fi
-  set -e
-  echo "Run '$PROJECT_NAME init' to configure $PROJECT_NAME."
-}
-
-# help provides possible cli installation arguments
-help () {
-  echo "Accepted cli arguments are:"
-  echo -e "\t[--help|-h ] ->> prints this help"
-  echo -e "\t[--version|-v <desired_version>] . When not defined it defaults to latest"
-  echo -e "\te.g. --version v2.4.0  or -v latest"
-}
-
-# cleanup temporary files to avoid https://github.com/kubernetes/helm/issues/2977
-cleanup() {
-  rm -rf "$HELM_TMP_ROOT"
-}
-
-# Execution
-
-#Stop execution on any error
-trap "fail_trap" EXIT
-set -e
-
-# Parsing input arguments (if any)
-export INPUT_ARGUMENTS="${@}"
-set -u
-while [[ $# -gt 0 ]]; do
-  case $1 in
-    '--version'|-v)
-       shift
-       if [[ $# -ne 0 ]]; then
-           export DESIRED_VERSION="${1}"
-       else
-           echo -e "Please provide the desired version. e.g. --version v2.4.0 or -v latest"
-           exit 0
-       fi
-       ;;
-    '--help'|-h)
-       help
-       exit 0
-       ;;
-    *) exit 1
-       ;;
-  esac
-  shift
-done
-set +u
-
-initArch
-initOS
-verifySupported
-checkDesiredVersion
-if ! checkHelmInstalledVersion; then
-  downloadFile
-  installFile
-fi
-testVersion
-cleanup
index 22ef079..7afb307 100644 (file)
@@ -1,9 +1,17 @@
+interface = node['interfaces']['application']
+application_host = ''
+node['network']['interfaces'][interface][:addresses].each do | addr , details |
+    if details['family'] == ('inet')
+        application_host = addr
+    end
+end
+
 template "/tmp/change_cassandra_pass.sh" do
   source "change_cassandra_pass.sh.erb"
   sensitive true
   mode 0755
   variables({
-     :cassandra_ip => node['Nodes']['CS'],
+     :cassandra_ip => application_host,
      :cassandra_pwd => ENV['CS_PASSWORD']
   })
 end
index 0eb9800..c196ca7 100644 (file)
@@ -1,9 +1,17 @@
+interface = node['interfaces']['application']
+application_host = ''
+node['network']['interfaces'][interface][:addresses].each do | addr , details |
+    if details['family'] == ('inet')
+        application_host = addr
+    end
+end
+
 template "/var/lib/ready-probe.sh" do
   source "ready-probe.sh.erb"
   sensitive true
   mode 0755
   variables({
-     :cassandra_ip => node['Nodes']['CS'],
+     :cassandra_ip => application_host,
      :cassandra_pwd => ENV['CS_PASSWORD']
   })
 end
\ No newline at end of file