--- # The home-server project produces a multi-purpose setup using Ansible. # Copyright © 2018 Y. Gablin, under the GPL-3.0-or-later license. # Full licensing information in the LICENSE file, or gnu.org/licences/gpl-3.0.txt if the file is missing. ### UPSTREAM BEGIN ⇒ ### - name: pull prerequisites from upstream include_role: name=etckeeper.inc allow_duplicates=true tasks_from=upstream.yml vars: msg: wallabag ### ⇐ UPSTREAM BEGIN ### - name: install AUR software include_role: name: aur.inc allow_duplicates: true vars: packages: - wallabag aur_user: git ### UPSTREAM END ⇒ ### - name: merge upstream include_role: name=etckeeper.inc allow_duplicates=true tasks_from=merge.yml vars: msg: wallabag ### ⇐ UPSTREAM END ### - name: configure wallabag lineinfile: path: /etc/webapps/wallabag/parameters.yml regexp: '^\s*{{item.key}}:' line: ' {{item.key}}: {{item.value}}' with_dict: database_driver: pdo_pgsql database_host: /run/shared_sockets database_port: 5432 database_name: '{{wallabag_db}}' database_user: '{{wallabag_db_user}}' database_password: '{{wallabag_db_password}}' database_path: 'null' database_table_prefix: wallabag_ database_socket: 'null' locale: '{{locales_default | truncate(2, True, "", 0)}}' #- name: check that wallabag is already initialized # shell: > # grep -E '^[[:blank:]]*init_done:[[:blank:]]*true$' # /etc/webapps/wallabag/parameters.yml || true # register: check_init_wallabag # changed_when: false # #- name: run the initialization script # command: > # ./bin/console wallabag:install -e prod --quiet --no-interaction --no-debug # become: true # become_user: http # args: # chdir: /usr/share/webapps/wallabag # when: # - ((check_init_wallabag.stdout is not defined) or (check_init_wallabag.stdout == '')) # #- name: initialization done # lineinfile: # path: /etc/webapps/wallabag/parameters.yml # regexp: '^\s*init_done:' # line: ' init_done: true' - name: configure nginx for wallabag copy: content: | location {{http_pfx_wallabag}} { alias /usr/share/webapps/wallabag/web; try_files $uri @wallabag; } location @wallabag { rewrite ^ {{http_pfx_wallabag}}/app.php/$is_args$args; } location ~ ^{{http_pfx_wallabag}}/app\.php(/|$) { alias /usr/share/webapps/wallabag/web; rewrite ^({{http_pfx_wallabag}})(/.*?\.php)(/.*)?$ /php...$document_root/...$1/...$2/...$3 last; } location ~ ^{{http_pfx_wallabag}}.*\.php$ { return 404; } dest: /etc/nginx/inc.d/wallabag.https.inc mode: 0440 owner: http group: http notify: - restart nginx.service ### LOCAL COMMIT ⇒ ### - name: commit local changes include_role: name=etckeeper.inc allow_duplicates=true tasks_from=local.yml vars: msg: wallabag ### ⇐ LOCAL COMMIT ### - meta: flush_handlers