Compare commits
10 Commits
4dd524a5f2
...
40bbe62203
| Author | SHA1 | Date | |
|---|---|---|---|
|
40bbe62203
|
|||
|
cb69a9b430
|
|||
|
19f1681473
|
|||
|
5e5dabff1a
|
|||
|
d4aa128e4c
|
|||
|
512c7a82e5
|
|||
| 6c4c3d0794 | |||
|
5a75942336
|
|||
|
dd463297dd
|
|||
|
a1bc0ae727
|
@@ -17,10 +17,6 @@
|
|||||||
# @TODO see if setting below is necessary given use of reverse proxy
|
# @TODO see if setting below is necessary given use of reverse proxy
|
||||||
- name: Set trusted domains
|
- name: Set trusted domains
|
||||||
block:
|
block:
|
||||||
- name: Set localhost as trusted domain
|
|
||||||
ansible.builtin.command:
|
|
||||||
cmd: "/snap/bin//snap/bin/nextcloud.occ config:system:set trusted_domains 0 --value='localhost'"
|
|
||||||
# @TODO see if setting below is necessary given use of reverse proxy
|
|
||||||
- name: Set FQDN as trusted domain
|
- name: Set FQDN as trusted domain
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: "/snap/bin//snap/bin/nextcloud.occ config:system:set trusted_domains 1 --value='cloud.{{ hostvars[inventory_hostname].fqdn }}'"
|
cmd: "/snap/bin//snap/bin/nextcloud.occ config:system:set trusted_domains 1 --value='cloud.{{ hostvars[inventory_hostname].fqdn }}'"
|
||||||
@@ -28,6 +24,7 @@
|
|||||||
- name: Set trusted reverse proxy addresses
|
- name: Set trusted reverse proxy addresses
|
||||||
block:
|
block:
|
||||||
- name: Set trusted reverse proxy IPv4 address based on hostname
|
- name: Set trusted reverse proxy IPv4 address based on hostname
|
||||||
|
# @TODO create config.trusted_revproxy_ips data structure in bootstrap role's vars dir--may include loopback addresses
|
||||||
when: config.trusted_revproxy_ips.ipv4 is None or len(config.trusted_revproxy_ips.ipv4) < 1
|
when: config.trusted_revproxy_ips.ipv4 is None or len(config.trusted_revproxy_ips.ipv4) < 1
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
argv:
|
argv:
|
||||||
@@ -65,4 +62,44 @@
|
|||||||
loop: "{{ config.trusted_revproxy_ips.ipv6 }}"
|
loop: "{{ config.trusted_revproxy_ips.ipv6 }}"
|
||||||
loop_control:
|
loop_control:
|
||||||
index_var: idx
|
index_var: idx
|
||||||
|
# @TODO create task based on shell command `sudo /snap/bin/nextcloud.occ config:system:set default_phone_region --value="US"`
|
||||||
|
- name: Set default phone region
|
||||||
|
ansible.builtin.command:
|
||||||
|
argv:
|
||||||
|
- /snap/bin/nextcloud.occ
|
||||||
|
- "config:system:set"
|
||||||
|
- default_phone_region
|
||||||
|
- "--value={{ config.nextcloud.phone_region }}"
|
||||||
|
# @TODO create task based on shell command:
|
||||||
|
# `sudo /snap/bin/nextcloud.occ config:system:set overwrite.cli.url --value="https://cloud.{{ fqdn }}"` for Caddy task
|
||||||
|
- name: Set overwrite CLI URL
|
||||||
|
ansible.builtin.command:
|
||||||
|
argv:
|
||||||
|
- /snap/bin/nextcloud.occ
|
||||||
|
- "config:system:set"
|
||||||
|
- overwrite.cli.url
|
||||||
|
- "--value=cloud.{{ hostvars[inventory_hostname].fqdn }}"
|
||||||
|
# @TODO create task based on shell command `sudo /snap/bin/nextcloud.occ config:system:set overwriteprotocol --value="https"` for Caddy task
|
||||||
|
- name: Overwrite protocol
|
||||||
|
ansible.builtin.command:
|
||||||
|
argv:
|
||||||
|
- /snap/bin/nextcloud.occ
|
||||||
|
- "config:system:set"
|
||||||
|
- overwriteprotocol
|
||||||
|
- --value="https"
|
||||||
# @TODO create system-level bash alias for `/snap/bin/nextcloud.occ` command
|
# @TODO create system-level bash alias for `/snap/bin/nextcloud.occ` command
|
||||||
|
- name: Get Nextcloud snap binaries
|
||||||
|
ansible.builtin.find:
|
||||||
|
paths:
|
||||||
|
- /snap/bin
|
||||||
|
patterns:
|
||||||
|
- nextcloud\..*
|
||||||
|
recurse: false
|
||||||
|
use_regex: true
|
||||||
|
register: nextcloud_snap_binaries
|
||||||
|
- name: Create symbolic links for Nextcloud snap binaries
|
||||||
|
ansible.builtin.file:
|
||||||
|
dest: "/usr/sbin/{{ item.path | basename }}"
|
||||||
|
src: "{{ item.path }}"
|
||||||
|
state: link
|
||||||
|
loop: "{{ nextcloud_snap_binaries.files }}"
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
# SPDX-License-Identifier: MIT-0
|
|
||||||
---
|
|
||||||
# handlers file for bootstrap
|
|
||||||
- name: Pull podman images
|
|
||||||
listen: rsync
|
|
||||||
block:
|
|
||||||
- name: Pull container images via podman
|
|
||||||
containers.podman.podman_image:
|
|
||||||
name: "{{ item.value['name'] }}"
|
|
||||||
tag: "{{ item.value['tag'] | default('latest') }}"
|
|
||||||
state: present
|
|
||||||
notify: "{{ item.key }}"
|
|
||||||
loop: "{{ lookup('ansible.builtin.dict', software.containers) }}"
|
|
||||||
13
roles/bootstrap/templates/systemd/user/aria2cd.service.j2
Normal file
13
roles/bootstrap/templates/systemd/user/aria2cd.service.j2
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=aria2 Daemon
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
ExecStart=/usr/bin/aria2c --conf-path={{ ansible_facts['user_dir'] }}/.config/aria2/aria2.conf
|
||||||
|
ExecReload=/usr/bin/kill -HUP $MAINPID
|
||||||
|
RestartSec=1min
|
||||||
|
Restart=on-failure
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=default.target
|
||||||
@@ -193,13 +193,14 @@ software:
|
|||||||
proftpd-mod-crypto:
|
proftpd-mod-crypto:
|
||||||
name:
|
name:
|
||||||
apt: proftpd-mod-crypto
|
apt: proftpd-mod-crypto
|
||||||
# proftpd-mod-ldap:
|
# @TODO write configuration files and handler for below two package installations
|
||||||
# name:
|
# based on:
|
||||||
# apt: proftpd-mod-ldap
|
clamav:
|
||||||
# @TODO manually install the commented below on current active new VPS, then uncomment
|
name:
|
||||||
# proftpd-mod-clamav:
|
apt: clamav
|
||||||
# name:
|
clamd:
|
||||||
# apt: proftpd-mod-clamav
|
name:
|
||||||
|
apt: clamav-daemon
|
||||||
proftpd:
|
proftpd:
|
||||||
name:
|
name:
|
||||||
apt: proftpd
|
apt: proftpd
|
||||||
@@ -211,7 +212,7 @@ software:
|
|||||||
apt: rsync
|
apt: rsync
|
||||||
# rclone:
|
# rclone:
|
||||||
# name:
|
# name:
|
||||||
# apt: rsync
|
# apt: rclone
|
||||||
aria:
|
aria:
|
||||||
name:
|
name:
|
||||||
apt: aria2
|
apt: aria2
|
||||||
@@ -235,10 +236,6 @@ software:
|
|||||||
- "nextcloud:ports.http=81"
|
- "nextcloud:ports.http=81"
|
||||||
# @TODO see how to set these options: https://help.nextcloud.com/t/how-to-configure-nextcloud-snap/216036#p-649442-trusted-domains-configuration-8
|
# @TODO see how to set these options: https://help.nextcloud.com/t/how-to-configure-nextcloud-snap/216036#p-649442-trusted-domains-configuration-8
|
||||||
# @TODO see how to set these options: https://help.nextcloud.com/t/how-to-configure-nextcloud-snap/216036#p-649442-trusted-proxy-configuration-9
|
# @TODO see how to set these options: https://help.nextcloud.com/t/how-to-configure-nextcloud-snap/216036#p-649442-trusted-proxy-configuration-9
|
||||||
containers:
|
|
||||||
ariang:
|
|
||||||
name: https://docker.io/p3terx/ariang
|
|
||||||
tag: latest
|
|
||||||
links:
|
links:
|
||||||
quartz:
|
quartz:
|
||||||
name: quartz
|
name: quartz
|
||||||
@@ -293,6 +290,7 @@ config:
|
|||||||
username: admin
|
username: admin
|
||||||
# @TODO change this password to ansible-vaulted actual choice password later
|
# @TODO change this password to ansible-vaulted actual choice password later
|
||||||
password: password123 # @NOTE placeholder
|
password: password123 # @NOTE placeholder
|
||||||
|
phone_region: US
|
||||||
aria:
|
aria:
|
||||||
checksum: ~
|
checksum: ~
|
||||||
secret: ~
|
secret: ~
|
||||||
|
|||||||
Reference in New Issue
Block a user