From 8020f71afd34d7696d7933659df2d763ab05542f Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 16:31:17 +0200 Subject: Adding upstream version 1.37.1. Signed-off-by: Daniel Baumann --- tests/installer/checksums.sh | 53 ++++++++++++++++++++++++++++++++++++ tests/installer/slack.sh | 65 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 118 insertions(+) create mode 100755 tests/installer/checksums.sh create mode 100755 tests/installer/slack.sh (limited to 'tests/installer') diff --git a/tests/installer/checksums.sh b/tests/installer/checksums.sh new file mode 100755 index 0000000..ff0400b --- /dev/null +++ b/tests/installer/checksums.sh @@ -0,0 +1,53 @@ +#!/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 + +echo "No problems found, exiting successfully!" diff --git a/tests/installer/slack.sh b/tests/installer/slack.sh new file mode 100755 index 0000000..3f3eff6 --- /dev/null +++ b/tests/installer/slack.sh @@ -0,0 +1,65 @@ +# #No shebang necessary +# BASH Lib: Simple incoming webhook for slack integration. +# +# The script expects the following parameters to be defined by the upper layer: +# SLACK_NOTIFY_WEBHOOK_URL +# SLACK_BOT_NAME +# SLACK_CHANNEL +# +# Copyright: +# +# Author: Pavlos Emm. Katsoulakis