move ramble-hard provisioning to boxen
diff --git a/meta/playbooks/pleroma/01.yml b/meta/playbooks/pleroma/01.yml
deleted file mode 100644
index 0d16043a..00000000
--- a/meta/playbooks/pleroma/01.yml
+++ /dev/null
@@ -1,119 +0,0 @@
-# https://docs.pleroma.social/backend/installation/otp_en/
----
-- hosts: pleroma
- become: yes
- tasks:
-
- # arch="$(uname -m)";if [ "$arch" = "x86_64" ];then arch="amd64";elif [ "$arch" = "armv7l" ];then arch="arm";elif [ "$arch" = "aarch64" ];then arch="arm64";else echo "Unsupported arch: $arch">&2;fi;if getconf GNU_LIBC_VERSION>/dev/null;then libc_postfix="";elif [ "$(ldd 2>&1|head -c 9)" = "musl libc" ];then libc_postfix="-musl";elif [ "$(find /lib/libc.musl*|wc -l)" ];then libc_postfix="-musl";else echo "Unsupported libc">&2;fi;echo "$arch$libc_postfix"
- - shell: |
- arch="$(uname -m)"
- if [ "$arch" = "x86_64" ]; then
- arch="amd64";
- elif [ "$arch" = "armv7l" ]; then
- arch="arm";
- elif [ "$arch" = "aarch64" ]; then
- arch="arm64";
- else
- echo "Unsupported arch: $arch">&2;
- fi;
- if getconf GNU_LIBC_VERSION>/dev/null; then
- libc_postfix="";
- elif [ "$(ldd 2>&1|head -c 9)" = "musl libc" ]; then
- libc_postfix="-musl";
- elif [ "$(find /lib/libc.musl*|wc -l)" ]; then
- libc_postfix="-musl";
- else
- echo "Unsupported libc">&2;
- fi;
- echo "$arch$libc_postfix"
- register: arch_result
- - set_fact:
- pleroma_flavour: "{{ arch_result.stdout | trim }}"
-
- - apt:
- update_cache: yes
-
- # apt install curl unzip libncurses5 postgresql postgresql-contrib nginx certbot libmagic-dev
- # apt install imagemagick ffmpeg libimage-exiftool-perl
- # apt install postgresql-11-rum
- - package:
- name:
- - curl
- - unzip
- - libncurses5
- - postgresql
- - postgresql-contrib
- - nginx
- - certbot
- - libmagic-dev
- - imagemagick
- - ffmpeg
- - libimage-exiftool-perl
- - postgresql-11-rum
- notify:
- - Restart postgres
-
- # Create a Pleroma user
- # adduser --system --shell /bin/false --home /opt/pleroma pleroma
- - user:
- name: pleroma
- home: /opt/pleroma
- shell: /bin/false
- system: yes
-
- # Clone the release build into a temporary directory and unpack it
- # su pleroma -s $SHELL -lc "
- # curl 'https://git.pleroma.social/api/v4/projects/2/jobs/artifacts/stable/download?job=$FLAVOUR' -o /tmp/pleroma.zip
- # unzip /tmp/pleroma.zip -d /tmp/
- # "
- - get_url:
- url: https://git.pleroma.social/api/v4/projects/2/jobs/artifacts/stable/download?job={{ pleroma_flavour }}
- dest: /tmp/pleroma.zip
- - command: unzip /tmp/pleroma.zip -d /tmp/
-
- # Move the release to the home directory and delete temporary files
- # su pleroma -s $SHELL -lc "
- # mv /tmp/release/* /opt/pleroma
- # rmdir /tmp/release
- # rm /tmp/pleroma.zip
- # "
- - copy:
- src: /tmp/release/
- dest: /opt/pleroma/
- remote_src: yes
- owner: pleroma
- - file:
- path: "{{ item }}"
- state: absent
- loop:
- - /tmp/release
- - /tmp/pleroma.zip
-
- # Create uploads directory and set proper permissions (skip if planning to use a remote uploader)
- # Note: It does not have to be `/var/lib/pleroma/uploads`, the config generator will ask about the upload directory later
- # mkdir -p /var/lib/pleroma/uploads
- # chown -R pleroma /var/lib/pleroma
-
- # Create custom public files directory (custom emojis, frontend bundle overrides, robots.txt, etc.)
- # Note: It does not have to be `/var/lib/pleroma/static`, the config generator will ask about the custom public files directory later
- # mkdir -p /var/lib/pleroma/static
- # chown -R pleroma /var/lib/pleroma
-
- # Create a config directory
- # mkdir -p /etc/pleroma
- # chown -R pleroma /etc/pleroma
- - file:
- path: "{{ item }}"
- state: directory
- owner: pleroma
- loop:
- - /var/lib/pleroma/uploads
- - /var/lib/pleroma/static
- - /etc/pleroma
-
- handlers:
- - name: Restart postgres
- service:
- name: postgresql
- state: restarted
-
diff --git a/meta/playbooks/pleroma/02.yml b/meta/playbooks/pleroma/02.yml
deleted file mode 100644
index bf819686..00000000
--- a/meta/playbooks/pleroma/02.yml
+++ /dev/null
@@ -1,31 +0,0 @@
-# https://docs.pleroma.social/backend/installation/otp_en/
----
-- hosts: pleroma
- become: yes
- tasks:
-
- # Create the postgres database
- # su postgres -s $SHELL -lc "psql -f /tmp/setup_db.psql"
- - command: psql -f /tmp/setup_db.psql
- become_user: postgres
-
- # Create the database schema
- # su pleroma -s $SHELL -lc "./bin/pleroma_ctl migrate"
- - command: ./bin/pleroma_ctl migrate
- args:
- chdir: /opt/pleroma
- become_user: pleroma
-
- # If you have installed RUM indexes uncommend and run
- # su pleroma -s $SHELL -lc "./bin/pleroma_ctl migrate --migrations-path priv/repo/optional_migrations/rum_indexing/"
- - command: ./bin/pleroma_ctl migrate --migrations-path priv/repo/optional_migrations/rum_indexing/
- args:
- chdir: /opt/pleroma
- become_user: pleroma
-
- handlers:
- - name: Restart postgres
- service:
- name: postgresql
- state: restarted
-
diff --git a/meta/playbooks/pleroma/03.yml b/meta/playbooks/pleroma/03.yml
deleted file mode 100644
index 693f0fa3..00000000
--- a/meta/playbooks/pleroma/03.yml
+++ /dev/null
@@ -1,62 +0,0 @@
-# https://docs.pleroma.social/backend/installation/otp_en/
----
-- hosts: pleroma
- become: yes
- tasks:
-
- # cp /opt/pleroma/installation/pleroma.nginx /etc/nginx/sites-available/pleroma.conf
- # ln -s /etc/nginx/sites-available/pleroma.conf /etc/nginx/sites-enabled/pleroma.conf
- - copy:
- src: /opt/pleroma/installation/pleroma.nginx
- dest: /etc/nginx/sites-available/pleroma.conf
- remote_src: yes
- notify: Restart nginx
- - file:
- src: /etc/nginx/sites-available/pleroma.conf
- dest: /etc/nginx/sites-enabled/pleroma.conf
- state: link
- notify: Restart nginx
-
- - replace:
- path: /etc/nginx/sites-available/pleroma.conf
- regexp: 'example\.tld'
- replace: "{{ pleroma_tld }}"
- notify: Restart nginx
-
- # Copy the service into a proper directory
- # cp /opt/pleroma/installation/pleroma.service /etc/systemd/system/pleroma.service
- - copy:
- src: /opt/pleroma/installation/pleroma.service
- dest: /etc/systemd/system/pleroma.service
- remote_src: yes
- # Start pleroma and enable it on boot
- # systemctl start pleroma
- # systemctl enable pleroma
- notify: Restart pleroma
-
- # Create the directory for webroot challenges
- # mkdir -p /var/lib/letsencrypt
- - file:
- path: /var/lib/letsencrypt
- state: directory
-
- # Add it to the daily cron
- # echo '#!/bin/sh
- # certbot renew --cert-name yourinstance.tld --webroot -w /var/lib/letsencrypt/ --post-hook "systemctl reload nginx"
- # ' > /etc/cron.daily/renew-pleroma-cert
- # chmod +x /etc/cron.daily/renew-pleroma-cert
- - template:
- src: renew-pleroma-cert
- dest: /etc/cron.daily/renew-pleroma-cert
- mode: +x
-
- handlers:
- - name: Restart nginx
- service:
- name: nginx
- state: restarted
- - name: Restart pleroma
- service:
- name: pleroma
- enabled: yes
- state: restarted
diff --git a/meta/playbooks/pleroma/README.md b/meta/playbooks/pleroma/README.md
deleted file mode 100644
index 5baa884f..00000000
--- a/meta/playbooks/pleroma/README.md
+++ /dev/null
@@ -1,32 +0,0 @@
-```sh
-ansible-playbook -l pleroma playbooks/pleroma/01.yml
-
-su pleroma -s $SHELL -lc "./bin/pleroma_ctl instance gen --output /etc/pleroma/config.exs --output-psql /tmp/setup_db.psql"
-
-ansible-playbook -l pleroma playbooks/pleroma/02.yml
-
-# Start the instance to verify that everything is working as expected
-su pleroma -s $SHELL -lc "./bin/pleroma daemon"
-
-# Wait for about 20 seconds and query the instance endpoint, if it shows your uri, name and email correctly, you are configured correctly
-sleep 20 && curl http://localhost:4000/api/v1/instance
-
-# Stop the instance
-su pleroma -s $SHELL -lc "./bin/pleroma stop"
-
-sudo systemctl stop nginx
-certbot certonly --standalone --preferred-challenges http -d $PLEROMA_TLD
-
-ansible-playbook -l pleroma playbooks/pleroma/03.yml
-
-# Uncomment the webroot method
-sudo vim /etc/nginx/sites-available/pleroma.conf
-
-sudo nginx -t
-
-# Restart nginx
-systemctl restart nginx
-
-cd /opt/pleroma
-su pleroma -s $SHELL -lc "./bin/pleroma_ctl user new joeuser joeuser@sld.tld --admin"
-```
diff --git a/meta/playbooks/pleroma/renew-pleroma-cert b/meta/playbooks/pleroma/renew-pleroma-cert
deleted file mode 100644
index 08a21f5e..00000000
--- a/meta/playbooks/pleroma/renew-pleroma-cert
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-certbot renew --cert-name {{ pleroma_tld }} --webroot -w /var/lib/letsencrypt/ --post-hook "systemctl reload nginx"
diff --git a/meta/ramble-hard.yml b/meta/ramble-hard.yml
deleted file mode 100644
index b79a7941..00000000
--- a/meta/ramble-hard.yml
+++ /dev/null
@@ -1,12 +0,0 @@
----
-- hosts: ramble-hard
- tasks:
-
- - name: add ssh keys
- authorized_key:
- user: root
- key: https://github.com/kejadlen.keys
-
-- import_playbook: playbooks/docker.yml
-- import_playbook: playbooks/lets_encrypt/main.yml
-- import_playbook: playbooks/pixelfed/install.yml