2016-09-19 17:22:07 +03:00
|
|
|
### Set parameters based on PostgreSQL version supplied with particular distro
|
2016-09-03 15:15:56 +03:00
|
|
|
|
2016-09-23 17:50:57 +03:00
|
|
|
{% import_yaml "postgres/repo.yaml" as repo %}
|
2016-09-20 15:44:49 +03:00
|
|
|
|
2018-05-09 17:48:09 +01:00
|
|
|
{# Generate lookup dictionary map for OS and derivative distributions
|
|
|
|
name: distro codename
|
|
|
|
version: PostgreSQL release version
|
|
|
|
codename: optional grain value if `name` does not match the one returned by `oscodename` grain
|
2016-09-19 17:22:07 +03:00
|
|
|
#}
|
|
|
|
|
2018-05-09 17:48:09 +01:00
|
|
|
{% macro debian_codename(name, version, codename=none) %}
|
|
|
|
|
2018-03-08 12:30:25 +00:00
|
|
|
{% if repo.use_upstream_repo == true %}
|
2016-09-23 17:50:57 +03:00
|
|
|
{% set version = repo.version %}
|
2018-06-06 16:02:30 +01:00
|
|
|
{% set fromrepo = repo.fromrepo|default(name ~ '-pgdg', true) %}
|
2018-04-09 14:59:49 +01:00
|
|
|
{% else %}
|
|
|
|
{% set fromrepo = name %}
|
2016-09-20 15:44:49 +03:00
|
|
|
{% endif %}
|
2018-06-18 23:46:29 +01:00
|
|
|
{% set conf_dir = '/etc/postgresql/' ~ version ~ '/main' %}
|
|
|
|
{% set data_dir = '/var/lib/postgresql/' ~ version ~ '/main' %}
|
2016-09-19 17:22:07 +03:00
|
|
|
|
|
|
|
{{ codename|default(name, true) }}:
|
|
|
|
# PostgreSQL packages are mostly downloaded from `main` repo component
|
2018-06-18 23:46:29 +01:00
|
|
|
conf_dir: {{ conf_dir }}
|
|
|
|
data_dir: {{ data_dir }}
|
2018-04-09 14:59:49 +01:00
|
|
|
fromrepo: {{ fromrepo }}
|
2016-09-20 15:44:49 +03:00
|
|
|
pkg_repo:
|
2018-06-16 01:25:30 +01:00
|
|
|
name: 'deb http://apt.postgresql.org/pub/repos/apt/ {{ name }}-pgdg main'
|
2016-09-03 15:15:56 +03:00
|
|
|
pkg: postgresql-{{ version }}
|
|
|
|
pkg_client: postgresql-client-{{ version }}
|
2016-07-08 15:34:45 -05:00
|
|
|
prepare_cluster:
|
2018-06-18 23:46:29 +01:00
|
|
|
pgcommand: pg_createcluster {{ version }} main -d
|
2016-07-08 15:34:45 -05:00
|
|
|
user: root
|
2016-09-03 15:15:56 +03:00
|
|
|
|
2016-09-05 13:49:33 +03:00
|
|
|
{% endmacro %}
|
2016-07-07 15:41:44 -04:00
|
|
|
|
2017-02-05 13:12:53 -06:00
|
|
|
|
|
|
|
{% macro fedora_codename(name, version, codename=none) %}
|
|
|
|
|
|
|
|
{# use upstream version if configured #}
|
2018-03-08 12:30:25 +00:00
|
|
|
{% if repo.use_upstream_repo == true %}
|
2017-02-05 13:12:53 -06:00
|
|
|
{% set version = repo.version %}
|
|
|
|
{% endif %}
|
|
|
|
|
|
|
|
{{ codename|default(name, true) }}:
|
|
|
|
# PostgreSQL packages are mostly downloaded from `main` repo component
|
|
|
|
pkg_repo:
|
|
|
|
baseurl: 'https://download.postgresql.org/pub/repos/yum/{{ version }}/fedora/fedora-$releasever-$basearch'
|
|
|
|
|
|
|
|
{% endmacro %}
|
|
|
|
|
2016-09-19 17:22:07 +03:00
|
|
|
## Debian GNU/Linux
|
|
|
|
{{ debian_codename('wheezy', '9.1') }}
|
|
|
|
{{ debian_codename('jessie', '9.4') }}
|
2017-06-20 23:40:46 +02:00
|
|
|
{{ debian_codename('stretch', '9.6') }}
|
2016-09-19 17:22:07 +03:00
|
|
|
|
|
|
|
# `oscodename` grain has long distro name
|
|
|
|
# if `lsb-release` package not installed
|
|
|
|
{{ debian_codename('wheezy', '9.1', 'Debian GNU/Linux 7 (wheezy)') }}
|
|
|
|
{{ debian_codename('jessie', '9.4', 'Debian GNU/Linux 8 (jessie)') }}
|
2017-06-20 23:40:46 +02:00
|
|
|
{{ debian_codename('stretch', '9.6', 'Debian GNU/Linux 9 (stretch)') }}
|
2016-09-19 17:22:07 +03:00
|
|
|
|
|
|
|
## Ubuntu
|
|
|
|
{{ debian_codename('trusty', '9.3') }}
|
|
|
|
{{ debian_codename('xenial', '9.5') }}
|
2018-06-05 16:12:08 +01:00
|
|
|
{{ debian_codename('artful', '9.6') }}
|
|
|
|
{{ debian_codename('bionic', '10') }}
|
|
|
|
{{ debian_codename('cosmic', '10') }}
|
2016-09-05 13:49:33 +03:00
|
|
|
|
2017-02-05 13:12:53 -06:00
|
|
|
## Fedora
|
|
|
|
# `oscodename` grain has long distro name
|
2018-03-28 11:16:43 +01:00
|
|
|
{{ fedora_codename('Fedora-27', '9.6', 'Fedora 27 (Twenty Seven)') }}
|
|
|
|
{{ fedora_codename('Fedora-26', '9.6', 'Fedora 26 (Twenty Six)') }}
|
2017-02-05 13:12:53 -06:00
|
|
|
|
2016-09-05 13:49:33 +03:00
|
|
|
# vim: ft=sls
|