Compare commits

...

4 Commits

5 changed files with 237 additions and 2 deletions

5
debian/Makefile vendored
View File

@ -14,7 +14,10 @@ inventory: ## Deploy server
configure: ## Configure server
ansible-playbook -i ./ansible/inventory/hosts.ini -f 10 ./ansible/playbook.yml
ansible-playbook -i ./ansible/inventory/hosts.ini -f 10 ./ansible/linux-baseline.yml
ansible-playbook -i ./ansible/inventory/hosts.ini -f 10 ./ansible/install-librepages.yml
ansible-playbook -i ./ansible/inventory/hosts.ini -f 10 ./ansible/install-librepages-forms.yml
ansible-playbook -i ./ansible/inventory/hosts.ini -f 10 ./ansible/install-librepages-conductor.yml
# ansible-playbook -i ./ansible/inventory/hosts.ini -f 10 ./ansible/linux-baseline.yml
ansible-check: ## Check Ansible playbooks
ansible-playbook --check ./ansible/playbook.yml

View File

@ -0,0 +1,52 @@
---
- name: Install LibrePages Componenets
hosts: debainbasic
remote_user: root
tasks:
- name: Ensure all VMs are reachable
ansible.builtin.ping:
- name: Create /tmp/librepages/conductor
ansible.builtin.file:
path: /tmp/librepages/conductor
state: directory
recurse: true
- name: Create /etc/librepages/conductor
ansible.builtin.file:
path: /etc/librepages/conductor
state: directory
recurse: true
- name: Get LibrePages/conductor
get_url:
url: https://dl.librepages.org/librepages/conductor/master/conductor-master-linux-amd64.tar.gz
dest:
/tmp/librepages/conductor
# master branch build checksum keeps changing
# checksum: sha256:2478f65d0736e45e45c8c7deb420b73b7b020ed6eae4ec73724cbf974f4df50c
- name: Extract downloaded LibrePages/conductor
command: >-
tar -xzvf /tmp/librepages/conductor/conductor-master-linux-amd64.tar.gz
--directory /tmp/librepages/conductor
- name: Install LibrePages/conductor binary
command: >-
cp -f
/tmp/librepages/conductor/conductor-master-linux-amd64/conductor
/usr/bin/
- name: Copy configuration file
command: >-
cp -f
/tmp/librepages/conductor/conductor-master-linux-amd64/config/config.toml
/etc/librepages/conductor/
- name: Copy systemd file
command: >-
cp -f
/tmp/librepages/conductor/conductor-master-linux-amd64/contrib/librepages-conductor.service
/etc/systemd/system/

View File

@ -0,0 +1,82 @@
---
- name: Install LibrePages Componenets
hosts: debainbasic
remote_user: root
tasks:
- name: Ensure all VMs are reachable
ansible.builtin.ping:
- name: Create /tmp/librepages/forms
ansible.builtin.file:
path: /tmp/librepages/forms
state: directory
recurse: true
- name: Create /etc/librepages/forms
ansible.builtin.file:
path: /etc/librepages/forms
state: directory
recurse: true
- name: Get librepages/forms
get_url:
url: https://dl.librepages.org/librepages/forms/master/forms-master-linux-amd64.tar.gz
dest:
/tmp/librepages/forms
# master branch build checksum keeps changing
# checksum: sha256:2478f65d0736e45e45c8c7deb420b73b7b020ed6eae4ec73724cbf974f4df50c
- name: Extract downloaded librepages/forms
command: >-
tar -xzvf /tmp/librepages/forms/forms-master-linux-amd64.tar.gz
--directory /tmp/librepages/forms
- name: Install librepages/forms binary
command: >-
cp -f
/tmp/librepages/forms/forms-master-linux-amd64/forms
/usr/bin/
- name: Copy configuration file
command: >-
cp -f
/tmp/librepages/forms/forms-master-linux-amd64/config/config.toml
/etc/librepages/forms/
- name: Copy systemd file
command: >-
cp -f
/tmp/librepages/forms/forms-master-linux-amd64/contrib/librepages-forms.service
/etc/systemd/system/
- name: "Create librepages/forms database"
postgresql_db:
state: present
name: "librepages-forms"
become: yes
become_user: postgres
- name: "Create db user"
postgresql_user:
state: present
name: "librepages-forms"
password: "supercomplicatedpassword"
become: yes
become_user: postgres
- name: "Grant db user access to app db"
postgresql_privs:
type: database
database: "librepages-forms"
roles: "librepages-forms"
grant_option: no
privs: all
become: yes
become_user: postgres
- name: Added a librepages account
ansible.builtin.user:
name: librepages-forms
shell: /bin/nologin

