♻: move freshrss app dir
All checks were successful
ansible-lint / lint-everything (push) Successful in 4s
All checks were successful
ansible-lint / lint-everything (push) Successful in 4s
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
- name: Check freshrss version
|
- name: Check freshrss version
|
||||||
ansible.builtin.lineinfile:
|
ansible.builtin.lineinfile:
|
||||||
path: "{{ freshrss_home }}/constants.php"
|
path: "{{ freshrss_app_home }}/constants.php"
|
||||||
line: "const FRESHRSS_VERSION = '{{ freshrss_version }}';"
|
line: "const FRESHRSS_VERSION = '{{ freshrss_version }}';"
|
||||||
state: present
|
state: present
|
||||||
check_mode: true
|
check_mode: true
|
||||||
|
@@ -1,40 +1,69 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
- name: Create application directory
|
## Remove the previous app & install the new version
|
||||||
|
- name: Remove freshrss previous version
|
||||||
|
ansible.builtin.file:
|
||||||
|
state: absent
|
||||||
|
dest: "{{ freshrss_app_home }}"
|
||||||
|
|
||||||
|
- name: Create app home
|
||||||
ansible.builtin.file:
|
ansible.builtin.file:
|
||||||
state: directory
|
state: directory
|
||||||
dest: "{{ freshrss_home }}"
|
dest: "{{ freshrss_app_home }}"
|
||||||
owner: root
|
owner: root
|
||||||
group: www-data
|
group: www-data
|
||||||
mode: "a-rwx,u+rwX,g+rX"
|
mode: "0o750"
|
||||||
|
|
||||||
- name: Install freshrss application
|
- name: Install freshrss application
|
||||||
ansible.builtin.unarchive:
|
ansible.builtin.unarchive:
|
||||||
remote_src: true
|
remote_src: true
|
||||||
src: "{{ freshrss_url }}"
|
src: "{{ freshrss_url }}"
|
||||||
dest: "{{ freshrss_home }}"
|
dest: "{{ freshrss_app_home }}"
|
||||||
owner: root
|
owner: root
|
||||||
group: www-data
|
group: www-data
|
||||||
mode: "a-rwx,u+rwX,g+rX"
|
mode: "a-rwx,u+rwX,g+rX"
|
||||||
extra_opts: ['--strip-components=1']
|
extra_opts: ['--strip-components=1']
|
||||||
exclude:
|
exclude: "{{ freshrss_userdata_app_dirs }}"
|
||||||
- "config/config.php"
|
|
||||||
|
|
||||||
|
## Ensure the data dirs exist, populate them if not
|
||||||
|
- name: Create data home
|
||||||
|
ansible.builtin.file:
|
||||||
|
state: directory
|
||||||
|
path: "{{ freshrss_data_home }}"
|
||||||
|
owner: www-data
|
||||||
|
group: www-data
|
||||||
|
mode: "a-rwx,u+rwX,g+rX"
|
||||||
|
|
||||||
|
# If the first data dir exists, other should exist too
|
||||||
|
- name: Get data dir
|
||||||
|
ansible.builtin.stat:
|
||||||
|
path: "{{ freshrss_data_home }}/{{ freshrss_userdata_app_dirs[0] }}"
|
||||||
|
register: _freshrss_userdata_dir_stat
|
||||||
|
|
||||||
|
- name: Install freshrss data dir
|
||||||
|
ansible.builtin.unarchive:
|
||||||
|
remote_src: true
|
||||||
|
src: "{{ freshrss_url }}"
|
||||||
|
dest: "{{ freshrss_data_home }}"
|
||||||
|
owner: www-data
|
||||||
|
group: www-data
|
||||||
|
mode: "a-rwx,u+rwX,g+rX"
|
||||||
|
extra_opts: ['--strip-components=1']
|
||||||
|
include: "{{ freshrss_userdata_app_dirs | map('regex_replace', '^', 'FreshRSS-' ~ freshrss_version ~ '/') }}"
|
||||||
|
when: not _freshrss_userdata_dir_stat.stat.exists
|
||||||
|
|
||||||
|
- name: Link FreshRSS userdata dirs
|
||||||
|
ansible.builtin.file:
|
||||||
|
state: link
|
||||||
|
src: "{{ freshrss_data_home }}/{{ item }}"
|
||||||
|
dest: "{{ freshrss_app_home }}/{{ item }}"
|
||||||
|
loop: "{{ freshrss_userdata_app_dirs }}"
|
||||||
|
|
||||||
|
# Config file is inside `data/`, so we must put it last
|
||||||
- name: Put freshrss configuration file
|
- name: Put freshrss configuration file
|
||||||
ansible.builtin.template:
|
ansible.builtin.template:
|
||||||
src: config.php.j2
|
src: config.php.j2
|
||||||
dest: "{{ freshrss_config_path }}"
|
dest: "{{ freshrss_config_path }}"
|
||||||
owner: root
|
owner: www-data
|
||||||
group: www-data
|
group: www-data
|
||||||
mode: "0o660"
|
mode: "0o640"
|
||||||
|
|
||||||
- name: Check writable dirs
|
|
||||||
ansible.builtin.file:
|
|
||||||
state: directory
|
|
||||||
dest: "{{ freshrss_home }}/{{ item }}"
|
|
||||||
owner: root
|
|
||||||
group: www-data
|
|
||||||
mode: "g+w"
|
|
||||||
recurse: true
|
|
||||||
loop:
|
|
||||||
- "data"
|
|
||||||
|
@@ -5,4 +5,4 @@ Wants=freshrss.timer
|
|||||||
[Service]
|
[Service]
|
||||||
User=www-data
|
User=www-data
|
||||||
Type=simple
|
Type=simple
|
||||||
ExecStart=/usr/bin/php {{ freshrss_home }}/app/actualize_script.php
|
ExecStart=/usr/bin/php {{ freshrss_app_home }}/app/actualize_script.php
|
||||||
|
@@ -4,5 +4,12 @@ freshrss_version: "1.26.0"
|
|||||||
freshrss_url: "https://github.com/FreshRSS/FreshRSS/archive/refs/tags/{{ freshrss_version }}.tar.gz"
|
freshrss_url: "https://github.com/FreshRSS/FreshRSS/archive/refs/tags/{{ freshrss_version }}.tar.gz"
|
||||||
|
|
||||||
freshrss_access_url: "{{ web_hostname | selectattr('type', 'defined') | selectattr('type', '==', 'freshrss') | map(attribute='host') | first }}"
|
freshrss_access_url: "{{ web_hostname | selectattr('type', 'defined') | selectattr('type', '==', 'freshrss') | map(attribute='host') | first }}"
|
||||||
freshrss_home: "/srv/http/{{ freshrss_access_url }}"
|
|
||||||
freshrss_config_path: "{{ freshrss_home }}/data/config.php"
|
# Access path
|
||||||
|
freshrss_app_home: "/var/www/{{ freshrss_access_url }}"
|
||||||
|
freshrss_data_home: "/srv/www-data/{{ freshrss_access_url }}"
|
||||||
|
freshrss_config_path: "{{ freshrss_app_home }}/data/config.php"
|
||||||
|
|
||||||
|
# App dirs
|
||||||
|
freshrss_userdata_app_dirs:
|
||||||
|
- data
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
server {
|
server {
|
||||||
{% include './templates/header.conf.j2' %}
|
{% include './templates/header.conf.j2' %}
|
||||||
root /srv/http/rss.libertus.eu/p;
|
root /var/www/rss.libertus.eu/p;
|
||||||
index index.html index.htm index.php;
|
index index.html index.htm index.php;
|
||||||
|
|
||||||
location ~ \.(js|css|png|jpg|jpeg|gif|svg|svgz)$ {
|
location ~ \.(js|css|png|jpg|jpeg|gif|svg|svgz)$ {
|
||||||
|
Reference in New Issue
Block a user