Add tinytinyrss to ansible
This commit is contained in:
parent
0c6ef34cf6
commit
2b8aef7f9f
14 changed files with 95 additions and 78 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -15,6 +15,7 @@
|
||||||
/jellyfin/
|
/jellyfin/
|
||||||
/tandoor/
|
/tandoor/
|
||||||
/telegraf/
|
/telegraf/
|
||||||
|
/tinytinyrss/
|
||||||
/umami/
|
/umami/
|
||||||
/uptime-kuma/
|
/uptime-kuma/
|
||||||
/watchtower/
|
/watchtower/
|
||||||
|
@ -29,6 +30,7 @@
|
||||||
/caddy/config/conf.002.d/inventory.serguzim.me.conf
|
/caddy/config/conf.002.d/inventory.serguzim.me.conf
|
||||||
/caddy/config/conf.002.d/media.serguzim.me.conf
|
/caddy/config/conf.002.d/media.serguzim.me.conf
|
||||||
/caddy/config/conf.002.d/recipes.serguzim.me.conf
|
/caddy/config/conf.002.d/recipes.serguzim.me.conf
|
||||||
|
/caddy/config/conf.002.d/rss.serguzim.me.conf
|
||||||
/caddy/config/conf.002.d/status.serguzim.me.conf
|
/caddy/config/conf.002.d/status.serguzim.me.conf
|
||||||
/caddy/config/conf.002.d/tick.serguzim.me.conf
|
/caddy/config/conf.002.d/tick.serguzim.me.conf
|
||||||
/caddy/config/conf.002.d/webdis.huck.serguzim.me.conf
|
/caddy/config/conf.002.d/webdis.huck.serguzim.me.conf
|
||||||
|
|
|
@ -15,6 +15,11 @@ compose_file_main:
|
||||||
apps:
|
apps:
|
||||||
external: true
|
external: true
|
||||||
|
|
||||||
|
compose_file_depends_on:
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
depends_on: "{{ compose.depends_on }}"
|
||||||
|
|
||||||
compose_file_env:
|
compose_file_env:
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
|
|
|
@ -18,6 +18,7 @@
|
||||||
- jellyfin
|
- jellyfin
|
||||||
- tandoor
|
- tandoor
|
||||||
- telegraf
|
- telegraf
|
||||||
|
- tinytinyrss
|
||||||
- umami
|
- umami
|
||||||
- uptime-kuma
|
- uptime-kuma
|
||||||
- watchtower
|
- watchtower
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
- jellyfin
|
- jellyfin
|
||||||
- tandoor
|
- tandoor
|
||||||
- telegraf
|
- telegraf
|
||||||
|
- tinytinyrss
|
||||||
- umami
|
- umami
|
||||||
- uptime-kuma
|
- uptime-kuma
|
||||||
- watchtower
|
- watchtower
|
||||||
|
|
|
@ -17,7 +17,7 @@ http {
|
||||||
index index.php;
|
index index.php;
|
||||||
|
|
||||||
upstream app {
|
upstream app {
|
||||||
server tt-rss-app:9000;
|
server tt-rss:9000;
|
||||||
}
|
}
|
||||||
|
|
||||||
server {
|
server {
|
16
_ansible/roles/tinytinyrss/tasks/main.yml
Normal file
16
_ansible/roles/tinytinyrss/tasks/main.yml
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
---
|
||||||
|
- name: Deploy {{ svc.name }}
|
||||||
|
tags:
|
||||||
|
- tinytinyrss
|
||||||
|
- tt-rss
|
||||||
|
- news
|
||||||
|
block:
|
||||||
|
- import_tasks: prepare-common-service.yml
|
||||||
|
|
||||||
|
- name: Copy the nginx-config
|
||||||
|
ansible.builtin.copy:
|
||||||
|
src: nginx.conf
|
||||||
|
dest: "{{ (service_path, 'nginx.conf') | path_join }}"
|
||||||
|
mode: '0644'
|
||||||
|
|
||||||
|
- import_tasks: start-common-service.yml
|
56
_ansible/roles/tinytinyrss/vars/main.yml
Normal file
56
_ansible/roles/tinytinyrss/vars/main.yml
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
svc:
|
||||||
|
domain: "rss.serguzim.me"
|
||||||
|
name: tinytinyrss
|
||||||
|
port: 80
|
||||||
|
db:
|
||||||
|
host: "{{ postgres.host }}"
|
||||||
|
port: "{{ postgres.port }}"
|
||||||
|
database: tinytinyrss
|
||||||
|
user: "{{ vault_tinytinyrss.db.user }}"
|
||||||
|
pass: "{{ vault_tinytinyrss.db.pass }}"
|
||||||
|
|
||||||
|
svc_env:
|
||||||
|
TTRSS_DB_TYPE: pgsql
|
||||||
|
TTRSS_DB_HOST: "{{ svc.db.host }}"
|
||||||
|
TTRSS_DB_NAME: "{{ svc.db.database }}"
|
||||||
|
TTRSS_DB_USER: "{{ svc.db.user }}"
|
||||||
|
TTRSS_DB_PASS: "{{ svc.db.pass }}"
|
||||||
|
|
||||||
|
TTRSS_SELF_URL_PATH: https://{{ svc.domain }}/tt-rss/
|
||||||
|
|
||||||
|
compose:
|
||||||
|
watchtower: false
|
||||||
|
image: cthulhoo/ttrss-web-nginx
|
||||||
|
depends_on:
|
||||||
|
- tt-rss
|
||||||
|
env: true
|
||||||
|
volumes:
|
||||||
|
- app:/var/www/html:ro
|
||||||
|
- ./nginx.conf:/etc/nginx/nginx.conf
|
||||||
|
file:
|
||||||
|
services:
|
||||||
|
tt-rss:
|
||||||
|
image: cthulhoo/ttrss-fpm-pgsql-static
|
||||||
|
restart: always
|
||||||
|
env_file:
|
||||||
|
- service.env
|
||||||
|
volumes:
|
||||||
|
- app:/var/www/html
|
||||||
|
networks:
|
||||||
|
local-net:
|
||||||
|
|
||||||
|
updater:
|
||||||
|
image: cthulhoo/ttrss-fpm-pgsql-static
|
||||||
|
restart: always
|
||||||
|
env_file:
|
||||||
|
- service.env
|
||||||
|
volumes:
|
||||||
|
- app:/var/www/html
|
||||||
|
depends_on:
|
||||||
|
- tt-rss
|
||||||
|
command: /opt/tt-rss/updater.sh
|
||||||
|
networks:
|
||||||
|
local-net:
|
||||||
|
volumes:
|
||||||
|
app:
|
||||||
|
|
|
@ -1,7 +1,2 @@
|
||||||
- import_tasks: steps/create-service-directory.yml
|
- import_tasks: prepare-common-service.yml
|
||||||
- import_tasks: steps/template-docker-compose.yml
|
- import_tasks: start-common-service.yml
|
||||||
- import_tasks: steps/template-service-env.yml
|
|
||||||
when: compose.env|default(False) == True
|
|
||||||
- include_tasks: steps/template-site-config.yml
|
|
||||||
when: svc.domain is defined
|
|
||||||
- import_tasks: steps/start-service.yml
|
|
||||||
|
|
4
_ansible/tasks/prepare-common-service.yml
Normal file
4
_ansible/tasks/prepare-common-service.yml
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
- import_tasks: steps/create-service-directory.yml
|
||||||
|
- import_tasks: steps/template-docker-compose.yml
|
||||||
|
- import_tasks: steps/template-service-env.yml
|
||||||
|
when: compose.env|default(False) == True
|
3
_ansible/tasks/start-common-service.yml
Normal file
3
_ansible/tasks/start-common-service.yml
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
- include_tasks: steps/template-site-config.yml
|
||||||
|
when: svc.domain is defined
|
||||||
|
- import_tasks: steps/start-service.yml
|
|
@ -1,6 +1,10 @@
|
||||||
{%- set compose_file = compose.file | default({}) -%}
|
{%- set compose_file = compose.file | default({}) -%}
|
||||||
{%- set compose_file = compose_file_main | combine(compose_file, recursive=True) -%}
|
{%- set compose_file = compose_file_main | combine(compose_file, recursive=True) -%}
|
||||||
|
|
||||||
|
{%- if compose.depends_on | default(False) -%}
|
||||||
|
{%- set compose_file = compose_file | combine(compose_file_depends_on, recursive=True) -%}
|
||||||
|
{%- endif -%}
|
||||||
|
|
||||||
{%- if compose.env | default(False) -%}
|
{%- if compose.env | default(False) -%}
|
||||||
{%- set compose_file = compose_file | combine(compose_file_env, recursive=True) -%}
|
{%- set compose_file = compose_file | combine(compose_file_env, recursive=True) -%}
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
rss.serguzim.me {
|
|
||||||
import default
|
|
||||||
reverse_proxy tt-rss:80
|
|
||||||
}
|
|
15
tt-rss/.env
15
tt-rss/.env
|
@ -1,15 +0,0 @@
|
||||||
TTRSS_DB_USER=tinytinyrss
|
|
||||||
TTRSS_DB_NAME=tinytinyrss
|
|
||||||
TTRSS_DB_PASS=
|
|
||||||
TTRSS_DB_TYPE=pgsql
|
|
||||||
TTRSS_DB_HOST=db.serguzim.me
|
|
||||||
|
|
||||||
TTRSS_SELF_URL_PATH=https://rss.serguzim.me/tt-rss/
|
|
||||||
|
|
||||||
# You can customize other config.php defines by setting overrides here.
|
|
||||||
# See app/Dockerfile for complete list. Examples:
|
|
||||||
# TTRSS_PLUGINS=auth_remote
|
|
||||||
# TTRSS_SINGLE_USER_MODE=true
|
|
||||||
# TTRSS_SESSION_COOKIE_LIFETIME=2592000
|
|
||||||
# TTRSS_FORCE_ARTICLE_PURGE=30
|
|
||||||
# etc, etc.
|
|
|
@ -1,51 +0,0 @@
|
||||||
version: '3'
|
|
||||||
|
|
||||||
services:
|
|
||||||
app:
|
|
||||||
image: cthulhoo/ttrss-fpm-pgsql-static
|
|
||||||
restart: always
|
|
||||||
env_file:
|
|
||||||
- .env
|
|
||||||
- .secret.env
|
|
||||||
volumes:
|
|
||||||
- app:/var/www/html
|
|
||||||
networks:
|
|
||||||
local-net:
|
|
||||||
aliases:
|
|
||||||
- tt-rss-app
|
|
||||||
|
|
||||||
updater:
|
|
||||||
image: cthulhoo/ttrss-fpm-pgsql-static
|
|
||||||
restart: always
|
|
||||||
env_file:
|
|
||||||
- .env
|
|
||||||
- .secret.env
|
|
||||||
volumes:
|
|
||||||
- app:/var/www/html
|
|
||||||
depends_on:
|
|
||||||
- app
|
|
||||||
command: /opt/tt-rss/updater.sh
|
|
||||||
networks:
|
|
||||||
local-net:
|
|
||||||
|
|
||||||
web-nginx:
|
|
||||||
image: cthulhoo/ttrss-web-nginx
|
|
||||||
restart: always
|
|
||||||
volumes:
|
|
||||||
- app:/var/www/html:ro
|
|
||||||
- ./nginx.conf:/etc/nginx/nginx.conf
|
|
||||||
depends_on:
|
|
||||||
- app
|
|
||||||
networks:
|
|
||||||
local-net:
|
|
||||||
apps:
|
|
||||||
aliases:
|
|
||||||
- tt-rss
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
app:
|
|
||||||
|
|
||||||
networks:
|
|
||||||
local-net:
|
|
||||||
apps:
|
|
||||||
external: true
|
|
Reference in a new issue