Update netdata.sh

code refactoring
This commit is contained in:
tteckster 2023-12-20 11:25:00 -05:00 committed by GitHub
parent 7377f1627b
commit e8c61ddea7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -5,8 +5,9 @@
# License: MIT # License: MIT
# https://github.com/tteck/Proxmox/raw/main/LICENSE # https://github.com/tteck/Proxmox/raw/main/LICENSE
clear function header_info {
cat <<"EOF" clear
cat <<"EOF"
_ __ __ ____ __ _ __ __ ____ __
/ | / /__ / /_/ __ \____ _/ /_____ _ / | / /__ / /_/ __ \____ _/ /_____ _
/ |/ / _ \/ __/ / / / __ `/ __/ __ `/ / |/ / _ \/ __/ / / / __ `/ __/ __ `/
@ -14,35 +15,81 @@ cat <<"EOF"
/_/ |_/\___/\__/_____/\__,_/\__/\__,_/ /_/ |_/\___/\__/_____/\__,_/\__/\__,_/
EOF EOF
}
YW=$(echo "\033[33m")
BL=$(echo "\033[36m")
RD=$(echo "\033[01;31m")
GN=$(echo "\033[1;92m")
CL=$(echo "\033[m")
BFR="\\r\\033[K"
HOLD="-"
CM="${GN}${CL}"
silent() { "$@" >/dev/null 2>&1; }
set -e
header_info
function msg_info() {
local msg="$1"
echo -ne " ${HOLD} ${YW}${msg}..."
}
function msg_ok() {
local msg="$1"
echo -e "${BFR} ${CM} ${GN}${msg}${CL}"
}
install() { install() {
while true; do while true; do
read -p "This script will install NetData on Proxmox VE 8+. Proceed(y/n)?" yn read -p "Are you sure you want to install NetData on Proxmox VE host. Proceed(y/n)?" yn
case $yn in case $yn in
[Yy]*) break ;; [Yy]*) break ;;
[Nn]*) exit ;; [Nn]*) exit ;;
*) echo "Please answer yes or no." ;; *) echo "Please answer yes or no." ;;
esac esac
done done
wget -q https://repo.netdata.cloud/repos/repoconfig/debian/bookworm/netdata-repo_2-2+debian12_all.deb read -r -p "Verbose mode? <y/N> " prompt
dpkg -i netdata-repo_2-2+debian12_all.deb if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
rm -rf netdata-repo_2-2+debian12_all.deb STD=""
apt-get update &>/dev/null else
apt-get -y upgrade STD="silent"
apt-get install -y netdata fi
echo -e "\nInstalled NetData (http://$(hostname -I | awk '{print $1}'):19999)\n" header_info
msg_info "Setting up repository"
wget -q https://repo.netdata.cloud/repos/repoconfig/debian/bookworm/netdata-repo_2-2+debian12_all.deb
$STD dpkg -i netdata-repo_2-2+debian12_all.deb
rm -rf netdata-repo_2-2+debian12_all.deb
msg_ok "Set up repository"
msg_info "Installing Netdata"
$STD apt-get update
$STD apt-get install -y netdata
msg_ok "Installed Netdata\n"
msg_ok "Completed Successfully!\n"
echo -e "\n Netdata should be reachable at${BL} http://$(hostname -I | awk '{print $1}'):19999 ${CL}\n"
} }
uninstall() { uninstall() {
systemctl stop netdata read -r -p "Verbose mode? <y/N> " prompt
apt-get remove --purge -y netdata netdata-repo if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
rm -rf /var/log/netdata /var/lib/netdata /var/cache/netdata /etc/apt/sources.list.d/netdata.list STD=""
rm -rf /etc/apt/trusted.gpg.d/netdata-archive-keyring.gpg else
systemctl daemon-reload STD="silent"
apt autoremove -y fi
userdel netdata header_info
echo -e "\nRemoved NetData from Proxmox VE\n"
msg_info "Uninstalling Netdata"
systemctl stop netdata
rm -rf /var/log/netdata /var/lib/netdata /var/cache/netdata /etc/netdata/go.d
rm -rf /etc/apt/trusted.gpg.d/netdata-archive-keyring.gpg /etc/apt/sources.list.d/netdata.list
$STD apt-get remove --purge -y netdata netdata-repo
systemctl daemon-reload
$STD apt autoremove -y
$STD userdel netdata
msg_ok "Uninstalled Netdata\n"
msg_ok "Completed Successfully!\n"
} }
if ! pveversion | grep -Eq "pve-manager/(8\.[0-9])"; then if ! pveversion | grep -Eq "pve-manager/(8\.[0-9])"; then