Miniflux mit Ansible auf Freebsd installieren
Bisher verwende ich den RSS Feed Reader ttrss. Eigentlich bin ich damit zufrieden aber das Design und die Komplexität der Installation haben bei mir den Entschluss reifen lassen diesen Reader bei der nächsten Gelegenheit gegen Miniflux zu tauschen. Eine defekte SD Karte in dem Raspberry Pi erforderten nun diesen Schritt.
Seit einiger Zeit versuche ich soweit wie möglich die Jails auf meinem Freenas mit Ansible zu verwenden. Zu meiner Überaschung ging das eigentlich recht zügig. Hier das Playbook ohne die Anteile Letsencrypt, Nginx und Postgres DB export. Nur den letzten Befehl für das Anlegen des Admins konnte ich nicht mehr automatisieren. Da ich aber eh beim nächsten mal automatisiert das Backup der Datenbank einspielen werden ist das nicht weiter tragisch.
Wichtig: Wahrscheinlich nicht sicher. Nur in sicheren Umgebungen verwenden
- hosts: miniflux
become: yes
roles:
- freebsd-letsencrypt
- freebsd-nginx
- restic
- postgresql-backup
postgresql_backup_dir: /root/postgresql-backups
tasks:
- name: Add packages on FreeBSD
pkgng:
name: rsync,curl,git, htop, bash
- name: Add postgresql
pkgng:
name: ""
with_items:
- postgresql96-server
- postgresql96-client
- postgresql96-contrib
- py37-pip
- name: Enable the postgres service
shell: "sysrc postgresql_enable=yes"
- name: Intialize the database
shell: service postgresql initdb
args:
creates: "/var/db/postgres/data96"
- name: Start database
service:
name: postgresql
state: started
- name: Pip install into system python
pip:
name: ""
executable: pip-3.7
with_items:
- psycopg2
- name: Create a new database
postgresql_db:
name: miniflux2
- name: create a miniflux user
postgresql_user:
db: miniflux2
name: miniflux
password: miniflux
role_attr_flags: SUPERUSER
- name: Adds extension to the database
postgresql_ext:
name: hstore
db: miniflux2
- name: Add miniflux
pkgng:
name: miniflux
- name: Run the SQL migrations
shell: "/usr/local/bin/miniflux -migrate"
- name: Enable service miniflux, and not touch the state
service:
name: miniflux
enabled: yes
- name: Start service miniflux, if not started
service:
name: miniflux
state: started
# - name: Create an admin user by hand
# shell: "/usr/local/bin/miniflux -create-admin"