diff --git a/iiab-support.yml b/iiab-support.yml index 22b48df3c..170d0cf24 100644 --- a/iiab-support.yml +++ b/iiab-support.yml @@ -11,4 +11,4 @@ - { role: 0-init, tags: ['0-init'] } #- { role: 1-prep, tags: ['1-prep', 'platform', 'base'] } - { role: 1-prep, tags: ['1-prep'] } - - { role: openvpn, tags: ['openvpn'] } + #- { role: openvpn, tags: ['openvpn'] } # no longer nec, as 1-prep calls role openvpn (2018-09-19) diff --git a/roles/1-prep/tasks/main.yml b/roles/1-prep/tasks/main.yml index b0f2df3fe..4fc6da152 100644 --- a/roles/1-prep/tasks/main.yml +++ b/roles/1-prep/tasks/main.yml @@ -43,6 +43,12 @@ # has no "when: XXXXX_install" flag tags: base, sshd +- name: IIAB-ADMIN + include_role: + name: iiab-admin + # has no "when: XXXXX_install" flag + tags: base, iiab-admin + - name: OPENVPN include_role: name: openvpn diff --git a/roles/2-common/tasks/packages.yml b/roles/2-common/tasks/packages.yml index f64c25936..31284dc9c 100644 --- a/roles/2-common/tasks/packages.yml +++ b/roles/2-common/tasks/packages.yml @@ -14,16 +14,22 @@ - avahi-tools when: is_redhat -- name: Download usbmount -- not in Debian Stretch (debian-9) - get_url: - url: "{{ iiab_download_url }}/usbmount_0.0.14.1_all.deb" - dest: "{{ downloads_dir }}" - timeout: "{{ download_timeout }}" +- name: Download & install usbmount, missing from Debian Stretch (debian-9) + apt: + deb: "{{ iiab_download_url }}/usbmount_0.0.14.1_all.deb" + #timeout: "{{ download_timeout }}" # Ansible's apt module doesn't support timeout parameter; that's ok as usbmount_0.0.14.1_all.deb is only 10KB when: internet_available and is_debian_9 -- name: Install usbmount (debian-9) - command: apt install -y {{ downloads_dir }}/usbmount_0.0.14.1_all.deb - when: is_debian_9 +#- name: Download usbmount -- not in Debian Stretch (debian-9) +# get_url: +# url: "{{ iiab_download_url }}/usbmount_0.0.14.1_all.deb" +# dest: "{{ downloads_dir }}" +# timeout: "{{ download_timeout }}" +# when: internet_available and is_debian_9 +# +#- name: Install usbmount (debian-9) +# command: apt install -y {{ downloads_dir }}/usbmount_0.0.14.1_all.deb +# when: is_debian_9 - name: Install packages (debuntu) package: @@ -48,7 +54,7 @@ - mlocate - rsync - htop - - etckeeper + #- etckeeper # "nobody is really using etckeeper and it's bloating the filesystem every time apt runs" per @jvonau at https://github.com/iiab/iiab/issues/1146 - python-passlib - usbmount - net-tools @@ -65,7 +71,7 @@ - usbutils - hostapd - wget - - openssl #FC 18 does not supply, but pear requires + - openssl # FC 18 does not supply, but pear requires - gawk - curl - pandoc diff --git a/roles/3-base-server/tasks/main.yml b/roles/3-base-server/tasks/main.yml index 5443c2523..7efb55682 100644 --- a/roles/3-base-server/tasks/main.yml +++ b/roles/3-base-server/tasks/main.yml @@ -9,12 +9,6 @@ # has no "when: XXXXX_install" flag tags: base, httpd -- name: IIAB-ADMIN - include_role: - name: iiab-admin - # has no "when: XXXXX_install" flag - tags: base, iiab-admin - - name: MYSQL include_role: name: mysql diff --git a/roles/iiab-admin/README.rst b/roles/iiab-admin/README.rst index 01f202d6e..6cc26b69e 100644 --- a/roles/iiab-admin/README.rst +++ b/roles/iiab-admin/README.rst @@ -1,5 +1,16 @@ +.. |ss| raw:: html + + + +.. |se| raw:: html + + + +.. |nbsp| unicode:: 0xA0 + :trim: + ================= -IIAB Admin README +iiab-admin README ================= This role is home to a number of administrative playbooks. Those implemented are: @@ -10,7 +21,7 @@ Add Administrative User * Add the iiab-admin user and password * N.B. to create password hash use python -c 'import crypt; print crypt.crypt("", "$6$<salt>")' * Make a sudoer -* Add /root/.ssh and dummy authorized_keys file as placeholder +* |ss| Add /root/.ssh and dummy authorized_keys file as placeholder |se| |nbsp| (moved to playbook roles/sshd) * Force password for sudoers Add Packages for Remote Access diff --git a/roles/mediawiki/defaults/main.yml b/roles/mediawiki/defaults/main.yml index e75396acb..af82c0c5e 100644 --- a/roles/mediawiki/defaults/main.yml +++ b/roles/mediawiki/defaults/main.yml @@ -1,5 +1,5 @@ mediawiki_major_version: "1.31" -mediawiki_minor_version: "0" +mediawiki_minor_version: "1" mediawiki_version: "{{ mediawiki_major_version }}.{{ mediawiki_minor_version }}" mediawiki_download_base_url: "https://releases.wikimedia.org/mediawiki/{{ mediawiki_major_version }}" diff --git a/roles/mediawiki/tasks/install.yml b/roles/mediawiki/tasks/install.yml index cd89c0c71..bba5386da 100644 --- a/roles/mediawiki/tasks/install.yml +++ b/roles/mediawiki/tasks/install.yml @@ -5,20 +5,20 @@ with_items: - "php{{ php_version }}-intl" - "php{{ php_version }}-mbstring" - tags: - - download + #tags: + # - download -- name: Download MediaWiki software, per roles/mediawiki/defaults/main.yml +- name: Download {{ mediawiki_download_base_url }}/{{ mediawiki_src }} to {{ downloads_dir }} get_url: url: "{{ mediawiki_download_base_url }}/{{ mediawiki_src }}" dest: "{{ downloads_dir }}" timeout: "{{ download_timeout }}" -# force: yes -# backup: yes - register: mediawiki_download_output + #force: yes + #backup: yes + #register: mediawiki_download_output when: internet_available -- name: Unpack download to permanent location +- name: Unpack it to permanent location {{ mediawiki_abs_path }} unarchive: src: "{{ downloads_dir }}/{{ mediawiki_src }}" dest: "{{ mediawiki_install_path }}" @@ -27,24 +27,24 @@ mode: 0755 keep_newer: yes -- name: MySQL database needs to be running if we are trying to create a new db +- name: Ensure MySQL is running, so we can create db service: state: started name: "{{ mysql_service }}" -- name: Create MySQL mediawiki database +- name: Create MySQL database {{ mediawiki_db_name }} mysql_db: name: "{{ mediawiki_db_name }}" state: present -- name: Create MySQL mediawiki database user +- name: Create MySQL database user {{ mediawiki_db_user }} mysql_user: name: "{{ mediawiki_db_user }}" password: "{{ mediawiki_db_user_password }}" priv: "{{ mediawiki_db_name }}.*:ALL,GRANT" state: present -- name: Configure MediaWiki +- name: Configure MediaWiki, if {{ mediawiki_abs_path }}/LocalSettings.php doesn't exist shell: > php '{{ mediawiki_abs_path }}/maintenance/install.php' --dbname={{ mediawiki_db_name }} @@ -62,25 +62,25 @@ chdir: "{{ mediawiki_abs_path }}" creates: "{{ mediawiki_abs_path }}/LocalSettings.php" -- name: Copy mediawiki httpd conf file +- name: Copy mediawiki.conf to permit http://box{{ mediawiki_url }} template: src: mediawiki.conf.j2 dest: "/etc/{{ apache_config_dir }}/mediawiki.conf" -- name: Enable httpd conf file if we are disabled (debuntu) +- name: Enable mediawiki.conf if mediawiki_enabled (debuntu) file: src: /etc/apache2/sites-available/mediawiki.conf dest: /etc/apache2/sites-enabled/mediawiki.conf state: link when: mediawiki_enabled and is_debuntu -- name: Remove httpd conf file if we are disabled (OS's other than debuntu) +- name: Remove mediawiki.conf if not mediawiki_enabled (debuntu) file: path: /etc/apache2/sites-enabled/mediawiki.conf state: absent when: not mediawiki_enabled and is_debuntu -- name: Restart Apache, so it picks up the new aliases +- name: Restart Apache to enable/disable http://box{{ mediawiki_url }} service: name: "{{ apache_service }}" state: restarted diff --git a/roles/mediawiki/tasks/main.yml b/roles/mediawiki/tasks/main.yml index 6c77d3e7c..2a33dc83c 100644 --- a/roles/mediawiki/tasks/main.yml +++ b/roles/mediawiki/tasks/main.yml @@ -1,3 +1,3 @@ -- name: Include the install playbook +- name: Install MediaWiki {{ mediawiki_version }} if mediawiki_install include_tasks: install.yml when: mediawiki_install diff --git a/vars/default_vars.yml b/vars/default_vars.yml index e1abea459..b0317638c 100644 --- a/vars/default_vars.yml +++ b/vars/default_vars.yml @@ -416,10 +416,13 @@ calibreweb_url: /books calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web -# PLEASE CONSIDER THESE 2 NEW MAPS APPROACHES INSTEAD, AS OF 2018: +# PLEASE CONSIDER THESE 2 NEW OPENSTREETMAP APPROACHES INSTEAD, AS OF 2018: # - http://download.iiab.io/content/OSM/vector-tiles/ # - http://oer2go.org/viewmod/en-worldmap-10 # +# DOWNLOAD EITHER OSM MANUALLY, OR BETTER YET TRY IIAB'S ADMIN CONSOLE: +# http://box/admin -> Install Content -> Get OER2GO(RACHEL) Modules +# # OpenStreetMap (OSM) legacy - unmaintained: # osm_install: False # osm_enabled: False diff --git a/vars/local_vars_big.yml b/vars/local_vars_big.yml index eaf6ef161..e6ab61b54 100644 --- a/vars/local_vars_big.yml +++ b/vars/local_vars_big.yml @@ -250,10 +250,13 @@ calibreweb_url: /books calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web -# PLEASE CONSIDER THESE 2 NEW MAPS APPROACHES INSTEAD, AS OF 2018: +# PLEASE CONSIDER THESE 2 NEW OPENSTREETMAP APPROACHES INSTEAD, AS OF 2018: # - http://download.iiab.io/content/OSM/vector-tiles/ # - http://oer2go.org/viewmod/en-worldmap-10 # +# DOWNLOAD EITHER OSM MANUALLY, OR BETTER YET TRY IIAB'S ADMIN CONSOLE: +# http://box/admin -> Install Content -> Get OER2GO(RACHEL) Modules +# # Unmaintained - OpenStreetMap (OSM) legacy # osm_install: False # osm_enabled: False diff --git a/vars/local_vars_medium.yml b/vars/local_vars_medium.yml index 1d06677b3..24c1571b4 100644 --- a/vars/local_vars_medium.yml +++ b/vars/local_vars_medium.yml @@ -250,10 +250,13 @@ calibreweb_url: /books calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web -# PLEASE CONSIDER THESE 2 NEW MAPS APPROACHES INSTEAD, AS OF 2018: +# PLEASE CONSIDER THESE 2 NEW OPENSTREETMAP APPROACHES INSTEAD, AS OF 2018: # - http://download.iiab.io/content/OSM/vector-tiles/ # - http://oer2go.org/viewmod/en-worldmap-10 # +# DOWNLOAD EITHER OSM MANUALLY, OR BETTER YET TRY IIAB'S ADMIN CONSOLE: +# http://box/admin -> Install Content -> Get OER2GO(RACHEL) Modules +# # Unmaintained - OpenStreetMap (OSM) legacy # osm_install: False # osm_enabled: False diff --git a/vars/local_vars_min.yml b/vars/local_vars_min.yml index ea593c810..8c933ee93 100644 --- a/vars/local_vars_min.yml +++ b/vars/local_vars_min.yml @@ -250,10 +250,13 @@ calibreweb_url: /books calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web -# PLEASE CONSIDER THESE 2 NEW MAPS APPROACHES INSTEAD, AS OF 2018: +# PLEASE CONSIDER THESE 2 NEW OPENSTREETMAP APPROACHES INSTEAD, AS OF 2018: # - http://download.iiab.io/content/OSM/vector-tiles/ # - http://oer2go.org/viewmod/en-worldmap-10 # +# DOWNLOAD EITHER OSM MANUALLY, OR BETTER YET TRY IIAB'S ADMIN CONSOLE: +# http://box/admin -> Install Content -> Get OER2GO(RACHEL) Modules +# # Unmaintained - OpenStreetMap (OSM) legacy # osm_install: False # osm_enabled: False