Skip to content
Snippets Groups Projects
Unverified Commit 18d3df43 authored by Imran Iqbal's avatar Imran Iqbal Committed by GitHub
Browse files

Merge pull request #315 from myii/feat/update-all-platforms-for-postgresql-13-inc-CI

feat: update all platforms for PostgreSQL 13 (inc. `use_upstream_repo` in CI)
parents 1fa7c66b a1837c24
No related branches found
No related tags found
No related merge requests found
Showing
with 405 additions and 60 deletions
...@@ -15,8 +15,11 @@ jobs: ...@@ -15,8 +15,11 @@ jobs:
matrix: matrix:
instance: instance:
- default-freebsd-130-master-py3 - default-freebsd-130-master-py3
# - freebsd-130-master-py3
- default-freebsd-122-master-py3 - default-freebsd-122-master-py3
# - freebsd-122-master-py3
- default-freebsd-114-master-py3 - default-freebsd-114-master-py3
# - freebsd-114-master-py3
# - default-freebsd-130-3002-6-py3 # - default-freebsd-130-3002-6-py3
# - default-freebsd-122-3002-6-py3 # - default-freebsd-122-3002-6-py3
# - default-freebsd-114-3002-6-py3 # - default-freebsd-114-3002-6-py3
......
...@@ -102,7 +102,7 @@ rubocop: ...@@ -102,7 +102,7 @@ rubocop:
############################################################################### ###############################################################################
# Define `test` template # Define `test` template
############################################################################### ###############################################################################
.test_instance: .test_instance: &test_instance
stage: *stage_test stage: *stage_test
image: *image_dindruby image: *image_dindruby
services: *services_docker_dind services: *services_docker_dind
...@@ -117,6 +117,13 @@ rubocop: ...@@ -117,6 +117,13 @@ rubocop:
# Alternative value to consider: `${CI_JOB_NAME}` # Alternative value to consider: `${CI_JOB_NAME}`
- 'bin/kitchen verify "${DOCKER_ENV_CI_JOB_NAME}"' - 'bin/kitchen verify "${DOCKER_ENV_CI_JOB_NAME}"'
###############################################################################
# Define `test` template (`allow_failure: true`)
###############################################################################
.test_instance_failure_permitted:
<<: *test_instance
allow_failure: true
############################################################################### ###############################################################################
# `test` stage: each instance below uses the `test` template above # `test` stage: each instance below uses the `test` template above
############################################################################### ###############################################################################
...@@ -135,26 +142,62 @@ rubocop: ...@@ -135,26 +142,62 @@ rubocop:
# default-oraclelinux-7-tiamat-py3: {extends: '.test_instance'} # default-oraclelinux-7-tiamat-py3: {extends: '.test_instance'}
# default-almalinux-8-tiamat-py3: {extends: '.test_instance'} # default-almalinux-8-tiamat-py3: {extends: '.test_instance'}
# default-rockylinux-8-tiamat-py3: {extends: '.test_instance'} # default-rockylinux-8-tiamat-py3: {extends: '.test_instance'}
default-debian-11-master-py3: {extends: '.test_instance'} # default-debian-11-master-py3: {extends: '.test_instance'}
default-debian-10-master-py3: {extends: '.test_instance'} # repo-debian-11-master-py3: {extends: '.test_instance'}
default-debian-9-master-py3: {extends: '.test_instance'} debian-11-master-py3: {extends: '.test_instance'}
default-ubuntu-2004-master-py3: {extends: '.test_instance'} # default-debian-10-master-py3: {extends: '.test_instance'}
default-ubuntu-1804-master-py3: {extends: '.test_instance'} # repo-debian-10-master-py3: {extends: '.test_instance'}
default-centos-8-master-py3: {extends: '.test_instance'} debian-10-master-py3: {extends: '.test_instance'}
default-centos-7-master-py3: {extends: '.test_instance'} # default-debian-9-master-py3: {extends: '.test_instance'}
default-fedora-34-master-py3: {extends: '.test_instance'} # repo-debian-9-master-py3: {extends: '.test_instance'}
default-fedora-33-master-py3: {extends: '.test_instance'} debian-9-master-py3: {extends: '.test_instance'}
default-opensuse-leap-153-master-py3: {extends: '.test_instance'} # default-ubuntu-2004-master-py3: {extends: '.test_instance'}
default-opensuse-leap-152-master-py3: {extends: '.test_instance'} # repo-ubuntu-2004-master-py3: {extends: '.test_instance'}
ubuntu-2004-master-py3: {extends: '.test_instance'}
# default-ubuntu-1804-master-py3: {extends: '.test_instance'}
# repo-ubuntu-1804-master-py3: {extends: '.test_instance'}
ubuntu-1804-master-py3: {extends: '.test_instance'}
# default-centos-8-master-py3: {extends: '.test_instance'}
# repo-centos-8-master-py3: {extends: '.test_instance'}
centos-8-master-py3: {extends: '.test_instance'}
# default-centos-7-master-py3: {extends: '.test_instance'}
# repo-centos-7-master-py3: {extends: '.test_instance'}
centos-7-master-py3: {extends: '.test_instance'}
# default-fedora-34-master-py3: {extends: '.test_instance'}
# repo-fedora-34-master-py3: {extends: '.test_instance'}
fedora-34-master-py3: {extends: '.test_instance'}
# default-fedora-33-master-py3: {extends: '.test_instance'}
# repo-fedora-33-master-py3: {extends: '.test_instance'}
fedora-33-master-py3: {extends: '.test_instance'}
# default-opensuse-leap-153-master-py3: {extends: '.test_instance'}
# repo-opensuse-leap-153-master-py3: {extends: '.test_instance'}
opensuse-leap-153-master-py3: {extends: '.test_instance'}
# default-opensuse-leap-152-master-py3: {extends: '.test_instance'}
# repo-opensuse-leap-152-master-py3: {extends: '.test_instance_failure_permitted'}
opensuse-leap-152-master-py3: {extends: '.test_instance_failure_permitted'}
default-opensuse-tmbl-latest-master-py3: {extends: '.test_instance'} default-opensuse-tmbl-latest-master-py3: {extends: '.test_instance'}
default-amazonlinux-2-master-py3: {extends: '.test_instance'} # opensuse-tmbl-latest-master-py3: {extends: '.test_instance'}
default-oraclelinux-8-master-py3: {extends: '.test_instance'} # default-amazonlinux-2-master-py3: {extends: '.test_instance'}
default-oraclelinux-7-master-py3: {extends: '.test_instance'} # repo-amazonlinux-2-master-py3: {extends: '.test_instance'}
amazonlinux-2-master-py3: {extends: '.test_instance'}
# default-oraclelinux-8-master-py3: {extends: '.test_instance'}
# repo-oraclelinux-8-master-py3: {extends: '.test_instance'}
oraclelinux-8-master-py3: {extends: '.test_instance'}
# default-oraclelinux-7-master-py3: {extends: '.test_instance'}
# repo-oraclelinux-7-master-py3: {extends: '.test_instance'}
oraclelinux-7-master-py3: {extends: '.test_instance'}
default-arch-base-latest-master-py3: {extends: '.test_instance'} default-arch-base-latest-master-py3: {extends: '.test_instance'}
# arch-base-latest-master-py3: {extends: '.test_instance'}
# default-gentoo-stage3-latest-master-py3: {extends: '.test_instance'} # default-gentoo-stage3-latest-master-py3: {extends: '.test_instance'}
# gentoo-stage3-latest-master-py3: {extends: '.test_instance'}
# default-gentoo-stage3-systemd-master-py3: {extends: '.test_instance'} # default-gentoo-stage3-systemd-master-py3: {extends: '.test_instance'}
default-almalinux-8-master-py3: {extends: '.test_instance'} # gentoo-stage3-systemd-master-py3: {extends: '.test_instance'}
default-rockylinux-8-master-py3: {extends: '.test_instance'} # default-almalinux-8-master-py3: {extends: '.test_instance'}
# repo-almalinux-8-master-py3: {extends: '.test_instance'}
almalinux-8-master-py3: {extends: '.test_instance'}
# default-rockylinux-8-master-py3: {extends: '.test_instance'}
# repo-rockylinux-8-master-py3: {extends: '.test_instance'}
rockylinux-8-master-py3: {extends: '.test_instance'}
# default-debian-11-3003-1-py3: {extends: '.test_instance'} # default-debian-11-3003-1-py3: {extends: '.test_instance'}
# default-debian-10-3003-1-py3: {extends: '.test_instance'} # default-debian-10-3003-1-py3: {extends: '.test_instance'}
# default-debian-9-3003-1-py3: {extends: '.test_instance'} # default-debian-9-3003-1-py3: {extends: '.test_instance'}
......
...@@ -95,26 +95,62 @@ jobs: ...@@ -95,26 +95,62 @@ jobs:
# - env: INSTANCE=default-oraclelinux-7-tiamat-py3 # - env: INSTANCE=default-oraclelinux-7-tiamat-py3
# - env: INSTANCE=default-almalinux-8-tiamat-py3 # - env: INSTANCE=default-almalinux-8-tiamat-py3
# - env: INSTANCE=default-rockylinux-8-tiamat-py3 # - env: INSTANCE=default-rockylinux-8-tiamat-py3
- env: INSTANCE=default-debian-11-master-py3 # - env: INSTANCE=default-debian-11-master-py3
- env: INSTANCE=default-debian-10-master-py3 # - env: INSTANCE=repo-debian-11-master-py3
- env: INSTANCE=default-debian-9-master-py3 - env: INSTANCE=debian-11-master-py3
- env: INSTANCE=default-ubuntu-2004-master-py3 # - env: INSTANCE=default-debian-10-master-py3
- env: INSTANCE=default-ubuntu-1804-master-py3 # - env: INSTANCE=repo-debian-10-master-py3
- env: INSTANCE=default-centos-8-master-py3 - env: INSTANCE=debian-10-master-py3
- env: INSTANCE=default-centos-7-master-py3 # - env: INSTANCE=default-debian-9-master-py3
- env: INSTANCE=default-fedora-34-master-py3 # - env: INSTANCE=repo-debian-9-master-py3
- env: INSTANCE=default-fedora-33-master-py3 - env: INSTANCE=debian-9-master-py3
- env: INSTANCE=default-opensuse-leap-153-master-py3 # - env: INSTANCE=default-ubuntu-2004-master-py3
- env: INSTANCE=default-opensuse-leap-152-master-py3 # - env: INSTANCE=repo-ubuntu-2004-master-py3
- env: INSTANCE=ubuntu-2004-master-py3
# - env: INSTANCE=default-ubuntu-1804-master-py3
# - env: INSTANCE=repo-ubuntu-1804-master-py3
- env: INSTANCE=ubuntu-1804-master-py3
# - env: INSTANCE=default-centos-8-master-py3
# - env: INSTANCE=repo-centos-8-master-py3
- env: INSTANCE=centos-8-master-py3
# - env: INSTANCE=default-centos-7-master-py3
# - env: INSTANCE=repo-centos-7-master-py3
- env: INSTANCE=centos-7-master-py3
# - env: INSTANCE=default-fedora-34-master-py3
# - env: INSTANCE=repo-fedora-34-master-py3
- env: INSTANCE=fedora-34-master-py3
# - env: INSTANCE=default-fedora-33-master-py3
# - env: INSTANCE=repo-fedora-33-master-py3
- env: INSTANCE=fedora-33-master-py3
# - env: INSTANCE=default-opensuse-leap-153-master-py3
# - env: INSTANCE=repo-opensuse-leap-153-master-py3
- env: INSTANCE=opensuse-leap-153-master-py3
# - env: INSTANCE=default-opensuse-leap-152-master-py3
# - env: INSTANCE=repo-opensuse-leap-152-master-py3
- env: INSTANCE=opensuse-leap-152-master-py3
- env: INSTANCE=default-opensuse-tmbl-latest-master-py3 - env: INSTANCE=default-opensuse-tmbl-latest-master-py3
- env: INSTANCE=default-amazonlinux-2-master-py3 # - env: INSTANCE=opensuse-tmbl-latest-master-py3
- env: INSTANCE=default-oraclelinux-8-master-py3 # - env: INSTANCE=default-amazonlinux-2-master-py3
- env: INSTANCE=default-oraclelinux-7-master-py3 # - env: INSTANCE=repo-amazonlinux-2-master-py3
- env: INSTANCE=amazonlinux-2-master-py3
# - env: INSTANCE=default-oraclelinux-8-master-py3
# - env: INSTANCE=repo-oraclelinux-8-master-py3
- env: INSTANCE=oraclelinux-8-master-py3
# - env: INSTANCE=default-oraclelinux-7-master-py3
# - env: INSTANCE=repo-oraclelinux-7-master-py3
- env: INSTANCE=oraclelinux-7-master-py3
- env: INSTANCE=default-arch-base-latest-master-py3 - env: INSTANCE=default-arch-base-latest-master-py3
# - env: INSTANCE=arch-base-latest-master-py3
# - env: INSTANCE=default-gentoo-stage3-latest-master-py3 # - env: INSTANCE=default-gentoo-stage3-latest-master-py3
# - env: INSTANCE=gentoo-stage3-latest-master-py3
# - env: INSTANCE=default-gentoo-stage3-systemd-master-py3 # - env: INSTANCE=default-gentoo-stage3-systemd-master-py3
- env: INSTANCE=default-almalinux-8-master-py3 # - env: INSTANCE=gentoo-stage3-systemd-master-py3
- env: INSTANCE=default-rockylinux-8-master-py3 # - env: INSTANCE=default-almalinux-8-master-py3
# - env: INSTANCE=repo-almalinux-8-master-py3
- env: INSTANCE=almalinux-8-master-py3
# - env: INSTANCE=default-rockylinux-8-master-py3
# - env: INSTANCE=repo-rockylinux-8-master-py3
- env: INSTANCE=rockylinux-8-master-py3
# - env: INSTANCE=default-debian-11-3003-1-py3 # - env: INSTANCE=default-debian-11-3003-1-py3
# - env: INSTANCE=default-debian-10-3003-1-py3 # - env: INSTANCE=default-debian-10-3003-1-py3
# - env: INSTANCE=default-debian-9-3003-1-py3 # - env: INSTANCE=default-debian-9-3003-1-py3
......
...@@ -445,3 +445,103 @@ suites: ...@@ -445,3 +445,103 @@ suites:
verifier: verifier:
inspec_tests: inspec_tests:
- path: test/integration/default - path: test/integration/default
- name: repo
includes:
- debian-11-tiamat-py3
- debian-10-tiamat-py3
- debian-9-tiamat-py3
- ubuntu-2004-tiamat-py3
- ubuntu-1804-tiamat-py3
- centos-8-tiamat-py3
- centos-7-tiamat-py3
- amazonlinux-2-tiamat-py3
- oraclelinux-8-tiamat-py3
- oraclelinux-7-tiamat-py3
- almalinux-8-tiamat-py3
- rockylinux-8-tiamat-py3
- debian-11-master-py3
- debian-10-master-py3
- debian-9-master-py3
- ubuntu-2004-master-py3
- ubuntu-1804-master-py3
- centos-8-master-py3
- centos-7-master-py3
- fedora-34-master-py3
- fedora-33-master-py3
- opensuse-leap-153-master-py3
- opensuse-leap-152-master-py3
- amazonlinux-2-master-py3
- oraclelinux-8-master-py3
- oraclelinux-7-master-py3
- almalinux-8-master-py3
- rockylinux-8-master-py3
- debian-11-3003-1-py3
- debian-10-3003-1-py3
- debian-9-3003-1-py3
- ubuntu-2004-3003-1-py3
- ubuntu-1804-3003-1-py3
- centos-8-3003-1-py3
- centos-7-3003-1-py3
- fedora-34-3003-1-py3
- fedora-33-3003-1-py3
- opensuse-leap-153-3003-1-py3
- opensuse-leap-152-3003-1-py3
- amazonlinux-2-3003-1-py3
- oraclelinux-8-3003-1-py3
- oraclelinux-7-3003-1-py3
- debian-11-3002-6-py3
- debian-10-3002-6-py3
- debian-9-3002-6-py3
- ubuntu-2004-3002-6-py3
- ubuntu-1804-3002-6-py3
- centos-8-3002-6-py3
- centos-7-3002-6-py3
- fedora-34-3002-6-py3
- fedora-33-3002-6-py3
- amazonlinux-2-3002-6-py3
- oraclelinux-8-3002-6-py3
- oraclelinux-7-3002-6-py3
- opensuse-leap-153-3002-2-py3
- opensuse-leap-152-3002-2-py3
- debian-10-3001-7-py3
- debian-9-3001-7-py3
- ubuntu-2004-3001-7-py3
- ubuntu-1804-3001-7-py3
- centos-8-3001-7-py3
- centos-7-3001-7-py3
- fedora-34-3001-7-py3
- fedora-33-3001-7-py3
- opensuse-leap-153-3001-7-py3
- opensuse-leap-152-3001-7-py3
- amazonlinux-2-3001-7-py3
- oraclelinux-8-3001-7-py3
- oraclelinux-7-3001-7-py3
- debian-10-3000-9-py3
- debian-9-3000-9-py3
- ubuntu-1804-3000-9-py3
- centos-8-3000-9-py3
- centos-7-3000-9-py3
- opensuse-leap-153-3000-9-py3
- opensuse-leap-152-3000-9-py3
- amazonlinux-2-3000-9-py3
- oraclelinux-8-3000-9-py3
- oraclelinux-7-3000-9-py3
- ubuntu-1804-3000-9-py2
provisioner:
state_top:
base:
'*':
- postgres._mapdata
- postgres
pillars:
top.sls:
base:
'*':
- postgres
- repo
pillars_from_files:
postgres.sls: test/salt/pillar/postgres.sls
repo.sls: test/salt/pillar/repo.sls
verifier:
inspec_tests:
- path: test/integration/repo
...@@ -78,10 +78,17 @@ ...@@ -78,10 +78,17 @@
{{ debian_codename('focal', '12') }} {{ debian_codename('focal', '12') }}
## Fedora ## Fedora
# http://apt.postgresql.org/pub/repos/yum/reporpms/ # https://download.postgresql.org/pub/repos/yum/13/fedora/
# https://apps.fedoraproject.org/packages/postgresql # https://apps.fedoraproject.org/packages/postgresql
# `oscodename` grain has long distro name {{ fedora_codename('Fedora-34', '13') }}
{{ fedora_codename('Fedora-31', '11', 'Fedora 31 (Thirty One)') }} {{ fedora_codename('Fedora-33', '13') }}
{{ fedora_codename('Fedora-30', '11', 'Fedora 30 (Thirty)') }}
## Amazon
Amazon Linux 2:
pkgs_deps:
- libicu
- systemd-sysv
pkg_repo:
baseurl: 'https://download.postgresql.org/pub/repos/yum/{{ repo.version }}/redhat/rhel-7-$basearch'
# vim: ft=sls # vim: ft=sls
...@@ -63,11 +63,12 @@ RedHat: ...@@ -63,11 +63,12 @@ RedHat:
gpgkey: 'https://download.postgresql.org/pub/repos/yum/RPM-GPG-KEY-PGDG-{{ release }}' gpgkey: 'https://download.postgresql.org/pub/repos/yum/RPM-GPG-KEY-PGDG-{{ release }}'
baseurl: 'https://download.postgresql.org/pub/repos/yum/{{ repo.version }}/redhat/rhel-$releasever-$basearch' baseurl: 'https://download.postgresql.org/pub/repos/yum/{{ repo.version }}/redhat/rhel-$releasever-$basearch'
{%- if grains.get('osmajorrelease', 0) >= 7 %}
pkgs_deps: pkgs_deps:
- libicu - libicu
pkg_python: python3-psycopg2 {%- if grains.get('osmajorrelease', 0) == 7 %}
- systemd-sysv
{%- endif %} {%- endif %}
pkg_python: python3-psycopg2
{% if repo.use_upstream_repo == true %} {% if repo.use_upstream_repo == true %}
{% set data_dir = '/var/lib/pgsql/' ~ repo.version ~ '/data' %} {% set data_dir = '/var/lib/pgsql/' ~ repo.version ~ '/data' %}
......
...@@ -9,7 +9,3 @@ Fedora: ...@@ -9,7 +9,3 @@ Fedora:
baseurl: 'https://download.postgresql.org/pub/repos/yum/{{ repo.version }}/fedora/fedora-$releasever-$basearch' baseurl: 'https://download.postgresql.org/pub/repos/yum/{{ repo.version }}/fedora/fedora-$releasever-$basearch'
remove: remove:
releases: ['9.4', '9.5', '9.6', '10'] releases: ['9.4', '9.5', '9.6', '10']
Amazon:
pkg_repo:
baseurl: 'https://download.postgresql.org/pub/repos/yum/{{ repo.version }}/redhat/rhel-7-$basearch'
# frozen_string_literal: true # frozen_string_literal: true
# Overide by Platform
service_name = 'postgresql' service_name = 'postgresql'
pg_port = 5432
if (platform[:name] == 'centos') && platform[:release].start_with?('6') pg_port =
service_name = 'postgresql-9.6' case platform[:family]
elsif (platform[:family] == 'debian') || (platform[:family] == 'suse') when 'debian', 'suse'
pg_port = 5433 5433
else
5432
end end
control 'Postgres service' do control 'Postgres service' do
impact 0.5 impact 0.5
title 'should be running and enabled' title 'should be installed, enabled and running'
describe service(service_name) do describe service(service_name) do
it { should be_installed }
it { should be_enabled } it { should be_enabled }
it { should be_running } it { should be_running }
end end
......
# frozen_string_literal: true
# https://docs.chef.io/inspec/profiles/#including-all-controls-from-a-profile
# Could use `include_controls` in this scenario
# include_controls 'share'
# https://docs.chef.io/inspec/profiles/#selectively-including-controls-from-a-profile
# However, using `require_controls` for more clarity
require_controls 'share' do
control 'Postgres command'
control 'Postgres configuration'
# control 'Postgres service'
end
# InSpec Profile: `repo`
This shows the implementation of the `repo` InSpec [profile](https://github.com/inspec/inspec/blob/master/docs/profiles.md).
## Verify a profile
InSpec ships with built-in features to verify a profile structure.
```bash
$ inspec check repo
Summary
-------
Location: repo
Profile: profile
Controls: 4
Timestamp: 2019-06-24T23:09:01+00:00
Valid: true
Errors
------
Warnings
--------
```
## Execute a profile
To run all **supported** controls on a local machine use `inspec exec /path/to/profile`.
```bash
$ inspec exec repo
..
Finished in 0.0025 seconds (files took 0.12449 seconds to load)
8 examples, 0 failures
```
## Execute a specific control from a profile
To run one control from the profile use `inspec exec /path/to/profile --controls name`.
```bash
$ inspec exec repo --controls package
.
Finished in 0.0025 seconds (files took 0.12449 seconds to load)
1 examples, 0 failures
```
See an [example control here](https://github.com/inspec/inspec/blob/master/examples/profile/controls/example.rb).
# frozen_string_literal: true
service_name =
case platform[:family]
when 'redhat', 'fedora', 'suse'
case system.platform[:release]
when 'tumbleweed'
'postgresql'
else
'postgresql-13'
end
else
'postgresql'
end
pg_port =
case platform[:family]
when 'debian', 'suse'
5433
else
5432
end
control 'Postgres service' do
impact 0.5
title 'should be installed, enabled and running'
describe service(service_name) do
it { should be_installed }
it { should be_enabled }
it { should be_running }
end
describe port(pg_port) do
it { should be_listening }
end
end
# frozen_string_literal: true
# https://docs.chef.io/inspec/profiles/#including-all-controls-from-a-profile
# Could use `include_controls` in this scenario
# include_controls 'share'
# https://docs.chef.io/inspec/profiles/#selectively-including-controls-from-a-profile
# However, using `require_controls` for more clarity
require_controls 'share' do
control 'Postgres command'
control 'Postgres configuration'
# control 'Postgres service'
end
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
name: repo
title: postgres formula
maintainer: SaltStack Formulas
license: Apache-2.0
# yamllint disable-line rule:line-length
summary: Verify that the postgres formula is setup and configured correctly (when installing from the upstream repo)
depends:
- name: share
path: test/integration/share
supports:
- platform-name: debian
- platform-name: ubuntu
- platform-name: centos
- platform-name: fedora
- platform-name: opensuse
- platform-name: suse
- platform-name: freebsd
- platform-name: openbsd
- platform-name: amazon
- platform-name: oracle
- platform-name: arch
- platform-name: gentoo
- platform-name: almalinux
- platform-name: rocky
- platform: windows
...@@ -8,21 +8,7 @@ postgres.port: '5433' ...@@ -8,21 +8,7 @@ postgres.port: '5433'
{%- endif %} {%- endif %}
postgres: postgres:
# UPSTREAM REPO use_upstream_repo: false
# Set True to configure upstream postgresql.org repository for YUM/APT/ZYPP
{%- if grains.os_family != 'Debian' and salt['grains.get']('osfinger') != 'CentOS-6' %}
use_upstream_repo: False
{%- else %}
use_upstream_repo: True
# Version to install from upstream repository (if upstream_repo: True)
version: '13'
# # Set True to add a file in /etc/profile.d adding the bin dir in $PATH
# # as packages from upstream put them somewhere like /usr/pgsql-10/bin
# add_profile: False
# # If automatic package installation fails, use `fromrepo` to specify the
# # upstream repo to install packages from [#133, #185] (if upstream_repo: True)
# fromrepo: 'jessie-pgdg'
{%- endif %}
# ### MACOS # ### MACOS
# # Set to 'postgresapp' OR 'homebrew' for MacOS # # Set to 'postgresapp' OR 'homebrew' for MacOS
...@@ -177,7 +163,8 @@ postgres: ...@@ -177,7 +163,8 @@ postgres:
public: public:
owner: localUser owner: localUser
# enable per-db extension # enable per-db extension
{%- if grains.os_family == 'Debian' and salt['grains.get']('osfinger') != 'Debian-8' %} {#- TODO: Find a way to only disable this for the `default` suite, since it works with the `repo` suite #}
{%- if grains.os_family == 'Debian' and salt['grains.get']('osfinger') != 'Debian-9' %}
extensions: extensions:
uuid-ossp: uuid-ossp:
schema: 'public' schema: 'public'
...@@ -190,7 +177,8 @@ postgres: ...@@ -190,7 +177,8 @@ postgres:
owner: localUser owner: localUser
# optional extensions to install in schema # optional extensions to install in schema
{%- if grains.os_family == 'Debian' and salt['grains.get']('osfinger') != 'Debian-8' %} {#- TODO: Find a way to only disable this for the `default` suite, since it works with the `repo` suite #}
{%- if grains.os_family == 'Debian' and salt['grains.get']('osfinger') != 'Debian-9' %}
extensions: extensions:
uuid-ossp: uuid-ossp:
schema: uuid-ossp schema: uuid-ossp
......
---
postgres:
use_upstream_repo: true
version: '13'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment