1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-03-09 15:40:17 +00:00

Merge pull request #363 from iiab/master

sync from iiab:master
This commit is contained in:
A Holt 2020-01-29 08:36:09 -05:00 committed by GitHub
commit e6711d26a6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 28 additions and 32 deletions

View file

@ -41,6 +41,7 @@
# Should we remove {xo_services, activity_server, ejabberd_xs, idmgr} as these # Should we remove {xo_services, activity_server, ejabberd_xs, idmgr} as these
# are officially now UNMAINTAINED in default_vars.yml and # are officially now UNMAINTAINED in default_vars.yml and
# https://github.com/iiab/iiab/blob/master/unmaintained-roles.txt etc? # https://github.com/iiab/iiab/blob/master/unmaintained-roles.txt etc?
- name: Set vars_checklist for 53 + 53 + up-to-53 vars ("XYZ_install" + "XYZ_enabled" + "XYZ_installed") to be checked - name: Set vars_checklist for 53 + 53 + up-to-53 vars ("XYZ_install" + "XYZ_enabled" + "XYZ_installed") to be checked
set_fact: set_fact:
vars_checklist: vars_checklist:
@ -101,47 +102,41 @@
- name: Assert that {{ vars_checklist | length }} "XYZ_install" vars are all... defined - name: Assert that {{ vars_checklist | length }} "XYZ_install" vars are all... defined
assert: assert:
that: "{{ item }}_install is defined" that: "{{ item }}_install is defined"
fail_msg: "PLEASE GIVE THIS VARIABLE A PROPER (UNQUOTED) BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "VARIABLE MUST BE DEFINED: '{{ item }}_install' NEEDS A PROPER (UNQUOTED) ANSIBLE BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml"
quiet: yes quiet: yes
loop: "{{ vars_checklist }}" loop: "{{ vars_checklist }}"
#register: install_vars_defined
- name: Assert that {{ vars_checklist | length }} "XYZ_enabled" vars are all... defined - name: Assert that {{ vars_checklist | length }} "XYZ_enabled" vars are all... defined
assert: assert:
that: "{{ item }}_enabled is defined" that: "{{ item }}_enabled is defined"
fail_msg: "PLEASE GIVE THIS VARIABLE A PROPER (UNQUOTED) BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "VARIABLE MUST BE DEFINED: '{{ item }}_enabled' NEEDS A PROPER (UNQUOTED) ANSIBLE BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml"
quiet: yes quiet: yes
loop: "{{ vars_checklist }}" loop: "{{ vars_checklist }}"
#register: enabled_vars_defined
- name: Assert that {{ vars_checklist | length }} "XYZ_install" vars are all... type boolean (NOT type string, which can invert logic!) - name: Assert that {{ vars_checklist | length }} "XYZ_install" vars are all... type boolean (NOT type string, which can invert logic!)
assert: assert:
that: "{{ item }}_install | type_debug == 'bool'" that: "{{ item }}_install | type_debug == 'bool'"
fail_msg: "PLEASE GIVE THIS VARIABLE A PROPER (UNQUOTED) BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "VARIABLE MUST BE BOOLEAN: '{{ item }}_install' now has type '{{ lookup('vars', item + '_install') | type_debug }}' and value '{{ lookup('vars', item + '_install') }}' -- PLEASE SET A PROPER (UNQUOTED) ANSIBLE BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml"
quiet: yes quiet: yes
loop: "{{ vars_checklist }}" loop: "{{ vars_checklist }}"
#register: install_vars_boolean
- name: Assert that {{ vars_checklist | length }} "XYZ_enabled" vars are all... type boolean (NOT type string, which can invert logic!) - name: Assert that {{ vars_checklist | length }} "XYZ_enabled" vars are all... type boolean (NOT type string, which can invert logic!)
assert: assert:
that: "{{ item }}_enabled | type_debug == 'bool'" that: "{{ item }}_enabled | type_debug == 'bool'"
fail_msg: "PLEASE GIVE THIS VARIABLE A PROPER (UNQUOTED) BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "VARIABLE MUST BE BOOLEAN: '{{ item }}_enabled' now has type '{{ lookup('vars', item + '_enabled') | type_debug }}' and value '{{ lookup('vars', item + '_enabled') }}' -- PLEASE SET A PROPER (UNQUOTED) ANSIBLE BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml"
quiet: yes quiet: yes
loop: "{{ vars_checklist }}" loop: "{{ vars_checklist }}"
#register: enabled_vars_boolean
- name: 'DISALLOW "XYZ_install: False" WITH "XYZ_enabled: True" ...for all {{ vars_checklist | length }} var pairs' - name: 'DISALLOW "XYZ_install: False" WITH "XYZ_enabled: True" ...for all {{ vars_checklist | length }} var pairs'
assert: assert:
that: "{{ item }}_install or not {{ item }}_enabled" that: "{{ item }}_install or not {{ item }}_enabled"
fail_msg: "IIAB DOES NOT SUPPORT UNINSTALLS. PLEASE VERIFY {{ item }}_install AND {{ item }}_enabled e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "DISALLOWED: '{{ item }}_install: False' WITH '{{ item }}_enabled: True' -- IIAB DOES NOT SUPPORT UNINSTALLS -- please verify those 2 variable values e.g. in /etc/iiab/local_vars.yml, and other places variables are defined?"
#fail_msg: '{{ item }}_install or not {{ item }}_enabled {{ item }}_install is {{ {{ item }}_install }} {{ item }}_enabled is {{ {{ item }}_enabled }}' # Is there a way to output var values ?
quiet: yes quiet: yes
loop: "{{ vars_checklist }}" loop: "{{ vars_checklist }}"
#register: var_pairs_validation
- name: 'DISALLOW "XYZ_install: False" WHEN "XYZ_installed is defined" IN /etc/iiab/iiab_state.yml ...for up-to-{{ vars_checklist | length }} var pairs' - name: 'DISALLOW "XYZ_install: False" WHEN "XYZ_installed is defined" IN /etc/iiab/iiab_state.yml ...for up-to-{{ vars_checklist | length }} var pairs'
assert: assert:
that: "{{ item }}_install or {{ item }}_installed is undefined" that: "{{ item }}_install or {{ item }}_installed is undefined"
fail_msg: "{{ item }} ALREADY INSTALLED. IIAB DOES NOT SUPPORT UNINSTALLS. PLEASE SET '{{ item }}_install: True' e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "DISALLOWED: '{{ item }}_install: False' (e.g. in /etc/iiab/local_vars.yml) WHEN '{{ item }}_installed' is defined (e.g. in /etc/iiab/iiab_state.yml) -- IIAB DOES NOT SUPPORT UNINSTALLS -- please verify those 2 files especially, and other places variables are defined?"
quiet: yes quiet: yes
loop: "{{ vars_checklist }}" loop: "{{ vars_checklist }}"

