Move lcm certificate to lcm folder in OSM helm chart
[osm/devops.git] / tools / osm-report
1 #!/bin/bash
2
3 # OSM devops/tools - Tool that generates a report for debugging
4 #
5 # Copyright 2018 Telefonica
6 #
7 # Licensed under the Apache License, Version 2.0 (the "License");
8 # you may not use this file except in compliance with the License.
9 # You may obtain a copy of the License at
10 #
11 #   http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
18
19 DIRNAME=$(readlink -f ${BASH_SOURCE[0]})
20 DIRNAME=$(dirname $DIRNAME)
21
22 #Get versions
23 echo "-------------------------------"
24 echo "Versions"
25 echo "-------------------------------"
26 echo "DIRNAME: $DIRNAME"
27 echo "docker version:"
28 docker version
29 echo "lxd version:"
30 lxd --version
31 echo "juju version:"
32 juju --version
33 echo "osm-devops deb package:"
34 dpkg -l |grep osm-devops
35 echo "osm-imdocs osm-im deb package:"
36 dpkg -l |grep osm-im
37 echo "python-osmclient deb package:"
38 dpkg -l |grep
39 echo "whereis osm:"
40 whereis osm
41 echo "which osmclient:"
42 which osm
43 #dockers deb packages
44 echo "dockers deb packages"
45 for i in kafka keystone lcm mon mongo nbi pol prometheus ro mysql zookeeper; do
46     echo "docker osm_$i"
47     docker exec $(docker ps -q -f name=osm_$i -l) dpkg -l |grep osm
48 done
49 #dockers source code
50 echo "dockers deb packages"
51 echo "MON"
52 docker exec -it $(docker ps -aqf "name=osm_mon" -n 1) dpkg -l |egrep -i "osm|n2vc"
53 echo "POL"
54 docker exec -it $(docker ps -aqf "name=osm_pol" -n 1) dpkg -l |egrep -i "osm|n2vc"
55 echo "LCM"
56 docker exec -it $(docker ps -aqf "name=osm_lcm" -n 1) dpkg -l |egrep -i "osm|n2vc"
57 echo "NBI"
58 docker exec -it $(docker ps -aqf "name=osm_nbi" -n 1) dpkg -l |egrep -i "osm|n2vc"
59 echo "RO"
60 docker exec -it $(docker ps -aqf "name=osm_ro.1" -n 1) dpkg -l |egrep -i "osm|n2vc"
61 echo "OSMCLIENT"
62 dpkg -l |grep osmclient
63 echo "OSM-IM"
64 dpkg -l |grep osm-im
65 echo "OSM-DEVOPS"
66 dpkg -l |grep osm-devops
67
68 echo "docker osm_ro"
69 docker exec $(docker ps -q -f name=osm_ro -l) git -C /root/RO rev-parse HEAD
70 docker exec $(docker ps -q -f name=osm_ro -l) git -C /root/RO describe --tags --long --dirty
71 echo "docker osm_lcm"
72 docker exec $(docker ps -q -f name=osm_lcm -l) git -C /app rev-parse HEAD
73 docker exec $(docker ps -q -f name=osm_lcm -l) git -C /app describe --tags --long --dirty
74 echo "docker osm_nbi"
75 docker exec $(docker ps -q -f name=osm_nbi -l) git -C /app/NBI rev-parse HEAD
76 docker exec $(docker ps -q -f name=osm_nbi -l) git -C /app/NBI describe --tags --long --dirty
77 echo "docker osm_mon"
78 docker exec $(docker ps -q -f name=osm_mon -l) git -C /mon rev-parse HEAD
79 docker exec $(docker ps -q -f name=osm_mon -l) git -C /mon describe --tags --long --dirty
80 echo "docker osm_pol"
81 docker exec $(docker ps -q -f name=osm_pol -l) git -C /policy_module rev-parse HEAD
82 docker exec $(docker ps -q -f name=osm_pol -l) git -C /policy_module describe --tags --long --dirty
83
84 #Get configuration files
85 echo "-------------------------------"
86 echo "Configuration files"
87 echo "-------------------------------"
88 for i in $(find /etc/osm -type f -exec echo {} \;); do
89     [ -f "$i" ] || continue
90     echo "File $i:"
91     cat $i
92 done
93
94 #Get status of docker swarm
95 echo "-------------------------------"
96 echo "Docker swarm status"
97 echo "-------------------------------"
98 echo "Node ls:"
99 docker node ls
100 echo "Node inspect self:"
101 docker node inspect self --pretty
102 echo "Network inspect docker_gwbridge:"
103 docker network inspect docker_gwbridge
104 echo "Network inspect netOSM:"
105 docker network inspect netOSM
106 echo "Network inspect netosm:"
107 docker network inspect netosm
108
109 #Get status of dockers
110 echo "-------------------------------"
111 echo "Docker status"
112 echo "-------------------------------"
113 echo "-------------------------------"
114 echo "Docker stack ls"
115 echo "-------------------------------"
116 docker stack ls
117 echo "-------------------------------"
118 echo "Docker service ls"
119 echo "-------------------------------"
120 docker service ls
121 for i in $(docker stack ps |tail -n +2|awk '{print $1}'); do
122     echo "-------------------------------"
123     echo "Docker stack $i"
124     echo "-------------------------------"
125     docker stack ps $i
126 done
127
128 #Get log files
129 echo
130 echo "-------------------------------"
131 echo "Log files"
132 echo "-------------------------------"
133 echo "To be added"
134
135 #Get OSM general info
136 echo "-------------------------------"
137 echo "OSM info"
138 echo "-------------------------------"
139 for i in vim-list sdnc-list vnfd-list nsd-list ns-list vnf-list; do
140     echo "-------------------------------"
141     echo "OSM info: $i"
142     echo "-------------------------------"
143     osm $i
144 done
145
146 #Get OSM details
147 echo "-------------------------------"
148 echo "OSM details"
149 echo "-------------------------------"
150 for i in vim sdnc vnfd nsd ns; do
151     echo "-------------------------------"
152     echo "OSM details: $i"
153     echo "-------------------------------"
154     for j in $(osm $i-list|tail -n +4|awk '{print $4}'); do
155         echo "-------------------------------"
156         echo "OSM details: vim $j"
157         echo "-------------------------------"
158         osm $i-show $j
159     done
160 done
161 for i in vnf; do
162     echo "-------------------------------"
163     echo "OSM details: $i"
164     echo "-------------------------------"
165     for j in $(osm $i-list|tail -n +4|awk '{print $2}'); do
166         echo "-------------------------------"
167         echo "OSM details: vim $j"
168         echo "-------------------------------"
169         osm $i-show $j
170     done
171 done
172