From 4b7cc065d2fcf520159ad7941536b9c5bd6fb07f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20H=C3=BCsers?= Date: Sun, 24 Jan 2021 20:55:39 +0100 Subject: [PATCH] Update systemd service and add EnvironmentFile --- .SRCINFO | 8 +++-- .gitignore | 5 --- PKGBUILD | 43 +++++++++++++++----------- prometheus-postgresql-exporter.conf | 2 ++ prometheus-postgresql-exporter.service | 20 ++++++++++-- 5 files changed, 50 insertions(+), 28 deletions(-) delete mode 100644 .gitignore create mode 100644 prometheus-postgresql-exporter.conf diff --git a/.SRCINFO b/.SRCINFO index 2d06c09..c47dfd3 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,17 +1,19 @@ pkgbase = prometheus-postgresql-exporter pkgdesc = Prometheus exporter for PostrgreSQL pkgver = 0.8.0 - pkgrel = 1 + pkgrel = 2 url = https://github.com/wrouesnel/postgres_exporter arch = x86_64 - arch = i686 license = Apache makedepends = git makedepends = go + backup = etc/conf.d/prometheus-postgresql-exporter source = https://github.com/wrouesnel/postgres_exporter/archive/v0.8.0.tar.gz source = prometheus-postgresql-exporter.service + source = prometheus-postgresql-exporter.conf sha256sums = 27877c9b3aa751c7c1265f39986218f6a2c2b66a126cf348c6cc2f20f5201b02 - sha256sums = cda225c236df0e2a6d71c17a5390a92ed5cc7f71b8ca5843590c59fa02cdb135 + sha256sums = 5eac41333fb12db676fed18c02156cfdefee957154241b4c724718fd40d23212 + sha256sums = 5436ad34fbcd6faab69da8675631f3eb5b89d964682eb23164bf4bb816ad1897 pkgname = prometheus-postgresql-exporter diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 556ff7e..0000000 --- a/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -* -!PKGBUILD -!.SRCINFO -!.gitignore -!prometheus-postgresql-exporter.service diff --git a/PKGBUILD b/PKGBUILD index 483e86d..640133f 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,41 +1,48 @@ -# Maintainer: Nils Czernia +# Maintainer: Manuel Hüsers +# Contributor: Nils Czernia pkgname=prometheus-postgresql-exporter pkgver=0.8.0 -pkgrel=1 +pkgrel=2 pkgdesc="Prometheus exporter for PostrgreSQL" -arch=('x86_64' 'i686') +arch=('x86_64') url="https://github.com/wrouesnel/postgres_exporter" license=('Apache') makedepends=('git' 'go') +backup=('etc/conf.d/prometheus-postgresql-exporter') source=("https://github.com/wrouesnel/postgres_exporter/archive/v${pkgver}.tar.gz" - "prometheus-postgresql-exporter.service") + "prometheus-postgresql-exporter.service" + "prometheus-postgresql-exporter.conf") sha256sums=('27877c9b3aa751c7c1265f39986218f6a2c2b66a126cf348c6cc2f20f5201b02' - 'cda225c236df0e2a6d71c17a5390a92ed5cc7f71b8ca5843590c59fa02cdb135') + '5eac41333fb12db676fed18c02156cfdefee957154241b4c724718fd40d23212' + '5436ad34fbcd6faab69da8675631f3eb5b89d964682eb23164bf4bb816ad1897') prepare() { - cd "${srcdir}/postgres_exporter-${pkgver}" + cd "postgres_exporter-${pkgver}" - export GOPATH="${srcdir}/gopath" - mkdir -p "${GOPATH}/src/github.com/wrouesnel" - ln -snf "${srcdir}/postgres_exporter-${pkgver}" "${GOPATH}/src/github.com/wrouesnel/postgres_exporter" + export GOPATH="${srcdir}/gopath" + mkdir -p "${GOPATH}/src/github.com/wrouesnel" + ln -snf "${srcdir}/postgres_exporter-${pkgver}" "${GOPATH}/src/github.com/wrouesnel/postgres_exporter" } build() { - export GOPATH="${srcdir}/gopath" - cd "${GOPATH}/src/github.com/wrouesnel/postgres_exporter" - go run mage.go binary + export GOPATH="${srcdir}/gopath" + cd "${GOPATH}/src/github.com/wrouesnel/postgres_exporter" + go run mage.go binary } check() { - export GOPATH="${srcdir}/gopath" - cd "${GOPATH}/src/github.com/wrouesnel/postgres_exporter" - go run mage.go test + export GOPATH="${srcdir}/gopath" + cd "${GOPATH}/src/github.com/wrouesnel/postgres_exporter" + go run mage.go test } package() { - cd "${srcdir}/postgres_exporter-${pkgver}" + install -Dm644 "prometheus-postgresql-exporter.service" \ + "${pkgdir}/usr/lib/systemd/system/prometheus-postgresql-exporter.service" + install -Dm644 "prometheus-postgresql-exporter.conf" \ + "${pkgdir}/etc/conf.d/prometheus-postgresql-exporter" - install -Dm755 "postgres_exporter" "${pkgdir}/usr/bin/prometheus_postgresql_exporter" - install -Dm755 "${srcdir}/prometheus-postgresql-exporter.service" "${pkgdir}/usr/lib/systemd/system/prometheus-postgresql-exporter.service" + cd "postgres_exporter-${pkgver}" + install -Dm755 "postgres_exporter" "${pkgdir}/usr/bin/prometheus_postgresql_exporter" } diff --git a/prometheus-postgresql-exporter.conf b/prometheus-postgresql-exporter.conf new file mode 100644 index 0000000..3a15630 --- /dev/null +++ b/prometheus-postgresql-exporter.conf @@ -0,0 +1,2 @@ +DATA_SOURCE_NAME="" +POSTGRES_EXPORTER_ARGS="" \ No newline at end of file diff --git a/prometheus-postgresql-exporter.service b/prometheus-postgresql-exporter.service index 6f7f07c..f519e72 100644 --- a/prometheus-postgresql-exporter.service +++ b/prometheus-postgresql-exporter.service @@ -2,8 +2,24 @@ Description=Prometheus exporter for PostgreSQL After=network.target -[Service] -ExecStart=/usr/bin/prometheus_postgresql_exporter +EnvironmentFile=-/etc/conf.d/prometheus-postgresql-exporter +ExecStart=/usr/bin/prometheus_postgresql_exporter $POSTGRES_EXPORTER_ARGS +Restart=on-failure + +DynamicUser=true +ProtectKernelModules=true +ProtectKernelTunables=true +LockPersonality=true +ProtectHostname=true +ProtectHome=true +ProtectClock=true +ProtectControlGroups=true +ProtectKernelLogs=true +PrivateDevices=true +PrivateUsers=true +RestrictRealtime=true +CapabilityBoundingSet= +MemoryDenyWriteExecute=true [Install] WantedBy=multi-user.target