From 6d55d84f512f82d414ae671f67b19abb57207f2c Mon Sep 17 00:00:00 2001 From: Kameron Kenny <1267885+kkenny@users.noreply.github.com> Date: Wed, 5 Jun 2024 18:29:54 -0400 Subject: [PATCH] unpoller --- Jenkinsfile | 40 ++++++++++++++++++++++++++++++++++++++ docker-compose.env.example | 20 +++++++++++++++++++ docker-compose.yml | 29 +++++++++++++++++++++++++++ 3 files changed, 89 insertions(+) create mode 100644 Jenkinsfile create mode 100644 docker-compose.env.example create mode 100644 docker-compose.yml diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..3572a9e --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,40 @@ +pipeline { + agent { + label 'pi501.in.thelinuxpro.net' + } + + stages { + stage("verify tooling") { + steps { + sh ''' + docker version + docker info + docker compose version + ''' + } + } + + stage('Create contexts') { + steps { + sh 'docker context ls | grep pi502 || docker context create pi502 --docker "host=ssh://pi502.in.thelinuxpro.net"' + } + } + + stage('Start container') { + steps { + script { + def status_s = sh(returnStatus: true, script: 'grep $(docker --context pi502 compose ps | tail -n1 | awk \'{ print $2 }\') docker-compose.yml') + + if (status_s != 0) { + sh 'docker --context pi502 compose up -d' + sh 'docker --context pi502 compose ps' + } else { + echo 'skip' + } + } + } + } + + } +} + diff --git a/docker-compose.env.example b/docker-compose.env.example new file mode 100644 index 0000000..7b54c47 --- /dev/null +++ b/docker-compose.env.example @@ -0,0 +1,20 @@ +#influxdb +INFLUXDB_HTTP_AUTH_ENABLED=true +INFLUXDB_ADMIN_USER=unpoller +INFLUXDB_ADMIN_PASSWORD=CHANGEME +INFLUXDB_DB=unpoller +INFLUXDB_ORG=unpoller +INFLUXDB_BUCKET=unpoller +INFLUXDB_ADMIN_TOKEN=unpollersecret + +#grafana +GRAFANA_USERNAME=admin +GRAFANA_PASSWORD=grafanaadmin + +#unifi-poller +POLLER_TAG=latest +POLLER_DEBUG=false +POLLER_SAVE_DPI=false +UNIFI_USER=unpoller +UNIFI_PASS=set_this_on_your_controller +UNIFI_URL=https://127.0.0.1:8443 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..542affe --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,29 @@ +networks: + infra_dev_net: + external: true + +services: + unpoller: + image: ghcr.io/unpoller/unpoller:latest + restart: unless-stopped + ports: + - '9130:9130' + networks: + infra_dev_net: + ipv4_address: 10.99.23.33 + container_name: unpoller + environment: + UP_INFLUXDB_DISABLE="true" + UP_POLLER_DEBUG="false" + UP_UNIFI_DYNAMIC="false" + UP_PROMETHEUS_HTTP_LISTEN=0.0.0.0:9130 + UP_PROMETHEUS_NAMESPACE=unpoller + UP_UNIFI_CONTROLLER_0_PASS=imApa$$w0rdforunpoller + UP_UNIFI_CONTROLLER_0_SAVE_ALARMS="true" + UP_UNIFI_CONTROLLER_0_SAVE_ANOMALIES="true" + UP_UNIFI_CONTROLLER_0_SAVE_DPI="true" + UP_UNIFI_CONTROLLER_0_SAVE_EVENTS="true" + UP_UNIFI_CONTROLLER_0_SAVE_IDS="true" + UP_UNIFI_CONTROLLER_0_SAVE_SITES="true" + UP_UNIFI_CONTROLLER_0_URL=https://unifi.in.thelinuxpro.net:443 + UP_UNIFI_CONTROLLER_0_USER=unpoller