File: postgresql-generator

package info (click to toggle)
postgresql-common 181%2Bdeb9u1~bpo8%2B1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-backports
  • size: 1,252 kB
  • sloc: perl: 3,090; sh: 1,107; makefile: 62
file content (33 lines) | stat: -rwxr-xr-x 802 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/sh

# This systemd generator creates dependency symlinks that make all PostgreSQL
# clusters with "auto" in their start.conf file be started/stopped/reloaded
# when postgresql.service is started/stopped/reloaded.

set -eu

gendir="$1"
wantdir="$1/postgresql.service.wants"
pgservice="/lib/systemd/system/postgresql@.service"

mkdir -p "$wantdir"

for conf in /etc/postgresql/*/*/postgresql.conf; do
	test -e "$conf" || continue
	dir="${conf%/*}"

	# evaluate start.conf
	if [ -e "$dir/start.conf" ]; then
		start=$(sed 's/#.*$//; /^[[:space:]]*$/d; s/^\s*//; s/\s*$//' "$dir/start.conf")
	else
		start=auto
	fi
	[ "$start" = "auto" ] || continue

	verdir="${dir%/*}"
	version="${verdir##*/}"
	cluster="${dir##*/}"
	ln -s "$pgservice" "$wantdir/postgresql@$version-$cluster.service"
done

exit 0