diff options
| -rw-r--r-- | nginx/defaults/main.yaml | 10 | ||||
| -rw-r--r-- | nginx/handlers/main.yaml | 5 | ||||
| -rw-r--r-- | nginx/tasks/main.yaml | 39 | ||||
| -rw-r--r-- | postgresql/defaults/main.yaml | 10 | ||||
| -rw-r--r-- | postgresql/handlers/main.yaml | 5 | ||||
| -rw-r--r-- | postgresql/tasks/main.yaml | 27 |
6 files changed, 96 insertions, 0 deletions
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" |
