postgresql: add systemd service file

[Thomas: indent using tabs.]

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Peter Seiderer 2014-05-20 23:16:51 +02:00 committed by Thomas Petazzoni
parent e5d715dda5
commit 828d7b2f0d
2 changed files with 32 additions and 0 deletions

View file

@ -69,4 +69,12 @@ define POSTGRESQL_INSTALL_INIT_SYSV
$(TARGET_DIR)/etc/init.d/S50postgresql
endef
define POSTGRESQL_INSTALL_INIT_SYSTEMD
$(INSTALL) -D -m 644 package/postgresql/postgresql.service \
$(TARGET_DIR)/etc/systemd/system/postgresql.service
mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
ln -fs ../postgresql.service \
$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/postgresql.service
endef
$(eval $(autotools-package))

View file

@ -0,0 +1,24 @@
[Unit]
Description=PostgreSQL database server
After=network.target
[Service]
Type=forking
# start timeout disabled because initdb may run a little
# longer (eg. 5 minutes on RaspberryPi)
TimeoutStartSec=0
User=postgres
Group=postgres
SyslogIdentifier=postgres
PIDFile=/var/lib/pgsql/postmaster.pid
ExecStartPre=/bin/sh -c "if [ ! -f /var/lib/pgsql/PG_VERSION ]; then /usr/bin/pg_ctl initdb -D /var/lib/pgsql; fi"
ExecStart=/usr/bin/pg_ctl start -D /var/lib/pgsql -w -l /var/lib/pgsql/logfile
ExecReload=/usr/bin/pg_ctl reload -D /var/lib/pgsql
ExecStop=/usr/bin/pg_ctl stop -D /var/lib/pgsql -m fast
[Install]
WantedBy=multi-user.target