summaryrefslogtreecommitdiff
path: root/extra/postgresql/postgresql.install
blob: 7b73f6fa95466eb48447b6a247070711735ea560 (plain)
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
post_install() {
  if [ ! -d '/var/lib/postgres' ]; then
    mkdir -p '/var/lib/postgres'
  fi
  if ! getent group postgres >/dev/null; then
    groupadd -g 88 postgres
  fi
  if ! getent passwd postgres >/dev/null; then
    useradd -c 'PostgreSQL user' -u 88 -g postgres -d '/var/lib/postgres' -s /bin/bash postgres
    passwd -l postgres >/dev/null
  fi
}

post_upgrade() {
  post_install $1
  # FS#23858, fix postgres user shell issue
  postgres_shell=$(getent passwd postgres | cut -d: -f7)
  if [ "$postgres_shell" = "/sbin/nologin" ]; then
    chsh -s /bin/bash postgres
  fi
}

post_remove() {
  if getent passwd postgres >/dev/null; then
    userdel postgres
  fi
  if getent group postgres >/dev/null; then
    groupdel postgres
  fi
}