blob: 2ad2d771b2f9f364f05adb550bc2948e901a5a69 [file] [log] [blame]
David Bainbridgecfd7ca12019-10-06 03:31:41 +00001#!/bin/bash
2# Copyright 2019 Ciena Corporation
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16# This script sets up a watch with information that is valuable when
17# developing voltha with k8s
David Bainbridge1d2c5842020-06-03 15:29:07 -070018SCRIPTPATH="$( cd "$(dirname "$0")" || return >/dev/null 2>&1 ; pwd -P )"
David Bainbridgecfd7ca12019-10-06 03:31:41 +000019
David Bainbridge1d2c5842020-06-03 15:29:07 -070020if ! command -v kubectl >/dev/null 2>&1; then
21 >&2 echo "ERROR: 'kubectl' not in \$PATH"
22 exit 1
David K. Bainbridgefe1fa8a2019-11-12 12:03:21 -080023fi
24
David Bainbridge1d2c5842020-06-03 15:29:07 -070025echo "Kind (client): $(kind version)"
26kubectl version -o json | jq -r '"Kubernetes (client/server): "+.clientVersion.gitVersion+"/"+.serverVersion.gitVersion'
27helm version --template 'Helm: (client/server): {{ (index . "Client").SemVer }}/{{ (index . "Server").SemVer }}{{ printf "\n"}}'
28
29echo -n "Voltctl: (client/server): "
30if ! command -v voltctl >/dev/null 2>&1; then
31 echo "'voltctl' not in \$PATH"
32else
33 CLIENT=$(voltctl version --clientonly -o json | jq -r '"v"+.version')
34 JSON=$(voltctl version -o json 2>&1)
35 if [ "$?" -eq 0 ]; then
36 echo "$CLIENT/$(echo "$JSON" | jq -r '"/v"+.cluster.version' 2>&1)"
37 else
38 echo "$CLIENT/$JSON"
39 fi
40fi
41echo
42kubectl get --all-namespaces pods,svc,configmap | grep -v kube-system
43echo
44kubectl describe --all-namespaces pods | grep Image: | grep '\(voltha\|bbsim\)' | sed -e "s/^ *//g" -e "s/: */: /g"
45echo
46echo "DB SIZE: $("$SCRIPTPATH/etcd-db-size.sh")"
47echo
48PIDS=$(pgrep -f "etcd --name etcd")
49if [ -z "$PIDS" ]; then
50 echo "RSS SIZE: N/A"
51else
52 echo "RSS SIZE: $(ps -ho rss $PIDS | xargs numfmt --to=iec | tr '\n' ' ' )"
53fi