View file

@ -15,7 +15,7 @@
- name: Assert that "captiveportal_enabled | type_debug == 'bool'" (boolean not string etc) - name: Assert that "captiveportal_enabled | type_debug == 'bool'" (boolean not string etc)
assert: assert:
that: captiveportal_enabled | type_debug == 'bool' that: captiveportal_enabled | type_debug == 'bool'
fail_msg: "PLEASE GIVE VARIABLE 'captiveportal_enabled' A PROPER (UNQUOTED) BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "PLEASE GIVE VARIABLE 'captiveportal_enabled' A PROPER (UNQUOTED) ANSIBLE BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml"
quiet: yes quiet: yes

View file

@ -5,7 +5,7 @@
# If nec, change them by editing /etc/iiab/local_vars.yml prior to installing! # If nec, change them by editing /etc/iiab/local_vars.yml prior to installing!
# Info needed to install Lokole # Info needed to install Lokole
lokole_version: 0.5.7 lokole_version: 0.5.9
lokole_admin_user: admin # lowercase seems nec here (even though uppercase Admin/changeme is IIAB's OOB recommendation!) lokole_admin_user: admin # lowercase seems nec here (even though uppercase Admin/changeme is IIAB's OOB recommendation!)
lokole_admin_password: changeme lokole_admin_password: changeme
lokole_install_path: "{{ content_base }}/lokole" # /library/lokole lokole_install_path: "{{ content_base }}/lokole" # /library/lokole

View file

