From f7b6a96abb76655be80967c28b56b62ac9fc37d7 Mon Sep 17 00:00:00 2001 From: Luke Hoersten Date: Tue, 9 Jun 2020 19:21:46 -0500 Subject: Moved over postgresql and nginx roles from pleroma roles. --- nginx/defaults/main.yaml | 10 ++++++++++ nginx/handlers/main.yaml | 5 +++++ nginx/tasks/main.yaml | 39 +++++++++++++++++++++++++++++++++++++++ postgresql/defaults/main.yaml | 10 ++++++++++ postgresql/handlers/main.yaml | 5 +++++ postgresql/tasks/main.yaml | 27 +++++++++++++++++++++++++++ 6 files changed, 96 insertions(+) create mode 100644 nginx/defaults/main.yaml create mode 100644 nginx/handlers/main.yaml create mode 100644 nginx/tasks/main.yaml create mode 100644 postgresql/defaults/main.yaml create mode 100644 postgresql/handlers/main.yaml create mode 100644 postgresql/tasks/main.yaml diff --git a/nginx/defaults/main.yaml b/nginx/defaults/main.yaml new file mode 100644 index 0000000..c0db79d --- /dev/null +++ b/nginx/defaults/main.yaml @@ -0,0 +1,10 @@ +--- + +nginx_port: 80 +nginx_ssl_port: 443 +nginx_ssl_cert: "/etc/letsencrypt/live/{{nginx_server_name}}/fullchain.pem" +nginx_ssl_privkey: "/etc/letsencrypt/live/{{nginx_server_name}}/privkey.pem" +nginx_enable_certbot: No +nginx_server_name: "{{ansible_host}}" +nginx_conf_dst: "{{nginx_server_name}}.nginx.conf" +nginx_admin_email: "admin@{{nginx_server_name}}" diff --git a/nginx/handlers/main.yaml b/nginx/handlers/main.yaml new file mode 100644 index 0000000..1feca07 --- /dev/null +++ b/nginx/handlers/main.yaml @@ -0,0 +1,5 @@ +--- + +- name: restart nginx + become: yes + systemd: name="nginx" state="restarted" daemon_reload="yes" diff --git a/nginx/tasks/main.yaml b/nginx/tasks/main.yaml new file mode 100644 index 0000000..5cace24 --- /dev/null +++ b/nginx/tasks/main.yaml @@ -0,0 +1,39 @@ +--- + +- name: install nginx packages + become: yes + apt: name="nginx" + +- name: install site + become: yes + template: src="{{nginx_conf_src}}" dest="/etc/nginx/sites-available/{{nginx_conf_dst}}" + notify: restart nginx + +- name: install nginx packages + become: yes + apt: name="python-certbot-nginx" + notify: restart nginx + when: nginx_enable_certbot + +- name: install certbot in nginx + become: yes + command: "certbot certonly --nginx -n --agree-tos -d {{nginx_server_name}} -m {{nginx_admin_email}}" + changed_when: false + when: nginx_enable_certbot + +- name: disable default site + become: yes + file: path="/etc/nginx/sites-enabled/default" state="absent" + notify: restart nginx + +- name: enable site + become: yes + file: + src: "/etc/nginx/sites-available/{{nginx_conf_dst}}" + dest: "/etc/nginx/sites-enabled/{{nginx_conf_dst}}" + state: "link" + notify: restart nginx + +- name: enable nginx service + become: yes + systemd: name="nginx" enabled="yes" state="started" diff --git a/postgresql/defaults/main.yaml b/postgresql/defaults/main.yaml new file mode 100644 index 0000000..ff230a9 --- /dev/null +++ b/postgresql/defaults/main.yaml @@ -0,0 +1,10 @@ +--- + +postgresql_version: "11" +postgresql_config_path: "/etc/postgresql/{{postgresql_version}}/main/postgresql.conf" +postgresql_data_dir: "/var/lib/postgresql/{{postgresql_version}}/main" +postgresql_apt_packages: + - "postgresql-{{postgresql_version}}" + - "pgcli" + - "postgresql-client" + - "postgresql-common" diff --git a/postgresql/handlers/main.yaml b/postgresql/handlers/main.yaml new file mode 100644 index 0000000..d2eb688 --- /dev/null +++ b/postgresql/handlers/main.yaml @@ -0,0 +1,5 @@ +--- + +- name: restart postgres + become: yes + systemd: name="postgresql" state="restarted" daemon_reload="yes" diff --git a/postgresql/tasks/main.yaml b/postgresql/tasks/main.yaml new file mode 100644 index 0000000..6195840 --- /dev/null +++ b/postgresql/tasks/main.yaml @@ -0,0 +1,27 @@ +--- + +- name: install postgresql + become: yes + apt: name="{{postgresql_apt_packages}}" + +- name: configure postgresql data dir + become: yes + lineinfile: + path: "{{postgresql_config_path}}" + regexp: "^data_directory = " + line: "data_directory = '{{postgresql_data_dir}}'" + notify: restart postgres + +- name: create postgresql data dir + become: yes + file: + path: "{{postgresql_data_dir}}" + state: "directory" + mode: "0700" + owner: "postgres" + group: "postgres" + notify: restart postgres + +- name: ensure postgresql is started + become: yes + systemd: name="postgresql" enabled="yes" state="started" -- cgit v1.2.3