diff --git a/helpers/postgresql.py b/helpers/postgresql.py index 4b7fc43e..fe170e30 100644 --- a/helpers/postgresql.py +++ b/helpers/postgresql.py @@ -305,9 +305,9 @@ class Postgresql: with open(os.path.join(self.data_dir, 'pg_hba.conf'), 'a') as f: f.write('\nhost replication {username} {network} md5\n'.format(**self.replication)) for line in self.config.get('pg_hba', []): - if line['type'] == 'hostssl' and self.config['parameters'].get('ssl', 'off').lower() != 'on': + if line.split()[0].strip() == 'hostssl' and self.config['parameters'].get('ssl', 'off').lower() != 'on': continue - f.write('{type} {database} {user} {address} {method}\n'. format(**line)) + f.write(line + '\n') @staticmethod def primary_conninfo(leader_url): diff --git a/postgres0.yml b/postgres0.yml index cdf00a25..51abfbc0 100644 --- a/postgres0.yml +++ b/postgres0.yml @@ -13,16 +13,8 @@ postgresql: data_dir: data/postgresql0 maximum_lag_on_failover: 1048576 # 1 megabyte in bytes pg_hba: - - type: host - database: all - user: all - address: 0.0.0.0/0 - method: md5 - - type: hostssl - database: all - user: all - address: 0.0.0.0/0 - method: md5 + - host all all 0.0.0.0/0 md5 + - hostssl all all 0.0.0.0/0 md5 replication: username: replicator password: rep-pass diff --git a/postgres1.yml b/postgres1.yml index e1d19fc1..265ac85b 100644 --- a/postgres1.yml +++ b/postgres1.yml @@ -13,16 +13,8 @@ postgresql: data_dir: data/postgresql1 maximum_lag_on_failover: 1048576 # 1 megabyte in bytes pg_hba: - - type: host - database: all - user: all - address: 0.0.0.0/0 - method: md5 - - type: hostssl - database: all - user: all - address: 0.0.0.0/0 - method: md5 + - host all all 0.0.0.0/0 md5 + - hostssl all all 0.0.0.0/0 md5 replication: username: replicator password: rep-pass diff --git a/tests/test_postgresql.py b/tests/test_postgresql.py index b58bfc43..e69e5703 100644 --- a/tests/test_postgresql.py +++ b/tests/test_postgresql.py @@ -112,9 +112,7 @@ class TestPostgresql(unittest.TestCase): shutil.copy = nop self.p = Postgresql({'name': 'test0', 'data_dir': 'data/test0', 'listen': '127.0.0.1, *:5432', 'connect_address': '127.0.0.2:5432', - 'pg_hba': [{'type': 'hostssl', 'database': 'all', 'user': 'all', 'address': '0.0.0.0/0', - 'method': 'md5'}, {'type': 'host', 'database': 'all', 'user': 'all', - 'address': '0.0.0.0/0', 'method': 'md5'}], + 'pg_hba': ['hostssl all all 0.0.0.0/0 md5', 'host all all 0.0.0.0/0 md5'], 'superuser': {'password': ''}, 'admin': {'username': 'admin', 'password': 'admin'}, 'replication': {'username': 'replicator', 'password': 'rep-pass',