Merge pull request #19 from berry-langerak/bugfix/adding-postgresql-9.3-support

Adding PostgreSQL 9.3 support for Ubuntu 14.04
This commit is contained in:
Nitin Madhok 2014-10-06 05:35:38 -04:00
commit 8bdfb89b38
2 changed files with 63 additions and 17 deletions

View file

@ -1,32 +1,52 @@
{% from "postgres/map.jinja" import postgres with context %}
postgresql:
pkg:
- installed
install-postgresql:
pkg.installed:
- name: {{ postgres.pkg }}
service:
- running
{% if postgres.create_cluster != False %}
create-postgresql-cluster:
cmd.run:
- cwd: /
- user: root
- name: pg_createcluster {{ postgres.version }} main --start
- unless: test -f {{ postgres.conf_dir }}/postgresql.conf
- env:
LC_ALL: C.UTF-8
{% endif %}
{% if postgres.init_db != False %}
postgresql-initdb:
cmd.run:
- cwd: /
- user: root
- name: service postgresql initdb
- unless: test -f {{ postgres.conf_dir }}/postgresql.conf
- env:
LC_ALL: C.UTF-8
{% endif %}
run-postgresql:
service.running:
- enable: true
- name: {{ postgres.service }}
- require:
- pkg: {{ postgres.pkg }}
postgresql-server-dev-9.3:
pkg.installed
libpq-dev:
pkg.installed
{% if postgres.pkg_dev != False %}
install-postgres-dev-package:
pkg.installed:
- name: {{ postgres.pkg_dev }}
{% endif %}
python-dev:
{{ postgres.pkg_libpq_dev }}:
pkg.installed
{% if 'pg_hba.conf' in pillar.get('postgres', {}) %}
pg_hba.conf:
file.managed:
- name: {{ postgres.pg_hba }}
- name: {{ postgres.conf_dir }}/pg_hba.conf
- source: {{ salt['pillar.get']('postgres:pg_hba.conf', 'salt://postgres/pg_hba.conf') }}
- template: jinja
- user: postgres

View file

@ -1,18 +1,44 @@
{% set postgres = salt['grains.filter_by']({
'Debian': {
'pkg': 'postgresql-9.1',
'pkg_dev': 'postgresql-server-dev-9.1',
'pkg_libpq_dev': 'libpq-dev',
'python': 'python-pygresql',
'service': 'postgresql',
'pg_hba': '/etc/postgresql/9.1/main/pg_hba.conf',
'conf_dir': '/etc/postgresql/9.1/main',
'create_cluster': False,
'init_db': False,
'version': '9.1',
},
'RedHat': {
'pkg': 'postgresql',
'python': 'postgresql-python',
'pkg': 'postgresql-server',
'pkg_dev': 'postgresql-devel',
'pkg_libpq_dev': 'postgresql-libs',
'python': 'python-psycopg2',
'service': 'postgresql',
'conf_dir': '/var/lib/pgsql/data',
'create_cluster': False,
'init_db': True,
'version': '9.1',
},
'Arch': {
'pkg': 'postgresql',
'pkg_dev': 'postgresql-devel',
'pkg_libpq_dev': 'postgresql-libs',
'python': 'python-psycopg2',
'service': 'postgresql',
'conf_dir': '/var/lib/pgsql/data/',
'create_cluster': False,
'init_db': False,
'version': '9.1',
},
}, merge=salt['pillar.get']('postgres:lookup')) %}
}, merge=salt['grains.filter_by']({
'14.04': {
'pkg': 'postgresql',
'pkg_dev': 'postgresql-server-dev-9.3',
'conf_dir': '/etc/postgresql/9.3/main',
'service': 'postgresql',
'create_cluster': True,
'version': '9.3',
},
}, grain='lsb_distrib_release', merge=salt['pillar.get']('postgres:lookup'))) %}