@ -29,3 +29,4 @@ mediawiki_abs_path: "{{ mediawiki_install_path }}/mediawiki-{{ mediawiki_version
mediawiki_url: /wiki mediawiki_url: /wiki
mediawiki_url2: /mediawiki mediawiki_url2: /mediawiki
mediawiki_full_url: "http://{{ iiab_hostname }}.{{ iiab_domain }}{{ mediawiki_url }}" # http://box.lan/wiki mediawiki_full_url: "http://{{ iiab_hostname }}.{{ iiab_domain }}{{ mediawiki_url }}" # http://box.lan/wiki
mediawiki_symlink: w # can also be mwlink. NO slashes as they are suppplied as needed in the code

View file

@ -18,15 +18,15 @@
unarchive: unarchive:
src: "{{ downloads_dir }}/{{ mediawiki_src }}" src: "{{ downloads_dir }}/{{ mediawiki_src }}"
dest: "{{ mediawiki_install_path }}" dest: "{{ mediawiki_install_path }}"
owner: root owner: "{{ apache_user }}"
group: "{{ apache_user }}" group: "{{ apache_user }}"
mode: u+rw,g+r,o+r # '0755' forced executable bits on files mode: u+rw,g+r,o+r # '0755' forced executable bits on files
keep_newer: yes keep_newer: yes
- name: Create symlink {{ doc_root }}/mwlink -> {{ mediawiki_abs_path }} - name: Create symlink {{ doc_root }}/{{ mediawiki_symlink }} -> {{ mediawiki_abs_path }}
file: file:
src: "{{ mediawiki_abs_path }}" src: "{{ mediawiki_abs_path }}"
path: "{{ doc_root }}/mwlink" path: "{{ doc_root }}/{{ mediawiki_symlink }}"
state: link state: link
- name: Start MySQL systemd service ({{ mysql_service }}) so we can create db - name: Start MySQL systemd service ({{ mysql_service }}) so we can create db
@ -55,7 +55,7 @@
--installdbpass={{ mediawiki_db_user_password }} --installdbpass={{ mediawiki_db_user_password }}
--dbuser={{ mediawiki_db_user }} --dbuser={{ mediawiki_db_user }}
--dbpass={{ mediawiki_db_user_password }} --dbpass={{ mediawiki_db_user_password }}
--scriptpath=/mwlink --scriptpath=/{{ mediawiki_symlink }}
--lang=en --lang=en
--pass={{ mediawiki_admin_user_password }} --pass={{ mediawiki_admin_user_password }}
"{{ mediawiki_site_name }}" "{{ mediawiki_site_name }}"

View file

