Compare commits
3 commits
66d6e54cf1
...
c307e81d9f
Author | SHA1 | Date | |
---|---|---|---|
c307e81d9f | |||
1080932235 | |||
9334f70289 |
7 changed files with 117 additions and 4 deletions
resources/chaosknoten/eh22-wiki/nginx
roles
|
@ -64,11 +64,9 @@ server {
|
|||
fastcgi_pass unix:/var/run/php/php-fpm-dokuwiki.sock;
|
||||
}
|
||||
|
||||
location = /design {
|
||||
return 302 https://eh22.easterhegg.eu/design/;
|
||||
}
|
||||
|
||||
location /design/ {
|
||||
# Disable port in redirect as NGINX would redirect to the PROXY Protocol port 8443 for locations like https://eh22.easterhegg.eu/design
|
||||
port_in_redirect off;
|
||||
alias /var/www/eh22-styleguide/;
|
||||
index index.html;
|
||||
}
|
||||
|
|
37
roles/postgresql/README.md
Normal file
37
roles/postgresql/README.md
Normal file
|
@ -0,0 +1,37 @@
|
|||
# Role `postgresql`
|
||||
|
||||
Ensures `postgresql` is installed by installing the distributions package.
|
||||
Also ensures the optionally given databases and users are set up as specified.
|
||||
|
||||
## Supported Distributions
|
||||
|
||||
Should work on Debian-based distributions.
|
||||
|
||||
## Required Arguments
|
||||
|
||||
None.
|
||||
|
||||
## Optional Arguments
|
||||
|
||||
- `postgresql__dbs`: List of databases with their owner to ensure are set up.
|
||||
- `postgresql__dbs.*.name`: Name of the database.
|
||||
- `postgresql__dbs.*.owner`: Owner of the database.
|
||||
- `postgresql__users`: List of users to ensure are set up.
|
||||
- `postgresql__users.*.name`: Name of the user.
|
||||
- `postgresql__users.*.password`: Optional password for the user.
|
||||
If left unset, the user will have no password set, but can still connect using [peer authentication](https://www.postgresql.org/docs/current/auth-peer.html) on the local system.
|
||||
(Peer authentication works when a password is set as well.)
|
||||
|
||||
## Example Arguments
|
||||
|
||||
```yaml
|
||||
postgresql__dbs:
|
||||
- name: netbox
|
||||
owner: netbox
|
||||
- name: foo
|
||||
owner: bar
|
||||
postgresql__users:
|
||||
- name: netbox
|
||||
password: super_secret
|
||||
- name: bar
|
||||
```
|
2
roles/postgresql/defaults/main.yaml
Normal file
2
roles/postgresql/defaults/main.yaml
Normal file
|
@ -0,0 +1,2 @@
|
|||
postgresql__dbs: [ ]
|
||||
postgresql__users: [ ]
|
28
roles/postgresql/meta/argument_specs.yaml
Normal file
28
roles/postgresql/meta/argument_specs.yaml
Normal file
|
@ -0,0 +1,28 @@
|
|||
argument_specs:
|
||||
main:
|
||||
options:
|
||||
postgresql__dbs:
|
||||
type: list
|
||||
elements: dict
|
||||
required: false
|
||||
default: [ ]
|
||||
options:
|
||||
name:
|
||||
type: str
|
||||
required: true
|
||||
owner:
|
||||
type: str
|
||||
required: true
|
||||
postgresql__users:
|
||||
type: list
|
||||
elements: dict
|
||||
required: false
|
||||
default: [ ]
|
||||
options:
|
||||
name:
|
||||
type: str
|
||||
required: true
|
||||
password:
|
||||
type: str
|
||||
required: false
|
||||
default: ""
|
28
roles/postgresql/tasks/main.yaml
Normal file
28
roles/postgresql/tasks/main.yaml
Normal file
|
@ -0,0 +1,28 @@
|
|||
- name: Ensure postgresql is installed
|
||||
ansible.builtin.apt:
|
||||
name:
|
||||
- postgresql
|
||||
become: true
|
||||
|
||||
- name: Ensure Python library for community.postgresql is installed if needed
|
||||
ansible.builtin.apt:
|
||||
name:
|
||||
- python3-psycopg
|
||||
become: true
|
||||
when: postgresql__dbs != [ ] or postgresql__users != [ ]
|
||||
|
||||
- name: Ensure users
|
||||
community.postgresql.postgresql_user:
|
||||
name: "{{ item.name }}"
|
||||
password: "{{ item.password | default('') }}"
|
||||
become: true
|
||||
become_user: postgres
|
||||
loop: "{{ postgresql__users }}"
|
||||
|
||||
- name: Ensure dbs with owners
|
||||
community.postgresql.postgresql_db:
|
||||
name: "{{ item.name }}"
|
||||
owner: "{{ item.owner }}"
|
||||
become: true
|
||||
become_user: postgres
|
||||
loop: "{{ postgresql__dbs }}"
|
15
roles/redis/README.md
Normal file
15
roles/redis/README.md
Normal file
|
@ -0,0 +1,15 @@
|
|||
# Role `redis`
|
||||
|
||||
Ensures `redis` is installed by installing the distributions package.
|
||||
|
||||
## Supported Distributions
|
||||
|
||||
Should work on Debian-based distributions.
|
||||
|
||||
## Required Arguments
|
||||
|
||||
None.
|
||||
|
||||
## Optional Arguments
|
||||
|
||||
None.
|
5
roles/redis/tasks/main.yaml
Normal file
5
roles/redis/tasks/main.yaml
Normal file
|
@ -0,0 +1,5 @@
|
|||
- name: Ensure redis is installed
|
||||
ansible.builtin.apt:
|
||||
name:
|
||||
- redis
|
||||
become: true
|
Loading…
Add table
Add a link
Reference in a new issue