diff --git a/postgres/defaults.yaml b/postgres/defaults.yaml index 703a38e..7dd6013 100644 --- a/postgres/defaults.yaml +++ b/postgres/defaults.yaml @@ -8,8 +8,6 @@ postgres: service: postgresql conf_dir: /var/lib/pgsql/data data_dir: /var/lib/pgsql/data - create_cluster: False - init_db: False version: 9.1 use_upstream_repo: False users: {} @@ -19,9 +17,10 @@ postgres: postgresconf_backup: True postgresconf: "" pg_hba.conf: salt://postgres/pg_hba.conf - commands: - initdb: service postgresql initdb + initdb: True initdb_user: root initdb_args: --data-checksum + commands: + initdb: service postgresql initdb user: postgres group: postgres diff --git a/postgres/init.sls b/postgres/init.sls index b0d1347..6166576 100644 --- a/postgres/init.sls +++ b/postgres/init.sls @@ -28,34 +28,18 @@ postgresql-installed: # make sure the data directory and contents have been initialized postgresql-cluster-prepared: cmd.run: - - cwd: / -{% if postgres.create_cluster != False %} - - user: root - - name: pg_createcluster {{ postgres.version }} main -{% else %} - - name: test -f {{ postgres.conf_dir }}/environment -{% endif %} - - unless: - - test -f {{ postgres.conf_dir }}/environment - - require: - - pkg: postgresql-installed - - env: - LC_ALL: C.UTF-8 - -postgresql-db-prepared: - cmd.run: -{% if postgres.init_db != False %} - - user: {{ postgres.initdb_user }} + {% if postgres.initdb %} - name: {{ postgres.commands.initdb }} {{ postgres.initdb_args }} -D {{ postgres.data_dir }} - -{% else %} - - name: test -f {{ postgres.data_dir }}/PG_VERSION -{% endif %} + {% elif grains.os_family == 'Debian' %} + - name: pg_createcluster {{ postgres.version }} main + {# else: TODO #} + {% endif %} + - cwd: / + - user: {{ postgres.initdb_user }} - unless: - test -f {{ postgres.data_dir }}/PG_VERSION - require: - pkg: postgresql-installed - - cmd: postgresql-cluster-prepared - env: LC_ALL: C.UTF-8 @@ -67,7 +51,6 @@ postgresql-running: - reload: true - require: - cmd: postgresql-cluster-prepared - - cmd: postgresql-db-prepared {% if postgres.pkgs_extra %} postgresql-extra-pkgs-installed: diff --git a/postgres/osmap.yaml b/postgres/osmap.yaml index 4ffbc62..a1d47b5 100644 --- a/postgres/osmap.yaml +++ b/postgres/osmap.yaml @@ -1,8 +1,7 @@ RedHat: - init_db: True + initdb_user: postgres commands: initdb: initdb - initdb_user: postgres pkg: postgresql-server pkg_client: postgresql pkg_repo: pgdg94 @@ -10,7 +9,6 @@ RedHat: Arch: conf_dir: /var/lib/postgres/data data_dir: /var/lib/postgres/data - init_db: True initdb_user: postgres commands: initdb: initdb --locale en_US.UTF8 -E UTF8 -D "/var/lib/postgres/data" @@ -19,11 +17,11 @@ Arch: Debian: pkg_repo_file: /etc/apt/sources.list.d/pgdg.list pkg_libpq_dev: libpq-dev + initdb: False Suse: - init_db: True + initdb_user: postgres commands: initdb: initdb - initdb_user: postgres pkg: postgresql-server pkg_client: postgresql FreeBSD: