blob: 3fbbfa3864c8efc581bd55a70c4f44ad71939d5a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
#!/bin/sh
#
# Mechanism to validate kickstart files integrity status
#
# Copyright: SPDX-License-Identifier: GPL-3.0-or-later
#
# Author : Pawel Krupa (pawel@netdata.cloud)
# Author : Pavlos Emm. Katsoulakis (paul@netdata.cloud)
# Author : Austin S. Hemmelgarn (austin@netdata.cloud)
set -e
# If we are not in netdata git repo, at the top level directory, fail
TOP_LEVEL=$(basename "$(git rev-parse --show-toplevel 2>/dev/null || echo "")")
CWD="$(git rev-parse --show-cdup 2>/dev/null || echo "")"
if [ -n "$CWD" ] || [ "${TOP_LEVEL}" != "netdata" ]; then
echo "Run as ./tests/installer/$(basename "$0") from top level directory of netdata git repository"
echo "Kickstart validation process aborted"
exit 1
fi
check_file() {
README_MD5=$(grep "$1" "$2" | grep md5sum | grep curl | cut -d '"' -f2)
KICKSTART_URL="https://my-netdata.io/$1"
KICKSTART="packaging/installer/$1"
KICKSTART_MD5="$(md5sum "${KICKSTART}" | cut -d' ' -f1)"
CALCULATED_MD5="$(curl -Ss "${KICKSTART_URL}" | md5sum | cut -d ' ' -f 1)"
# Conditionally run the website validation
if [ -z "${LOCAL_ONLY}" ]; then
echo "Validating ${KICKSTART_URL} against local file ${KICKSTART} with MD5 ${KICKSTART_MD5}.."
if [ "$KICKSTART_MD5" = "$CALCULATED_MD5" ]; then
echo "${KICKSTART_URL} looks fine"
else
echo "${KICKSTART_URL} md5sum does not match local file, it needs to be updated"
exit 2
fi
fi
echo "Validating documentation for $1"
if [ "$KICKSTART_MD5" != "$README_MD5" ]; then
echo "Invalid checksum for $1 in $2."
echo "checksum in docs: $README_MD5"
echo "current checksum: $KICKSTART_MD5"
exit 2
else
echo "$1 MD5Sum is well documented"
fi
}
check_file kickstart.sh packaging/installer/methods/kickstart.md
check_file kickstart-static64.sh packaging/installer/methods/kickstart-64.md
echo "No problems found, exiting succesfully!"
|