aboutsummaryrefslogtreecommitdiffstats
path: root/community/repmgr
diff options
context:
space:
mode:
authorJakub Jirutka <jakub@jirutka.cz>2017-09-20 02:30:24 +0200
committerJakub Jirutka <jakub@jirutka.cz>2017-09-20 02:30:53 +0200
commit07624af11c2ad2c6da1901025ac24e48a751c169 (patch)
tree9041d1c8ba54491c466b52ab0aab916ea5fce356 /community/repmgr
parent6331c4ac4c98464f6f1c8c9dd27967e4966ffd13 (diff)
downloadaports-07624af11c2ad2c6da1901025ac24e48a751c169.tar.bz2
aports-07624af11c2ad2c6da1901025ac24e48a751c169.tar.xz
community/repmgr: move from testing
Diffstat (limited to 'community/repmgr')
-rw-r--r--community/repmgr/APKBUILD57
-rw-r--r--community/repmgr/repmgr.conf.patch38
-rw-r--r--community/repmgr/repmgrd.initd12
3 files changed, 107 insertions, 0 deletions
diff --git a/community/repmgr/APKBUILD b/community/repmgr/APKBUILD
new file mode 100644
index 0000000000..b346d89a6c
--- /dev/null
+++ b/community/repmgr/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
+pkgname=repmgr
+pkgver=3.3.2
+pkgrel=2
+pkgdesc="Replication Manager for PostgreSQL"
+url="http://www.repmgr.org/"
+arch="all"
+license="GPL-3"
+depends="postgresql-client"
+makedepends="postgresql-dev"
+pkgusers="postgres"
+subpackages="$pkgname-doc $pkgname-daemon"
+source="$pkgname-$pkgver.tar.gz::https://github.com/2ndQuadrant/$pkgname/archive/v$pkgver.tar.gz
+ repmgr.conf.patch
+ repmgrd.initd"
+builddir="$srcdir/$pkgname-$pkgver"
+options="!checkroot"
+
+build() {
+ cd "$builddir"
+ make USE_PGXS=1
+}
+
+check() {
+ cd "$builddir"
+ ./repmgr --version
+ ./repmgrd --version
+}
+
+package() {
+ cd "$builddir"
+
+ make USE_PGXS=1 DESTDIR="$pkgdir" install
+
+ install -D -m 640 -o postgres -g postgres \
+ repmgr.conf.sample "$pkgdir"/etc/repmgr.conf
+
+ cd "$pkgdir"
+
+ mkdir -p usr/share/doc/$pkgname
+ cp "$builddir"/*.md "$builddir"/docs/*.md usr/share/doc/$pkgname/
+}
+
+daemon() {
+ pkgdesc="A management and monitoring daemon for PostgreSQL Replication Manager"
+ depends="$pkgname"
+
+ mkdir -p "$subpkgdir"/usr/bin
+ mv "$pkgdir"/usr/bin/repmgrd "$subpkgdir"/usr/bin/
+
+ install -D -m 755 "$srcdir"/repmgrd.initd "$subpkgdir"/etc/init.d/repmgrd
+}
+
+sha512sums="98fba8fc0d9074e496c66762dbec45734fe279f39c9c51adb3e66dca929ac37f66a609789c8c658545856fd81f5afc5b35f6b5e389e52bce8c04ce8c52acd8dd repmgr-3.3.2.tar.gz
+235a17d54ccce9e23b59919c0406fc3618f722e4f7559af6102c561668319a47beca7b70a9564432cb45bbbee091de9fc748935e7c771f1c84cfd40ab6e401a7 repmgr.conf.patch
+4ea90fc4b07898235eb3fd441a9f9857d2309e8c124e8e274ddcb44750db7aa2f59f03ac284ecba9150c1e17a8ae173cc5f493abfdc2b66cac3444802379c6e0 repmgrd.initd"
diff --git a/community/repmgr/repmgr.conf.patch b/community/repmgr/repmgr.conf.patch
new file mode 100644
index 0000000000..ec0eff0f83
--- /dev/null
+++ b/community/repmgr/repmgr.conf.patch
@@ -0,0 +1,38 @@
+--- a/repmgr.conf.sample
++++ b/repmgr.conf.sample
+@@ -78,7 +78,7 @@
+
+ # stderr can be redirected to an arbitrary file:
+ #
+-#logfile='/var/log/repmgr/repmgr.log'
++logfile='/var/log/postgresql/repmgr.log'
+
+ # event notifications can be passed to an arbitrary external program
+ # together with the following parameters:
+@@ -121,19 +121,17 @@
+ # If you use sudo, the user repmgr runs as (usually 'postgres') must have
+ # passwordless sudo access to execute the command
+ #
+-# For example, to use systemd, you may use the following configuration:
++# For example, to use OpenRC, you may use the following configuration:
+ #
+ # # this is required when running sudo over ssh without -t:
+ # Defaults:postgres !requiretty
+-# postgres ALL = NOPASSWD: /usr/bin/systemctl stop postgresql-9.5, \
+-# /usr/bin/systemctl start postgresql-9.5, \
+-# /usr/bin/systemctl restart postgresql-9.5
++# postgres ALL = NOPASSWD: /etc/init.d/postgresql
+ #
+-# service_start_command = systemctl start postgresql-9.5
+-# service_stop_command = systemctl stop postgresql-9.5
+-# service_restart_command = systemctl restart postgresql-9.5
+-# service_reload_command = pg_ctlcluster 9.5 main reload
+-# service_promote_command = pg_ctlcluster 9.5 main promote
++service_start_command = /etc/init.d/postgresql start
++service_stop_command = /etc/init.d/postgresql stop
++service_restart_command = /etc/init.d/postgresql restart
++# service_reload_command = pg_ctl reload
++# service_promote_command = pg_ctl promote
+
+ # external command options
+
diff --git a/community/repmgr/repmgrd.initd b/community/repmgr/repmgrd.initd
new file mode 100644
index 0000000000..46ed23f750
--- /dev/null
+++ b/community/repmgr/repmgrd.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+
+command="/usr/bin/repmgrd"
+command_background="yes"
+
+pidfile="/run/$RC_SVCNAME.pid"
+start_stop_daemon_args="--user ${user:-postgres}"
+
+depend() {
+ need postgresql
+ use net logger
+}