tis-zabbix-agent icon

Zabbix Agent

Silent install package for Zabbix Agent

7.2.5.2400-3

  • package: tis-zabbix-agent
  • name: Zabbix Agent
  • version: 7.2.5.2400-3
  • maintainer: Amel FRADJ
  • licence: GNU General Public License
  • target_os: windows
  • architecture: x64
  • signature_date:
  • size: 9.36 Mo
  • homepage : https://www.zabbix.com/

package           : tis-zabbix-agent
version           : 7.2.5.2400-3
architecture      : x64
section           : base
priority          : optional
name              : Zabbix Agent
categories        : 
maintainer        : Amel FRADJ
description       : Zabbix is an open-source software tool to monitor IT infrastructure such as networks, servers, virtual machines, and cloud services.[2] Zabbix collects and displays basic metrics
depends           : 
conflicts         : 
maturity          : PROD
locale            : 
target_os         : windows
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : 
description_fr    : Zabbix est un logiciel libre qui permet de surveiller les infrastructures informatiques telles que les réseaux, les serveurs, les machines virtuelles et les services en nuage[2]. Zabbix collecte et affiche des mesures de base
description_pl    : Zabbix to narzędzie typu open-source do monitorowania infrastruktury IT, takiej jak sieci, serwery, maszyny wirtualne i usługi w chmurze[2]. Zabbix zbiera i wyświetla podstawowe metryki
description_de    : Zabbix ist ein Open-Source-Softwaretool zur Überwachung von IT-Infrastrukturen wie Netzwerken, Servern, virtuellen Maschinen und Cloud-Diensten.[2] Zabbix sammelt und zeigt grundlegende Metriken an
description_es    : Zabbix es una herramienta de software de código abierto para monitorizar infraestructuras de TI como redes, servidores, máquinas virtuales y servicios en la nube[2]. Zabbix recopila y muestra métricas básicas
description_pt    : O Zabbix é uma ferramenta de software de código aberto para monitorizar a infraestrutura de TI, como redes, servidores, máquinas virtuais e serviços em nuvem.[2] O Zabbix recolhe e apresenta métricas básicas
description_it    : Zabbix è uno strumento software open-source per il monitoraggio dell'infrastruttura IT, come reti, server, macchine virtuali e servizi cloud.[2] Zabbix raccoglie e visualizza metriche di base
description_nl    : Zabbix is een open-source softwaretool voor het monitoren van IT-infrastructuur zoals netwerken, servers, virtuele machines en cloudservices.[2] Zabbix verzamelt en toont basisgegevens
description_ru    : Zabbix - это программное обеспечение с открытым исходным кодом для мониторинга ИТ-инфраструктуры, такой как сети, серверы, виртуальные машины и облачные сервисы.[2] Zabbix собирает и отображает основные метрики
audit_schedule    : 
editor            : 
keywords          : 
licence           : GNU General Public License
homepage          : https://www.zabbix.com/
package_uuid      : b8c7006f-61cf-4a67-8a2a-26db0c505b6a
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/ChangeLog
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 641bba1fb97f1ebf3fcb397be733446a2b45d78e73608b3f37f2d26e2cc7bafc
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-04-01T14:41:19.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : oKmFvqYoUF3IBGcZFvJLRqU15nBH7GcgTHzYfqAtPFpsURYo+UoMhGMJ+Efh3mg0KpRpvQR948Nh1FGJ6+aRPZCF8I01c/bRPw0V60BcV53vGragRLCP8E8N26zSxDO7W+0c/2iUJWluUbKaZtJ5lItKuBeoBVQu2/pytHhhkreBzYV7tDHQ5Vqy1imE+aRQxHljWgypxGA3MjlRPKb0kfANJtBJL3LWLXCBktbJ/KvEEDTLp7Kqn6wwObw/esJ1VToOuBXA/YsBphSG9CpMVbcIoZg6OLFhNAE0TV7aK1Lvciy3f7sCeE5G3lcAEWNi2MZ4mhsHkc/h4q2qOr7pEw==

# -*- coding: utf-8 -*-
from setuphelpers import *

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

