xoxys.postgres/index.md
Robert Kaussow a11a8c6a90 commit 6b093ce920
Author: Robert Kaussow <xoxys@rknet.org>
Date:   Sun Nov 28 14:27:45 2021 +0100

    chore: use Postgres 12 as default (#2)
    Co-authored-by: Robert Kaussow <xoxys@rknet.org>
    Co-committed-by: Robert Kaussow <xoxys@rknet.org>
2021-11-28 13:31:47 +00:00

327 lines
6.1 KiB
Markdown

---
title: postgres
type: docs
---
[![Source Code](https://img.shields.io/badge/gitea-source%20code-blue?logo=gitea&logoColor=white)](https://gitea.rknet.org/ansible/xoxys.postgres) [![Build Status](https://img.shields.io/drone/build/ansible/xoxys.postgres?logo=drone&server=https%3A%2F%2Fdrone.rknet.org)](https://drone.rknet.org/ansible/xoxys.postgres) [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](https://gitea.rknet.org/ansible/xoxys.postgres/src/branch/master/LICENSE)
Setup a [PostgreSQL](https://www.postgresql.org/) database server. PostgreSQL is a powerful, open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.
* [Default Variables](#default-variables)
* [postgres_base_dir](#postgres_base_dir)
* [postgres_clean_hba_file](#postgres_clean_hba_file)
* [postgres_connection_addresses](#postgres_connection_addresses)
* [postgres_connection_port](#postgres_connection_port)
* [postgres_db](#postgres_db)
* [postgres_dbs](#postgres_dbs)
* [postgres_dbs_extra](#postgres_dbs_extra)
* [postgres_group](#postgres_group)
* [postgres_hba_entries](#postgres_hba_entries)
* [postgres_hba_entries_extra](#postgres_hba_entries_extra)
* [postgres_log_destination](#postgres_log_destination)
* [postgres_log_directory](#postgres_log_directory)
* [postgres_log_filename](#postgres_log_filename)
* [postgres_log_rotation_age](#postgres_log_rotation_age)
* [postgres_log_rotation_size](#postgres_log_rotation_size)
* [postgres_password_encryption](#postgres_password_encryption)
* [postgres_repository_enabled](#postgres_repository_enabled)
* [postgres_repository_filename](#postgres_repository_filename)
* [postgres_socket_directories](#postgres_socket_directories)
* [postgres_tls_cert_filename](#postgres_tls_cert_filename)
* [postgres_tls_cert_source](#postgres_tls_cert_source)
* [postgres_tls_enabled](#postgres_tls_enabled)
* [postgres_tls_key_filename](#postgres_tls_key_filename)
* [postgres_tls_key_source](#postgres_tls_key_source)
* [postgres_user](#postgres_user)
* [postgres_users](#postgres_users)
* [postgres_users_extra](#postgres_users_extra)
* [postgres_version](#postgres_version)
* [Dependencies](#dependencies)
---
## Default Variables
### postgres_base_dir
#### Default value
```YAML
postgres_base_dir: _osdefault_
```
### postgres_clean_hba_file
#### Default value
```YAML
postgres_clean_hba_file: true
```
### postgres_connection_addresses
#### Default value
```YAML
postgres_connection_addresses:
- localhost
```
### postgres_connection_port
#### Default value
```YAML
postgres_connection_port: 5432
```
### postgres_db
#### Example usage
```YAML
postgres_db:
- name: "my_app"
lc_collate: "en_US.UTF-8"
lc_ctype: "en_US.UTF-8"
encoding: "UTF-8"
template: "template0"
login_host: "localhost"
login_password: "_omit_"
login_user: "{{ postgres_user }}"
login_unix_socket: "_omit_"
port: "_omit_"
owner: "_omit_"
state: "present"
```
### postgres_dbs
#### Default value
```YAML
postgres_dbs: []
```
### postgres_dbs_extra
#### Default value
```YAML
postgres_dbs_extra: []
```
### postgres_group
#### Default value
```YAML
postgres_group: postgres
```
### postgres_hba_entries
#### Default value
```YAML
postgres_hba_entries:
- contype: local
databases:
- all
users:
- all
auth_method: trust
- contype: host
databases:
- all
users:
- all
address: 127.0.0.1/32
auth_method: md5
- contype: host
databases:
- all
users:
- all
address: ::1/128
auth_method: md5
```
### postgres_hba_entries_extra
#### Default value
```YAML
postgres_hba_entries_extra: []
```
### postgres_log_destination
#### Default value
```YAML
postgres_log_destination:
- stderr
```
### postgres_log_directory
#### Default value
```YAML
postgres_log_directory: log
```
### postgres_log_filename
#### Default value
```YAML
postgres_log_filename: postgresql.log
```
### postgres_log_rotation_age
#### Default value
```YAML
postgres_log_rotation_age: 1d
```
### postgres_log_rotation_size
#### Default value
```YAML
postgres_log_rotation_size: 0
```
### postgres_password_encryption
#### Default value
```YAML
postgres_password_encryption: md5
```
### postgres_repository_enabled
#### Default value
```YAML
postgres_repository_enabled: false
```
### postgres_repository_filename
#### Default value
```YAML
postgres_repository_filename: Postgresql-{{ postgres_version | regex_replace('\.')
}}
```
### postgres_socket_directories
#### Default value
```YAML
postgres_socket_directories:
- /var/run/postgresql
```
### postgres_tls_cert_filename
#### Default value
```YAML
postgres_tls_cert_filename: mycert.pem
```
### postgres_tls_cert_source
#### Default value
```YAML
postgres_tls_cert_source: mycert.pem
```
### postgres_tls_enabled
#### Default value
```YAML
postgres_tls_enabled: false
```
### postgres_tls_key_filename
#### Default value
```YAML
postgres_tls_key_filename: mykey.pem
```
### postgres_tls_key_source
#### Default value
```YAML
postgres_tls_key_source: mykey.pem
```
### postgres_user
#### Default value
```YAML
postgres_user: postgres
```
### postgres_users
#### Default value
```YAML
postgres_users: []
```
#### Example usage
```YAML
postgres_users:
- name: jdoe #required; the rest are optional
password: # defaults to not set
encrypted: # defaults to 'yes'
priv: # defaults to not set
role_attr_flags: # defaults to not set
db: # defaults to not set
login_host: # defaults to 'localhost'
login_password: # defaults to not set
login_user: # defaults to '{{ postgres_user }}'
login_unix_socket: # defaults to 1st of postgres_socket_directories
port: # defaults to not set
state: # defaults to 'present'
pam_user: # defaults to not set
```
### postgres_users_extra
#### Default value
```YAML
postgres_users_extra: []
```
### postgres_version
#### Default value
```YAML
postgres_version: 12
```
## Dependencies
None.