From d1fb9915d263873b110aac0182a4973e84338e15 Mon Sep 17 00:00:00 2001 From: nd <git@notandy.de> Date: Sat, 4 Dec 2021 00:02:57 +0100 Subject: [PATCH] add debian packaging stuff --- .gitlab-ci.yml | 4 ++-- debian/control | 14 ++++++++++++++ debian/install | 2 ++ debian/postinst | 26 ++++++++++++++++++++++++++ debian/postrm | 18 ++++++++++++++++++ debian/rules | 3 +++ prometheus-hcloud-exporter@.service | 14 ++++++++++++++ 7 files changed, 79 insertions(+), 2 deletions(-) create mode 100644 debian/control create mode 100644 debian/install create mode 100755 debian/postinst create mode 100755 debian/postrm create mode 100755 debian/rules create mode 100644 prometheus-hcloud-exporter@.service diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1461068..6edebcc 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,8 +18,8 @@ autoupdate: extends: .build script: - wget "https://github.com/${UPSTREAM_GITHUB_PATH}/releases/download/${UPSTREAM_VERSION}/hcloud_exporter-${UPSTREAM_VERSION#v}-linux-amd64" - - mv hcloud_exporter-* hcloud_exporter + - mv hcloud_exporter-* prometheus-hcloud-exporter artifacts: paths: - - hcloud_exporter + - prometheus-hcloud-exporter diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..8e3221e --- /dev/null +++ b/debian/control @@ -0,0 +1,14 @@ +Source: prometheus-hcloud-exporter +Section: go +Priority: optional +Maintainer: CCCV <it@cccv.de> +Build-Depends: + debhelper-compat (= 12), +Standards-Version: 4.5.0 +Homepage: https://git.cccv.de/infra/packages/prometheus-hcloud-exporter.git +Vcs-Git: https://git.cccv.de/infra/packages/prometheus-hcloud-exporter.git + +Package: prometheus-hcloud-exporter +Architecture: amd64 +Depends: systemd +Description: prometheus-hcloud-exporter package diff --git a/debian/install b/debian/install new file mode 100644 index 0000000..e259c1b --- /dev/null +++ b/debian/install @@ -0,0 +1,2 @@ +prometheus-hcloud-exporter /usr/bin/ +prometheus-hcloud-exporter@.service /lib/systemd/system/ diff --git a/debian/postinst b/debian/postinst new file mode 100755 index 0000000..f905732 --- /dev/null +++ b/debian/postinst @@ -0,0 +1,26 @@ +#!/bin/sh + +set -e + +case "$1" in + configure) + chown root:root /etc/prometheus-hcloud-exporter + chmod 0750 /etc/prometheus-hcloud-exporter + + systemctl daemon-reload + systemctl restart 'prometheus-hcloud-exporter@*' + + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/debian/postrm b/debian/postrm new file mode 100755 index 0000000..d8c6d81 --- /dev/null +++ b/debian/postrm @@ -0,0 +1,18 @@ +#!/bin/sh + +set -e + +case "$1" in + purge) + rm -rf /etc/prometheus-hcloud-exporter + ;; + remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + ;; + *) + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 +esac + +#DEBHELPER# + +exit 0 diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..cbe925d --- /dev/null +++ b/debian/rules @@ -0,0 +1,3 @@ +#!/usr/bin/make -f +%: + dh $@ diff --git a/prometheus-hcloud-exporter@.service b/prometheus-hcloud-exporter@.service new file mode 100644 index 0000000..96c4125 --- /dev/null +++ b/prometheus-hcloud-exporter@.service @@ -0,0 +1,14 @@ +[Unit] +Description=Prometheus exporter for hetzner cloud metrics + +[Service] +Restart=always +DynamicUser=yes +EnvironmentFile=/etc/prometheus-hcloud-exporter/%i.env +ExecStart=/usr/bin/prometheus-hcloud-exporter $ARGS +ExecReload=/bin/kill -HUP $MAINPID +TimeoutStopSec=20s +SendSIGKILL=no + +[Install] +WantedBy=multi-user.target -- GitLab