summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Quotengrote <38253905+quotengrote@users.noreply.github.com> 2020-10-27 22:37:29 +0100
committerGravatar GitHub <noreply@github.com> 2020-10-27 14:37:29 -0700
commite74bf260c64b1795bf6768f5f6d3ce6aae50700c (patch)
tree46a32185cd4029e7efe81633ff3ed6194aa2ee1c
parent99f20868ad4d576152fbbcfb69ae16953008ab92 (diff)
downloadv2-e74bf260c64b1795bf6768f5f6d3ce6aae50700c.tar.gz
v2-e74bf260c64b1795bf6768f5f6d3ce6aae50700c.tar.zst
v2-e74bf260c64b1795bf6768f5f6d3ce6aae50700c.zip
Added Ansible Role + Playbook for Miniflux
-rw-r--r--contrib/ansible/inventories/group_vars/miniflux_vars.yml8
-rw-r--r--contrib/ansible/playbooks/playbook.yml4
-rw-r--r--contrib/ansible/roles/mgrote.miniflux/README.md23
-rw-r--r--contrib/ansible/roles/mgrote.miniflux/defaults/main.yml0
-rw-r--r--contrib/ansible/roles/mgrote.miniflux/handlers/main.yml11
-rw-r--r--contrib/ansible/roles/mgrote.miniflux/tasks/main.yml43
-rw-r--r--contrib/ansible/roles/mgrote.miniflux/templates/miniflux.conf18
7 files changed, 107 insertions, 0 deletions
diff --git a/contrib/ansible/inventories/group_vars/miniflux_vars.yml b/contrib/ansible/inventories/group_vars/miniflux_vars.yml
new file mode 100644
index 00000000..8884772d
--- /dev/null
+++ b/contrib/ansible/inventories/group_vars/miniflux_vars.yml
@@ -0,0 +1,8 @@
+---
+ miniflux_linux_user: miniflux
+ miniflux_db_user_name: miniflux_db_user
+ miniflux_db_user_password: miniflux_db_user_password
+ miniflux_db: miniflux_db
+ miniflux_admin_name: admin
+ miniflux_admin_passwort: miniflux_admin_password
+ miniflux_port: 8080
diff --git a/contrib/ansible/playbooks/playbook.yml b/contrib/ansible/playbooks/playbook.yml
new file mode 100644
index 00000000..05c3b4e9
--- /dev/null
+++ b/contrib/ansible/playbooks/playbook.yml
@@ -0,0 +1,4 @@
+---
+- hosts: miniflux
+ roles:
+ - { role: mgrote.miniflux, tags: "miniflux" } \ No newline at end of file
diff --git a/contrib/ansible/roles/mgrote.miniflux/README.md b/contrib/ansible/roles/mgrote.miniflux/README.md
new file mode 100644
index 00000000..ba1c9419
--- /dev/null
+++ b/contrib/ansible/roles/mgrote.miniflux/README.md
@@ -0,0 +1,23 @@
+## mgrote.miniflux
+
+### Details
+Installs and configures Miniflux v2 with ansible
+
+### Works on...
+- [x] Ubuntu (>=18.04)
+
+### Variables and Defaults
+##### Linux User
+ miniflux_linux_user: miniflux
+##### DB User
+ miniflux_db_user_name: miniflux_db_user
+##### DB Password
+ miniflux_db_user_password: qqqqqqqqqqqqq
+##### Database
+ miniflux_db: miniflux_db
+##### Username Miniflux Admin
+ miniflux_admin_name: admin
+##### Password Miniflux Admin
+ miniflux_admin_passwort: hallowelt
+##### Port for Miniflux Frontend
+ miniflux_port: 8080
diff --git a/contrib/ansible/roles/mgrote.miniflux/defaults/main.yml b/contrib/ansible/roles/mgrote.miniflux/defaults/main.yml
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/contrib/ansible/roles/mgrote.miniflux/defaults/main.yml
diff --git a/contrib/ansible/roles/mgrote.miniflux/handlers/main.yml b/contrib/ansible/roles/mgrote.miniflux/handlers/main.yml
new file mode 100644
index 00000000..6ab1fe05
--- /dev/null
+++ b/contrib/ansible/roles/mgrote.miniflux/handlers/main.yml
@@ -0,0 +1,11 @@
+---
+ - name: start_miniflux.service
+ become: yes
+ systemd:
+ name: miniflux
+ state: restarted
+ enabled: yes
+# wait 15 seconds(for systemd)
+ - name: miniflux_wait
+ wait_for:
+ timeout: 15
diff --git a/contrib/ansible/roles/mgrote.miniflux/tasks/main.yml b/contrib/ansible/roles/mgrote.miniflux/tasks/main.yml
new file mode 100644
index 00000000..3aaf3210
--- /dev/null
+++ b/contrib/ansible/roles/mgrote.miniflux/tasks/main.yml
@@ -0,0 +1,43 @@
+ - name: add Apt-key for miniflux-repo
+ become: yes
+ apt_key:
+ url: https://apt.miniflux.app/KEY.gpg
+ state: present
+
+ - name: add miniflux-repo
+ become: yes
+ apt_repository:
+ repo: 'deb https://apt.miniflux.app/ /'
+ state: present
+ filename: miniflux_repo
+ update_cache: yes
+
+ - name: install miniflux
+ become: yes
+ apt:
+ name: miniflux
+ state: present
+
+ - name: add miniflux linux_user
+ become: yes
+ user:
+ name: "{{ miniflux_linux_user }}"
+ home: "/var/empty"
+ create_home: "no"
+ system: "yes"
+ shell: "/bin/false"
+
+ - name: create directory "/etc/miniflux.d"
+ become: yes
+ file:
+ path: /etc/miniflux.d
+ state: directory
+
+ - name: copy miniflux.conf
+ become: yes
+ template:
+ src: "miniflux.conf"
+ dest: "/etc/miniflux.conf"
+ notify:
+ - start_miniflux.service
+ - miniflux_wait
diff --git a/contrib/ansible/roles/mgrote.miniflux/templates/miniflux.conf b/contrib/ansible/roles/mgrote.miniflux/templates/miniflux.conf
new file mode 100644
index 00000000..661b4917
--- /dev/null
+++ b/contrib/ansible/roles/mgrote.miniflux/templates/miniflux.conf
@@ -0,0 +1,18 @@
+# See https://docs.miniflux.app/
+
+LISTEN_ADDR=0.0.0.0:{{ miniflux_port }}
+DATABASE_URL=user={{ miniflux_db_user_name }} password={{ miniflux_db_user_password }} dbname={{ miniflux_db }} sslmode=disable
+
+POLLING_FREQUENCY=15
+PROXY_IMAGES=http-only
+
+# Run SQL migrations automatically:
+RUN_MIGRATIONS=1
+
+CREATE_ADMIN=1
+ADMIN_USERNAME={{ miniflux_admin_name }}
+ADMIN_PASSWORD={{ miniflux_admin_passwort }}
+
+POLLING_FREQUENCY=10
+
+# Options: https://miniflux.app/miniflux.1.html