From 26ea046ba210167894a8702f29eb50faa4677a4e Mon Sep 17 00:00:00 2001 From: CanbiZ <47820557+MickLesk@users.noreply.github.com> Date: Mon, 7 Apr 2025 12:50:37 +0200 Subject: [PATCH] Redesign: Zabbix, get always latest version (#3720) --- ct/zabbix.sh | 73 ++++++++++++++++++++------------------- install/zabbix-install.sh | 11 +++--- 2 files changed, 45 insertions(+), 39 deletions(-) diff --git a/ct/zabbix.sh b/ct/zabbix.sh index e14b5af21..79b19e766 100644 --- a/ct/zabbix.sh +++ b/ct/zabbix.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) -# Copyright (c) 2021-2025 tteck -# Author: tteck (tteckster) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://www.zabbix.com/ @@ -20,40 +20,43 @@ color catch_errors function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -f /etc/zabbix/zabbix_server.conf ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi - msg_info "Stopping ${APP} Services" - systemctl stop zabbix-server zabbix-agent2 - msg_ok "Stopped ${APP} Services" - - msg_info "Updating $APP LXC" - mkdir -p /opt/zabbix-backup/ - cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/ - cp /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix-backup/ - cp -R /usr/share/zabbix/ /opt/zabbix-backup/ - #cp -R /usr/share/zabbix-* /opt/zabbix-backup/ Remove temporary - rm -Rf /etc/apt/sources.list.d/zabbix.list - cd /tmp - curl -fsSL "https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb" -o $(basename "https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb") - $STD dpkg -i zabbix-release_latest+debian12_all.deb - $STD apt-get update - $STD apt-get install --only-upgrade zabbix-server-pgsql zabbix-frontend-php zabbix-agent2 zabbix-agent2-plugin-* - - msg_info "Starting ${APP} Services" - systemctl start zabbix-server zabbix-agent2 - systemctl restart apache2 - msg_ok "Started ${APP} Services" - - msg_info "Cleaning Up" - rm -rf /tmp/zabbix-release_latest+debian12_all.deb - msg_ok "Cleaned" - msg_ok "Updated Successfully" + header_info + check_container_storage + check_container_resources + if [[ ! -f /etc/zabbix/zabbix_server.conf ]]; then + msg_error "No ${APP} Installation Found!" exit + fi + msg_info "Stopping ${APP} Services" + systemctl stop zabbix-server zabbix-agent2 + msg_ok "Stopped ${APP} Services" + + msg_info "Updating $APP LXC" + mkdir -p /opt/zabbix-backup/ + cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/ + cp /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix-backup/ + cp -R /usr/share/zabbix/ /opt/zabbix-backup/ + #cp -R /usr/share/zabbix-* /opt/zabbix-backup/ Remove temporary + rm -Rf /etc/apt/sources.list.d/zabbix.list + cd /tmp || exit + curl -fsSL "$(curl -fsSL https://repo.zabbix.com/zabbix/ | + grep -oP '(?<=href=")[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1 | + xargs -I{} echo "https://repo.zabbix.com/zabbix/{}/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb")" \ + -o /tmp/zabbix-release_latest+debian12_all.deb + $STD dpkg -i zabbix-release_latest+debian12_all.deb + $STD apt-get update + $STD apt-get install --only-upgrade zabbix-server-pgsql zabbix-frontend-php zabbix-agent2 zabbix-agent2-plugin-* + + msg_info "Starting ${APP} Services" + systemctl start zabbix-server zabbix-agent2 + systemctl restart apache2 + msg_ok "Started ${APP} Services" + + msg_info "Cleaning Up" + rm -rf /tmp/zabbix-release_latest+debian12_all.deb + msg_ok "Cleaned" + msg_ok "Updated Successfully" + exit } start diff --git a/install/zabbix-install.sh b/install/zabbix-install.sh index 462635e23..78693aa60 100644 --- a/install/zabbix-install.sh +++ b/install/zabbix-install.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash -# Copyright (c) 2021-2025 tteck -# Author: tteck (tteckster) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: MickLesk (CanbiZ) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://www.zabbix.com/ @@ -14,8 +14,11 @@ network_check update_os msg_info "Installing Zabbix" -cd /tmp -curl -fsSL "https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb" -o $(basename "https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb") +cd /tmp || exit +curl -fsSL "$(curl -fsSL https://repo.zabbix.com/zabbix/ | + grep -oP '(?<=href=")[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1 | + xargs -I{} echo "https://repo.zabbix.com/zabbix/{}/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb")" \ + -o /tmp/zabbix-release_latest+debian12_all.deb $STD dpkg -i /tmp/zabbix-release_latest+debian12_all.deb $STD apt-get update $STD apt-get install -y zabbix-server-pgsql zabbix-frontend-php php8.2-pgsql zabbix-apache-conf zabbix-sql-scripts