82
debian/ansible/install-librepages.yml vendored Normal file
View File

@ -0,0 +1,82 @@
---
- name: Install LibrePages Componenets
hosts: debainbasic
remote_user: root
tasks:
- name: Ensure all VMs are reachable
ansible.builtin.ping:
- name: Create /tmp/librepages/librepages
ansible.builtin.file:
path: /tmp/librepages/librepages
state: directory
recurse: true
- name: Create /etc/librepages/librepages
ansible.builtin.file:
path: /etc/librepages/librepages
state: directory
recurse: true
- name: Get LibrePages/LibrePages
get_url:
url: https://dl.librepages.org/librepages/librepages/master/librepages-master-linux-amd64.tar.gz
dest:
/tmp/librepages/librepages
# master branch build checksum keeps changing
# checksum: sha256:2478f65d0736e45e45c8c7deb420b73b7b020ed6eae4ec73724cbf974f4df50c
- name: Extract downloaded LibrePages/LibrePages
command: >-
tar -xzvf /tmp/librepages/librepages/librepages-master-linux-amd64.tar.gz
--directory /tmp/librepages/librepages
- name: Install LibrePages/LibrePages binary
command: >-
cp -f
/tmp/librepages/librepages/librepages-master-linux-amd64/librepages
/usr/bin/
- name: Copy configuration file
command: >-
cp -f
/tmp/librepages/librepages/librepages-master-linux-amd64/config/config.toml
/etc/librepages/librepages/
- name: Copy systemd file
command: >-
cp -f
/tmp/librepages/librepages/librepages-master-linux-amd64/contrib/librepages.service
/etc/systemd/system/
- name: "Create librepages/librepages database"
postgresql_db:
state: present
name: "librepages"
become: yes
become_user: postgres
- name: "Create db user"
postgresql_user:
state: present
name: "librepages"
password: "supercomplicatedpassword"
become: yes
become_user: postgres
- name: "Grant db user access to app db"
postgresql_privs:
type: database
database: "librepages"
roles: "librepages"
grant_option: no
privs: all
become: yes
become_user: postgres
- name: Added a librepages account
ansible.builtin.user:
name: librepages
shell: /bin/nologin

View File

@ -1,7 +1,7 @@
---
- name: Configure webservers
hosts: debainbasic
remote_user: root
remote_user: atm
tasks:
- name: Ensure all VMs are reachable
@ -30,6 +30,9 @@
- dnsutils
- bind9
- python3-setuptools
- postgresql
- postgresql-contrib
- python3-psycopg2
- name: Create /etc/apt/keyrings dir
ansible.builtin.file:
@ -107,6 +110,16 @@
state:
started
- name: "Find out if PostgreSQL is initialized"
ansible.builtin.stat:
path: "/var/lib/pgsql/data/pg_hba.conf"
register: postgres_data
- name: "Start and enable services"
service: "name={{ item }} state=started enabled=yes"
with_items:
- postgresql
# - debug: var=ansible_all_ipv4_addresses
# - debug: var=ansible_default_ipv4.address
@ -115,3 +128,6 @@
ansible.builtin.service:
name: nginx
state: restarted
- name: restart postgres
service: name=postgresql state=restarted