blob: a724d6f0ee6d7af5a5398b5afa1f829e38a87e54 [file] [log] [blame]
Petr Ospalý03e61242019-01-03 16:54:50 +01001# COPYRIGHT NOTICE STARTS HERE
2#
Piotr Perzanowski613787d2018-12-18 16:45:11 +01003# Copyright 2018 © Samsung Electronics Co., Ltd.
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16#
17# COPYRIGHT NOTICE ENDS HERE
Petr Ospalý03e61242019-01-03 16:54:50 +010018
Piotr Perzanowski613787d2018-12-18 16:45:11 +010019if [[ -z "$LISTS_DIR" ]]; then
20 LISTS_DIR=.
21 echo "Using default output directory ."
22fi
Petr Ospalý03e61242019-01-03 16:54:50 +010023
Piotr Perzanowski613787d2018-12-18 16:45:11 +010024OOM_PATH="$1"
Petr Ospalý03e61242019-01-03 16:54:50 +010025
Piotr Perzanowski613787d2018-12-18 16:45:11 +010026if [[ -z "$OOM_PATH" ]]; then
27 echo "Missing oom path"
28 exit 1
29fi
Petr Ospalý03e61242019-01-03 16:54:50 +010030
31
Piotr Perzanowski613787d2018-12-18 16:45:11 +010032GOUTPUT="$LISTS_DIR/git_repos_list"
33FOUTPUT="$LISTS_DIR/fetch_list.txt"
Petr Ospalý03e61242019-01-03 16:54:50 +010034
Piotr Perzanowski613787d2018-12-18 16:45:11 +010035trim_last() {
36 echo "${@:1:$#-1}";
37}
Petr Ospalý03e61242019-01-03 16:54:50 +010038
Piotr Perzanowski613787d2018-12-18 16:45:11 +010039TMP='/tmp/git_tmp_list'
40:> $TMP
Petr Ospalý03e61242019-01-03 16:54:50 +010041
Piotr Perzanowski613787d2018-12-18 16:45:11 +010042:> $FOUTPUT
Petr Ospalý03e61242019-01-03 16:54:50 +010043
Piotr Perzanowski613787d2018-12-18 16:45:11 +010044echo "Gathering git repos and list possible html data"
Petr Ospalý03e61242019-01-03 16:54:50 +010045
Piotr Perzanowski613787d2018-12-18 16:45:11 +010046while read -r chart; do
47 out="$(helm template $(dirname "$chart") 2>/dev/null)"
48 gitcmds=$(echo "$out" | grep 'git clone')
Petr Ospalý03e61242019-01-03 16:54:50 +010049
Piotr Perzanowski613787d2018-12-18 16:45:11 +010050 if [[ -n "$gitcmds" ]] ; then
51 while read gitcmd; do
52 gitcmd=$(trim_last $gitcmd)
53 repo_path=$(echo "$gitcmd" | sed 's#.*http://\(.*\)$#\1#')
54 full="$gitcmd --bare $repo_path"
55 echo "Cmd: $full"
56 echo "$full" >> $TMP
57 done <<< "$gitcmds"
58 fi
Petr Ospalý03e61242019-01-03 16:54:50 +010059
Piotr Perzanowski613787d2018-12-18 16:45:11 +010060 fetchcmds=$(echo "$out" | grep 'wget \|curl ' | grep -v 'HEALTH_CHECK_ENDPOINT\|PUT\|POST' )
61 if [[ -n "$fetchcmds" ]] ; then
62 while read fetchcmd; do
63 echo "Fetch: $fetchcmd"
64 echo "=== From: $chart" >> $FOUTPUT
65 echo "$fetchcmd" >> $FOUTPUT
66 done <<< "$fetchcmds"
67 fi
Petr Ospalý03e61242019-01-03 16:54:50 +010068
69
Piotr Perzanowski613787d2018-12-18 16:45:11 +010070done <<< "$(find $OOM_PATH -name Chart.yaml)"
Petr Ospalý03e61242019-01-03 16:54:50 +010071
Piotr Perzanowski613787d2018-12-18 16:45:11 +010072sort $TMP | uniq > $GOUTPUT
Petr Ospalý03e61242019-01-03 16:54:50 +010073
74