view pipe.py @ 105:95fcc05c2747

ntop systemd unit
author drewp
date Mon, 18 Jul 2022 18:13:47 -0700
parents 8b8ef9d8f0fd
children 0833d1098983
line wrap: on
line source

from pyinfra.operations import apt, files, git, server, systemd


def ntop_build():
    files.directory('/opt/ntop')

    apt.packages(packages=[
        "build-essential", "git", "bison", "flex", "libxml2-dev", "libpcap-dev", "libtool", "libtool-bin", "rrdtool",
        "librrd-dev", "autoconf", "pkg-config", "automake", "autogen", "redis-server", "wget", "libsqlite3-dev", "libhiredis-dev",
        "libmaxminddb-dev", "libcurl4-openssl-dev", "libpango1.0-dev", "libcairo2-dev", "libnetfilter-queue-dev", "zlib1g-dev",
        "libssl-dev", "libcap-dev", "libnetfilter-conntrack-dev", "libreadline-dev", "libjson-c-dev", "libldap2-dev", "rename",
        "libsnmp-dev", "libexpat1-dev", "libsnmp-dev", "libmaxminddb-dev", "libradcli-dev", "libjson-c-dev", "libzmq3-dev",
        "libmariadb-dev"
    ])
    git.repo(src='https://github.com/ntop/nDPI.git', dest='/opt/ntop/nDPI', branch='4.4-stable')
    git.repo(src='https://github.com/ntop/ntopng.git', dest='/opt/ntop/ntopng', branch='5.4-stable')

    server.shell('cd /opt/ntop/nDPI; ./autogen.sh; ./configure; make -j 6')
    server.shell('cd /opt/ntop/ntopng; ./autogen.sh; ./configure; make -j 6')

def ntop_run():

    files.template(src="templates/pipe/ntop.service.j2", dest="/etc/systemd/system/ntop.service")
    systemd.service(service='ntop.service', daemon_reload=True, enabled=True, running=True, restarted=True)


# ntop_build()
ntop_run()