@ -1,31 +1,31 @@
# this works if (docroot)/mwlink links to install # this works if (docroot)/{{ mediawiki_symlink }} links to install
# and LocalSettings.php has # and LocalSettings.php has
# $wgScriptPath = "/mwlink"; # $wgScriptPath = "/{{ mediawiki_symlink }}";
# $wgArticlePath = "/wiki/$1"; # $wgArticlePath = "/wiki/$1";
# $wgUsePathInfo = true; # $wgUsePathInfo = true;
location ~ ^/mwlink/(index|load|api|thumb|opensearch_desc)\.php$ { location ~ ^/{{ mediawiki_symlink }}/(index|load|api|thumb|opensearch_desc)\.php$ {
include fastcgi_params; include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass php; # or whatever port your PHP-FPM listens on fastcgi_pass php; # or whatever port your PHP-FPM listens on
} }
# Images # Images
location /mwlink/images { location /{{ mediawiki_symlink }}/images {
# Separate location for images/ so .php execution won't apply # Separate location for images/ so .php execution won't apply
} }
location /mwlink/images/deleted { location /{{ mediawiki_symlink }}/images/deleted {
# Deny access to deleted images folder # Deny access to deleted images folder
deny all; deny all;
} }
# MediaWiki assets (usually images) # MediaWiki assets (usually images)
location ~ ^/mwlink/resources/(assets|lib|src) { location ~ ^/{{ mediawiki_symlink }}/resources/(assets|lib|src) {
try_files $uri 404; try_files $uri 404;
add_header Cache-Control "public"; add_header Cache-Control "public";
expires 7d; expires 7d;
} }
# Assets, scripts and styles from skins and extensions # Assets, scripts and styles from skins and extensions
location ~ ^/mwlink/(skins|extensions)/.+\.(css|js|gif|jpg|jpeg|png|svg)$ { location ~ ^/{{ mediawiki_symlink }}/(skins|extensions)/.+\.(css|js|gif|jpg|jpeg|png|svg|ttf|woff|woff2)$ {
try_files $uri 404; try_files $uri 404;
add_header Cache-Control "public"; add_header Cache-Control "public";
expires 7d; expires 7d;
@ -34,18 +34,18 @@ location ~ ^/mwlink/(skins|extensions)/.+\.(css|js|gif|jpg|jpeg|png|svg)$ {
## Uncomment the following code if you wish to use the installer/updater ## Uncomment the following code if you wish to use the installer/updater
## installer/updater ## installer/updater
#location /mwlink/mw-config/ { #location /{{ mediawiki_symlink }}/mw-config/ {
# # Do this inside of a location so it can be negated # # Do this inside of a location so it can be negated
# location ~ \.php$ { # location ~ \.php$ {
# include /etc/nginx/fastcgi_params; # include /etc/nginx/fastcgi_params;
# fastcgi_param SCRIPT_FILENAME $document_root/mwlink/mw-config/$fastcgi_script_name; # fastcgi_param SCRIPT_FILENAME $document_root/{{ mediawiki_symlink }}/mw-config/$fastcgi_script_name;
# fastcgi_pass 127.0.0.1:9000; # or whatever port your PHP-FPM listens on # fastcgi_pass 127.0.0.1:9000; # or whatever port your PHP-FPM listens on
# } # }
#} #}
# Handling for the article path (pretty URLs) # Handling for the article path (pretty URLs)
location {{ mediawiki_url }}/ { location {{ mediawiki_url }}/ {
rewrite ^{{ mediawiki_url }}/(?<pagename>.*)$ /mwlink/index.php; rewrite ^{{ mediawiki_url }}/(?<pagename>.*)$ /{{ mediawiki_symlink }}/index.php;
} }
# Explicit access to the root website, redirect to main page (adapt as needed) # Explicit access to the root website, redirect to main page (adapt as needed)

View file

@ -15,7 +15,7 @@
- name: Assert that "munin_enabled | type_debug == 'bool'" (boolean not string etc) - name: Assert that "munin_enabled | type_debug == 'bool'" (boolean not string etc)
assert: assert:
that: munin_enabled | type_debug == 'bool' that: munin_enabled | type_debug == 'bool'
fail_msg: "PLEASE GIVE VARIABLE 'munin_enabled' A PROPER (UNQUOTED) BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "PLEASE GIVE VARIABLE 'munin_enabled' A PROPER (UNQUOTED) ANSIBLE BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml"
quiet: yes quiet: yes

View file

@ -15,7 +15,7 @@
- name: Assert that "osm_vector_maps_enabled | type_debug == 'bool'" (boolean not string etc) - name: Assert that "osm_vector_maps_enabled | type_debug == 'bool'" (boolean not string etc)
assert: assert:
that: osm_vector_maps_enabled | type_debug == 'bool' that: osm_vector_maps_enabled | type_debug == 'bool'
fail_msg: "PLEASE GIVE VARIABLE 'osm_vector_maps_enabled' A PROPER (UNQUOTED) BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "PLEASE GIVE VARIABLE 'osm_vector_maps_enabled' A PROPER (UNQUOTED) ANSIBLE BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml"
quiet: yes quiet: yes

View file

@ -17,7 +17,7 @@
- name: Assert that "wordpress_enabled | type_debug == 'bool'" (boolean not string etc) - name: Assert that "wordpress_enabled | type_debug == 'bool'" (boolean not string etc)
assert: assert:
that: wordpress_enabled | type_debug == 'bool' that: wordpress_enabled | type_debug == 'bool'
fail_msg: "PLEASE GIVE VARIABLE 'wordpress_enabled' A PROPER (UNQUOTED) BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml" fail_msg: "PLEASE GIVE VARIABLE 'wordpress_enabled' A PROPER (UNQUOTED) ANSIBLE BOOLEAN VALUE e.g. IN: /etc/iiab/local_vars.yml"
quiet: yes quiet: yes