summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--roles/gemini/files/update_gemini9
-rw-r--r--roles/gemini/tasks/main.yml34
-rw-r--r--roles/gemini/templates/openrc/gemini6
-rw-r--r--roles/gemini/templates/update_gemini9
-rw-r--r--roles/http/tasks/main.yml24
5 files changed, 41 insertions, 41 deletions
diff --git a/roles/gemini/files/update_gemini b/roles/gemini/files/update_gemini
deleted file mode 100644
index 75f2e6a..0000000
--- a/roles/gemini/files/update_gemini
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-prev_version="$(~/.cargo/bin/agate --version)"
-cargo install agate
-new_version="$(~/.cargo/bin/agate --version)"
-if [ "$prev_version" != "$new_version" ]
-then
- rc-service gemini restart
-fi
diff --git a/roles/gemini/tasks/main.yml b/roles/gemini/tasks/main.yml
index 8239bb6..ffc00d4 100644
--- a/roles/gemini/tasks/main.yml
+++ b/roles/gemini/tasks/main.yml
@@ -1,30 +1,42 @@
+- name: Create joeac.net source code directory
+ ansible.builtin.file:
+ path: ~nginx/src
+ state: directory
+ recurse: true
+ owner: "{{ ansible_ssh_user }}"
+ group: "{{ ansible_ssh_user }}"
+
- name: Checkout joeac.net source code
- become: false
ansible.builtin.git:
repo: git://git.joeac.net/joeac.net.git
- dest: "{{ src_dir }}/joeac.net"
+ dest: ~nginx/src/joeac.net
depth: 1
version: main
- name: Run initial comitium refresh
- become: false
register: comitium_refresh
ansible.builtin.command:
- cmd: /usr/local/bin/comitium refresh --data {{ src_dir }}/joeac.net/gemini/comitium-data
- creates: "{{ src_dir }}/joeac.net/gemini/comitium-data/feed.gmi"
+ cmd: /usr/local/bin/comitium refresh --data ~nginx/src/joeac.net/gemini/comitium-data
+ creates: ~nginx/src/joeac.net/gemini/comitium-data/feed.gmi
- name: Schedule daily comitium refresh
- become: false
ansible.builtin.cron:
special_time: daily
- job: /usr/local/bin/comitium refresh --data {{ src_dir }}/joeac.net/gemini/comitium-data
+ job: /usr/local/bin/comitium refresh --data ~nginx/src/joeac.net/gemini/comitium-data
name: daily comitium refresh for joeac.net capsule
+ user: nginx
- name: Build joeac.net capsule
- become: false
register: build_capsule
community.general.make:
- chdir: "{{ src_dir }}/joeac.net/gemini"
+ chdir: ~nginx/src/joeac.net/gemini
+
+- name: Chown joeac.net source code for nginx
+ ansible.builtin.file:
+ path: ~nginx/src
+ recurse: true
+ owner: nginx
+ group: nginx
- name: Install gemini service
register: install_service
@@ -48,8 +60,8 @@
state: restarted
- name: Install daily crontab to update gemini
- become: false
ansible.builtin.cron:
special_time: daily
name: Update gemini
- job: git -C {{ src_dir }}/joeac.net pull; make -C {{ src_dir }}/joeac.net/gemini
+ job: git -C ~nginx/src/joeac.net pull; make -C ~nginx/src/joeac.net/gemini
+ user: nginx
diff --git a/roles/gemini/templates/openrc/gemini b/roles/gemini/templates/openrc/gemini
index fbc2cc8..de066e7 100644
--- a/roles/gemini/templates/openrc/gemini
+++ b/roles/gemini/templates/openrc/gemini
@@ -1,10 +1,10 @@
#!/sbin/openrc-run
-description="agate gemini server (serving {{ src_dir }}/joeac.net/gemini/content)"
+description="agate gemini server (serving /home/{{ ansible_ssh_user }}/src/joeac.net/gemini/content)"
start()
{
- ebegin "Starting agate (serving {{ src_dir }}/joeac.net/gemini/content)"
+ ebegin "Starting agate (serving /home/{{ ansible_ssh_user }}/src/joeac.net/gemini/content)"
start-stop-daemon --start \
--exec /root/.cargo/bin/agate \
--background \
@@ -13,7 +13,7 @@ start()
--make-pidfile \
--pidfile /run/agate.pid \
-- \
- --content {{ src_dir }}/joeac.net/gemini/content/ \
+ --content /home/{{ ansible_ssh_user }}/src/joeac.net/gemini/content/ \
--addr 0.0.0.0:1965 \
--addr [::]:1965 \
--lang en-GB
diff --git a/roles/gemini/templates/update_gemini b/roles/gemini/templates/update_gemini
deleted file mode 100644
index 4e4f319..0000000
--- a/roles/gemini/templates/update_gemini
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-cd {{ src_dir }}/joeac.net/gemini
-git pull
-if make -q
-then
- make
- rc-service gemini restart
-fi
diff --git a/roles/http/tasks/main.yml b/roles/http/tasks/main.yml
index 37e8f3e..90914df 100644
--- a/roles/http/tasks/main.yml
+++ b/roles/http/tasks/main.yml
@@ -51,18 +51,24 @@
name: nginx
state: restarted
+- name: Create joeac.net src directory
+ become: false
+ ansible.builtin.file:
+ path: ~{{ ansible_ssh_user }}/src
+ state: directory
+
- name: Checkout joeac.net source code
become: false
ansible.builtin.git:
repo: git://git.joeac.net/joeac.net.git
- dest: "{{ src_dir }}/joeac.net"
+ dest: ~{{ ansible_ssh_user }}/src/joeac.net
depth: 1
version: main
- name: Build joeac.net website
become: false
community.general.make:
- chdir: "{{ src_dir }}/joeac.net/http"
+ chdir: ~{{ ansible_ssh_user }}/src/joeac.net/http
- name: Create joeac.net public directory
ansible.builtin.file:
@@ -75,29 +81,29 @@
become: false
ansible.builtin.template:
src: config.ini
- dest: "{{ src_dir }}/joeac.net/http/config.ini"
+ dest: ~{{ ansible_ssh_user }}/src/joeac.net/http/config.ini
- name: Symlink config.ini
ansible.builtin.file:
- src: "{{ src_dir }}/joeac.net/http/config.ini"
+ src: ~{{ ansible_ssh_user }}/src/joeac.net/http/config.ini
dest: "{{ http_files_dir }}/config.ini"
state: link
- name: Symlink vendor to public directory
ansible.builtin.file:
- src: "{{ src_dir }}/joeac.net/http/vendor"
+ src: ~{{ ansible_ssh_user }}/src/joeac.net/http/vendor
dest: "{{ http_files_dir }}/vendor"
state: link
- name: Symlink php to public directory
ansible.builtin.file:
- src: "{{ src_dir }}/joeac.net/http/php"
+ src: ~{{ ansible_ssh_user }}/src/joeac.net/http/php
dest: "{{ http_files_dir }}/php"
state: link
- name: Symlink html to public directory
ansible.builtin.file:
- src: "{{ src_dir }}/joeac.net/http/out"
+ src: ~{{ ansible_ssh_user }}/src/joeac.net/http/out
dest: "{{ http_files_dir }}/html"
state: link
@@ -110,8 +116,8 @@
mode: "600"
- name: Install daily crontab to update http
- become: false
ansible.builtin.cron:
special_time: daily
name: Update http
- job: git -C {{ src_dir }}/joeac.net/http pull; make
+ job: git -C ~{{ ansible_ssh_user }}/src/joeac.net pull; make -C ~{{ ansible_ssh_user }}/src/joeac.net/http
+ user: "{{ ansible_ssh_user }}"