src.nth.io/

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--roles/nginx/tasks/main.yaml6
-rw-r--r--roles/pleroma/defaults/main.yaml14
-rw-r--r--roles/pleroma/meta/main.yaml4
-rw-r--r--roles/pleroma/tasks/main.yaml37
-rw-r--r--roles/pleroma/templates/prod.secret.exs.j24
-rw-r--r--roles/pleroma/templates/setup_db.psql.j23
-rw-r--r--roles/postgresql/defaults/main.yaml10
-rw-r--r--roles/postgresql/handlers/main.yaml5
-rw-r--r--roles/postgresql/tasks/main.yaml27
9 files changed, 87 insertions, 23 deletions
diff --git a/roles/nginx/tasks/main.yaml b/roles/nginx/tasks/main.yaml
index 7a0589f..e255410 100644
--- a/roles/nginx/tasks/main.yaml
+++ b/roles/nginx/tasks/main.yaml
@@ -9,12 +9,6 @@
template: src="{{nginx_conf_src}}" dest="/etc/nginx/sites-available/{{nginx_conf_dst}}"
notify: restart nginx
-# https://certbot.eff.org/lets-encrypt/ubuntuxenial-nginx
-- name: add certbot (letsencrypt) repo
- become: yes
- apt_repository: repo="ppa:certbot/certbot"
- when: nginx_enable_ssl
-
- name: install nginx packages
become: yes
apt: name="python-certbot-nginx"
diff --git a/roles/pleroma/defaults/main.yaml b/roles/pleroma/defaults/main.yaml
index 94ff9e4..1002817 100644
--- a/roles/pleroma/defaults/main.yaml
+++ b/roles/pleroma/defaults/main.yaml
@@ -20,9 +20,17 @@ pleroma_signup_open: "true"
pleroma_db_host: "localhost"
pleroma_db_superuser: "postgres"
+pleroma_version: "v1.0.6"
+
pleroma_apt_packages:
- - "postgresql"
- - "esl-erlang"
- "elixir"
- - "build-essential"
- "git"
+ - "build-essential"
+
+ # - "erlang-dev"
+ # - "erlang-tools"
+ # - "erlang-parsetools"
+ # - "erlang-ssh"
+ # - "erlang-ssl"
+ # - "erlang-inets"
+ # - "erlang-xmerl"
diff --git a/roles/pleroma/meta/main.yaml b/roles/pleroma/meta/main.yaml
deleted file mode 100644
index d7aa38d..0000000
--- a/roles/pleroma/meta/main.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
----
-
-dependencies:
- - nginx
diff --git a/roles/pleroma/tasks/main.yaml b/roles/pleroma/tasks/main.yaml
index dfc9b0c..8cd1cb5 100644
--- a/roles/pleroma/tasks/main.yaml
+++ b/roles/pleroma/tasks/main.yaml
@@ -2,11 +2,11 @@
- name: add erland solutions key
become: yes
- apt_key: "url=http://packages.erlang-solutions.com/debian/erlang_solutions.asc"
+ apt_key: url="http://packages.erlang-solutions.com/debian/erlang_solutions.asc"
- name: install erland solutions repo
become: yes
- apt_repository: repo="deb http://binaries.erlang-solutions.com/debian bionic contrib"
+ apt_repository: repo="deb http://binaries.erlang-solutions.com/debian buster contrib"
- name: update apt package cache
become: yes
@@ -26,6 +26,7 @@
git:
repo: "https://git.pleroma.social/pleroma/pleroma.git"
dest: "~{{pleroma_user}}/pleroma"
+ version: "{{pleroma_version}}"
force: yes
- name: install pleroma config files
@@ -36,7 +37,6 @@
group: "{{pleroma_user}}"
mode: "0775"
become: yes
- become_user: "{{pleroma_user}}"
with_items:
- "setup_db.psql"
- "prod.secret.exs"
@@ -45,11 +45,18 @@
- name: install pleroma psql
become: yes
become_user: "{{pleroma_db_superuser}}"
- command: "psql -f ~{{pleroma_user}}/pleroma/config/setup_db.psql -h {{pleroma_db_host}}"
+ command: "psql -f ~{{pleroma_user}}/pleroma/config/setup_db.psql"
notify: restart pleroma
- environment:
- PGUSER: "{{pleroma_db_superuser}}"
- PGPASSWORD: "{{pleroma_db_superpass}}"
+
+# - name: restore
+# postgresql_db:
+# state: "restore"
+# db: "{{pleroma_user}}"
+# target: "/tmp/{{pleroma_user}}-backup.sql"
+# login_user: "{{pleroma_user}}"
+# login_password: "{{pleroma_db_passwd}}"
+# login_host: "{{pleroma_db_host}}"
+# when: "{{pleroma_restore_db}}"
- name: migrate db
become: yes
@@ -78,3 +85,19 @@
- name: enable pleroma systemd service
systemd: name="{{pleroma_user}}" enabled="yes" state="started"
become: yes
+
+
+# - name: backup db
+# postgresql_db:
+# state: "dump"
+# db: "{{pleroma_user}}"
+# target: "/tmp/{{pleroma_user}}-backup.sql"
+# login_user: "{{pleroma_user}}"
+# login_password: "{{pleroma_db_passwd}}"
+# login_host: "{{pleroma_db_host}}"
+
+
+
+
+
+# pg_dump -U pleroma_nth_io -h pleroma.ctzpnw3lfkwz.us-east-1.rds.amazonaws.com pleroma_nth_io -f pleroma_nth_io_dump.sql
diff --git a/roles/pleroma/templates/prod.secret.exs.j2 b/roles/pleroma/templates/prod.secret.exs.j2
index 2c4d9f2..85b0bbb 100644
--- a/roles/pleroma/templates/prod.secret.exs.j2
+++ b/roles/pleroma/templates/prod.secret.exs.j2
@@ -27,4 +27,6 @@ config :pleroma, Pleroma.Repo,
password: "{{pleroma_db_passwd}}",
database: "{{pleroma_user}}",
hostname: "{{pleroma_db_host}}",
- pool_size: 10
+ pool_size: 10,
+ timeout: 60000,
+ pool_timeout: 60000
diff --git a/roles/pleroma/templates/setup_db.psql.j2 b/roles/pleroma/templates/setup_db.psql.j2
index 459bec8..9a4af30 100644
--- a/roles/pleroma/templates/setup_db.psql.j2
+++ b/roles/pleroma/templates/setup_db.psql.j2
@@ -1,6 +1,5 @@
CREATE USER {{pleroma_user}} WITH ENCRYPTED PASSWORD '{{pleroma_db_passwd}}';
-CREATE DATABASE {{pleroma_user}};
-ALTER DATABASE {{pleroma_user}} OWNER TO {{pleroma_user}};
+CREATE DATABASE {{pleroma_user}} WITH OWNER {{pleroma_user}};
\c {{pleroma_user}};
--Extensions made by ecto.migrate that need superuser access
CREATE EXTENSION IF NOT EXISTS citext;
diff --git a/roles/postgresql/defaults/main.yaml b/roles/postgresql/defaults/main.yaml
new file mode 100644
index 0000000..ff230a9
--- /dev/null
+++ b/roles/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/roles/postgresql/handlers/main.yaml b/roles/postgresql/handlers/main.yaml
new file mode 100644
index 0000000..d2eb688
--- /dev/null
+++ b/roles/postgresql/handlers/main.yaml
@@ -0,0 +1,5 @@
+---
+
+- name: restart postgres
+ become: yes
+ systemd: name="postgresql" state="restarted" daemon_reload="yes"
diff --git a/roles/postgresql/tasks/main.yaml b/roles/postgresql/tasks/main.yaml
new file mode 100644
index 0000000..6195840
--- /dev/null
+++ b/roles/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"