https://www.zabbix.com/documentation/current/en/manual/installation/install_from_packages/win_msi
"""
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
properties = {"SERVER": "server_fqdn"}


def install():

    for soft in installed_softwares("Zabbix Agent"):
        zabbix_folder = soft['install_location']
        zabbix_agentd = makepath(zabbix_folder,"zabbix_agentd.conf")
        if isfile(zabbix_agentd):
            with open(zabbix_agentd, 'r') as f:
                server = f.read().split('\nServer=')[1].split('\n')[0].strip()
                properties['SERVER'] = server
            break
    
    if WindowsVersions.Windows7 >= windows_version() :
        for soft in installed_softwares('Zabbix Agent'):
            if Version(soft['version']) < Version(control.get_software_version()):
                run(uninstall_cmd(soft['key']))

    # Declaring local variables
    bin_name = glob.glob("zabbix_agent-*.msi")[0]
    install_msi_if_needed(
        bin_name,
        min_version=control.get_software_version(),
        properties=properties,
    )

# -*- coding: utf-8 -*-
##################################################
# This file is part of WAPT Enterprise
# All right reserved, (c) Tranquil IT Systems 2023
# For more information please refer to
# https://wapt.tranquil.it/store/licences.html
##################################################
from setuphelpers import *
import json
import re
import requests


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name

    base_url = "https://cdn.zabbix.com/zabbix/binaries/stable/"
    re_versions = re.compile(r'<a href="([\d\.]+)/?">')

    # Récupération du contenu HTML de l'URL de base
    index = wgets(base_url, proxies=proxies)

    # Recherche des versions dans le contenu HTML
    versions = re_versions.findall(index)

    # Si des versions sont trouvées
    if versions:
        # Prendre la première version trouvée (ou la version la plus récente si déjà triée)
        latest_version = sorted(versions, key=lambda p: Version(p), reverse=True)[0]

        # Construire l'URL spécifique pour cette version
        url_zabbix = base_url + latest_version + "/"
        index_version = wgets(url_zabbix, proxies=proxies)

        # Rechercher la version spécifique (par exemple, 7.0.0)
        re_specific_version = re.compile(r'<a href="([\d\.]+?)/">')

        # Rechercher la version spécifique dans le contenu HTML
        specific_versions = re_specific_version.findall(index_version)

        # Si des versions spécifiques sont trouvées
        if specific_versions:
            # Prendre la première version spécifique trouvée (ou la version la plus récente si déjà triée)
            latest_specific_version = sorted(specific_versions, key=lambda p: Version(p), reverse=True)[0]
            if control.architecture == "x64":
                # Construire le nom du fichier MSI à partir de la version spécifique
                msi_filename = f"zabbix_agent-{latest_specific_version}-windows-amd64-openssl.msi"
                version = msi_filename.split("-")[1]
                download_url = "https://cdn.zabbix.com/zabbix/binaries/stable/%s" %latest_version +  "/" + latest_specific_version + "/" + msi_filename

        

                # remove files
                for f in glob.glob("*.msi"):
                    if f != msi_filename:
                        remove_file(f)

                # Downloading latest binaries
                wget(download_url, msi_filename, proxies=proxies)

                version =get_version_from_binary(msi_filename)

                control.set_software_version(version)
                control.save_control_to_wapt()

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
24acc0a71cf3ad8a6136736b0ba85253ea5cd2715c184742bd6b37b5dfed6865 : WAPT/control
641bba1fb97f1ebf3fcb397be733446a2b45d78e73608b3f37f2d26e2cc7bafc : WAPT/icon.png
a340750d3ec06d0a834a1be4c2bd0c7d0eab52383b74f0d736d7c2ef3d5bf093 : luti.json
5318ce7aec80e5ec8aca9ba33a77e2429f9191b5c410cb8c67cd81988ad5b30f : setup.py
c9e8d34ef939af0877ec7056881652471538ba5b86c053972215830bb1bf5b6c : update_package.py
1dc08f9af06789aace989eee4d82a63353b4939cb7b79e4e6c22851fd060039f : zabbix_agent-7.2.5-windows-amd64-openssl.msi