mirror of
https://github.com/iiab/iiab.git
synced 2025-03-09 15:40:17 +00:00
Merge pull request #355 from jvonau/avoid-dups
sync from jvonau:avoid-dups
This commit is contained in:
commit
a02c282584
14 changed files with 81 additions and 40 deletions
|
@ -123,19 +123,6 @@
|
||||||
# We decided to enable mysql unconditionally.
|
# We decided to enable mysql unconditionally.
|
||||||
# when: elgg_enabled or rachel_enabled or owncloud_enabled or phpmyadmin_enabled or wordpress_enabled or iiab_menu_install
|
# when: elgg_enabled or rachel_enabled or owncloud_enabled or phpmyadmin_enabled or wordpress_enabled or iiab_menu_install
|
||||||
|
|
||||||
# There might be other db's
|
|
||||||
- name: Turn on both vars for PostgreSQL if moodle_enabled or pathagar_enabled
|
|
||||||
set_fact:
|
|
||||||
postgresql_install: True
|
|
||||||
postgresql_enabled: True
|
|
||||||
when: moodle_enabled or (pathagar_enabled is defined and pathagar_enabled)
|
|
||||||
|
|
||||||
#- name: Turn on vars for Docker if SchoolTool is to be installed
|
|
||||||
# set_fact:
|
|
||||||
# docker_install: True
|
|
||||||
# docker_enabled: True
|
|
||||||
# when: schooltool_enabled or schooltool_install
|
|
||||||
|
|
||||||
- name: "Set python_path: /lib/python2.7/site-packages/ (redhat)"
|
- name: "Set python_path: /lib/python2.7/site-packages/ (redhat)"
|
||||||
set_fact:
|
set_fact:
|
||||||
python_path: /lib/python2.7/site-packages/
|
python_path: /lib/python2.7/site-packages/
|
||||||
|
|
|
@ -32,28 +32,12 @@
|
||||||
when: usb_lib_install | bool
|
when: usb_lib_install | bool
|
||||||
#tags: usb-lib
|
#tags: usb-lib
|
||||||
|
|
||||||
# NETWORK moved to the very end, after Stage 9 (9-LOCAL-ADDONS)
|
|
||||||
# It can also be run manually using: cd /opt/iiab/iiab; ./iiab-network
|
|
||||||
#
|
|
||||||
#- name: NETWORK
|
|
||||||
# include_role:
|
|
||||||
# name: network
|
|
||||||
# # has no "when: XXXXX_install" flag
|
|
||||||
# tags: base, network
|
|
||||||
|
|
||||||
# MANDATORY SO PERHAPS THIS BELONGS IN 3-BASE-SERVER ?
|
|
||||||
- name: HOMEPAGE
|
- name: HOMEPAGE
|
||||||
include_role:
|
include_role:
|
||||||
name: homepage
|
name: homepage
|
||||||
# has no "when: XXXXX_install" flag
|
# has no "when: XXXXX_install" flag
|
||||||
#tags: base, homepage
|
#tags: base, homepage
|
||||||
|
|
||||||
- name: POSTGRESQL
|
|
||||||
include_role:
|
|
||||||
name: postgresql
|
|
||||||
when: postgresql_install | bool
|
|
||||||
#tags: postgresql, pathagar, moodle
|
|
||||||
|
|
||||||
- name: CUPS
|
- name: CUPS
|
||||||
include_role:
|
include_role:
|
||||||
name: cups
|
name: cups
|
||||||
|
|
|
@ -1,3 +1,18 @@
|
||||||
|
- name: Enable postgresql-iiab service when moodle_enabled
|
||||||
|
systemd:
|
||||||
|
name: postgresql-iiab
|
||||||
|
state: started
|
||||||
|
enabled: yes
|
||||||
|
when: moodle_enabled
|
||||||
|
|
||||||
|
# if the only service using the backend db disable if not running
|
||||||
|
- name: Disable postgresql-iiab service when not moodle_enabled
|
||||||
|
systemd:
|
||||||
|
name: postgresql-iiab
|
||||||
|
state: stopped
|
||||||
|
enabled: no
|
||||||
|
when: not moodle_enabled and not (pathagar_enabled is defined and pathagar_enabled)
|
||||||
|
|
||||||
# Apache
|
# Apache
|
||||||
|
|
||||||
- name: Enable http://box/moodle via Apache
|
- name: Enable http://box/moodle via Apache
|
||||||
|
|
|
@ -1,3 +1,12 @@
|
||||||
|
- name: Turn on enabled vars for PostgreSQL
|
||||||
|
set_fact:
|
||||||
|
postgresql_install: True
|
||||||
|
postgresql_enabled: True
|
||||||
|
|
||||||
|
- name: POSTGRESQL
|
||||||
|
include_role:
|
||||||
|
name: postgresql
|
||||||
|
|
||||||
- name: "Install packages: python-psycopg2, php-pgsql (OS's other than debuntu)"
|
- name: "Install packages: python-psycopg2, php-pgsql (OS's other than debuntu)"
|
||||||
package:
|
package:
|
||||||
name:
|
name:
|
||||||
|
|
|
@ -68,7 +68,7 @@
|
||||||
- name: Copy pkg's /lib/systemd/system/mariadb.service to /etc/systemd/system/ to be customized (CREATES TIMESTAMPED BACKUPS OF /etc/systemd/system/mariadb.service e.g. IF OPERATOR CUSTOMIZED IT, EVEN DESPITE WARNING BELOW!)
|
- name: Copy pkg's /lib/systemd/system/mariadb.service to /etc/systemd/system/ to be customized (CREATES TIMESTAMPED BACKUPS OF /etc/systemd/system/mariadb.service e.g. IF OPERATOR CUSTOMIZED IT, EVEN DESPITE WARNING BELOW!)
|
||||||
copy:
|
copy:
|
||||||
force: yes
|
force: yes
|
||||||
backup: yes
|
backup: no
|
||||||
src: /lib/systemd/system/mariadb.service
|
src: /lib/systemd/system/mariadb.service
|
||||||
dest: /etc/systemd/system/
|
dest: /etc/systemd/system/
|
||||||
when: mariadb_unit_file.stat.exists
|
when: mariadb_unit_file.stat.exists
|
||||||
|
|
|
@ -41,13 +41,22 @@
|
||||||
# /etc/iiab/local_vars.yml -- then re-run this IIAB installer.
|
# /etc/iiab/local_vars.yml -- then re-run this IIAB installer.
|
||||||
# when: nodejs_version_installed is defined and nodejs_version_installed.stdout != nodejs_version and nodejs_version_installed.stderr == ""
|
# when: nodejs_version_installed is defined and nodejs_version_installed.stdout != nodejs_version and nodejs_version_installed.stderr == ""
|
||||||
|
|
||||||
|
# Forces < 12 or > 12 to be removed, ignored if file is absent
|
||||||
|
- name: Remove /etc/apt/sources.list.d/nodesource.list if nodejs_version_installed.stdout is not {{ nodejs_version }}
|
||||||
|
file:
|
||||||
|
state: absent
|
||||||
|
path: /etc/apt/sources.list.d/nodesource.list
|
||||||
|
when: nodejs_version_installed is defined and nodejs_version_installed.stdout != nodejs_version and nodejs_version_installed.stdout != ""
|
||||||
|
|
||||||
# BRUTAL but ensures consistency across OS's / distros like Raspbian Desktop & Ubermix that often include an older version of Node.js
|
# BRUTAL but ensures consistency across OS's / distros like Raspbian Desktop & Ubermix that often include an older version of Node.js
|
||||||
|
# Forces < 12 or > 12 to be uninstalled
|
||||||
- name: ASK apt/yum/dnf TO REMOVE PRE-EXISTING Node.js {{ nodejs_version_installed.stdout }} (IF IT'S NOT {{ nodejs_version }})
|
- name: ASK apt/yum/dnf TO REMOVE PRE-EXISTING Node.js {{ nodejs_version_installed.stdout }} (IF IT'S NOT {{ nodejs_version }})
|
||||||
package:
|
package:
|
||||||
name: nodejs
|
name: nodejs
|
||||||
state: absent
|
state: absent
|
||||||
when: nodejs_version_installed is defined and nodejs_version_installed.stdout != nodejs_version and nodejs_version_installed.stdout != ""
|
when: nodejs_version_installed is defined and nodejs_version_installed.stdout != nodejs_version and nodejs_version_installed.stdout != ""
|
||||||
|
|
||||||
|
# Forces == 12
|
||||||
- name: Warn if Node.js {{ nodejs_version}} already installed & might be updated
|
- name: Warn if Node.js {{ nodejs_version}} already installed & might be updated
|
||||||
debug:
|
debug:
|
||||||
msg: "WARN: YOUR Node.js {{ nodejs_version }} MIGHT NOW BE UPDATED USING nodesource.com"
|
msg: "WARN: YOUR Node.js {{ nodejs_version }} MIGHT NOW BE UPDATED USING nodesource.com"
|
||||||
|
@ -79,6 +88,7 @@
|
||||||
# 19.04 Beta. Comment it out for now, and manually run: "apt install npm" then
|
# 19.04 Beta. Comment it out for now, and manually run: "apt install npm" then
|
||||||
# "npm install -g npm@latest" (all *SHOULD* be magically fixed by 2019-04-18 ?)
|
# "npm install -g npm@latest" (all *SHOULD* be magically fixed by 2019-04-18 ?)
|
||||||
|
|
||||||
|
# Forces update
|
||||||
- name: Install latest Node.js {{ nodejs_version }} which includes /usr/bin/npm (debuntu)
|
- name: Install latest Node.js {{ nodejs_version }} which includes /usr/bin/npm (debuntu)
|
||||||
package:
|
package:
|
||||||
#name: nodejs={{ nodejs_version }}
|
#name: nodejs={{ nodejs_version }}
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
dependencies:
|
|
||||||
- { role: nodejs, tags: ['nodejs'], when: nodered_install | bool }
|
|
|
@ -1,5 +1,10 @@
|
||||||
# 2019-01-16: @jvonau's PR #1403 moved installation of Node.js (8.x for now) &
|
# 2019-01-16: @jvonau's PR #1403 moved installation of Node.js (8.x for now) &
|
||||||
# npm to roles/nodejs/tasks/main.yml, triggered by roles/nodered/meta/main.yml
|
# npm to roles/nodejs/tasks/main.yml
|
||||||
|
|
||||||
|
- name: NODEJS
|
||||||
|
include_role:
|
||||||
|
name: nodejs
|
||||||
|
# 2020-01-04 no longer triggered by roles/nodered/meta/main.yml
|
||||||
|
|
||||||
# BRUTAL but ensures consistency across OS's / distros like Raspbian Desktop &
|
# BRUTAL but ensures consistency across OS's / distros like Raspbian Desktop &
|
||||||
# Ubermix that often include an older version of Node-RED. Brutal, as this
|
# Ubermix that often include an older version of Node-RED. Brutal, as this
|
||||||
|
@ -75,7 +80,7 @@
|
||||||
|
|
||||||
- name: Install /etc/systemd/system/nodered.service systemd unit file from template
|
- name: Install /etc/systemd/system/nodered.service systemd unit file from template
|
||||||
template:
|
template:
|
||||||
backup: yes
|
backup: no
|
||||||
src: nodered.service.j2
|
src: nodered.service.j2
|
||||||
dest: /etc/systemd/system/nodered.service
|
dest: /etc/systemd/system/nodered.service
|
||||||
# mode: '0666'
|
# mode: '0666'
|
||||||
|
|
|
@ -1,3 +1,12 @@
|
||||||
|
- name: Turn on enabled vars for PostgreSQL
|
||||||
|
set_fact:
|
||||||
|
postgresql_install: True
|
||||||
|
postgresql_enabled: True
|
||||||
|
|
||||||
|
- name: POSTGRESQL
|
||||||
|
include_role:
|
||||||
|
name: postgresql
|
||||||
|
|
||||||
- name: Remove package Pathagar (in case rpm?)
|
- name: Remove package Pathagar (in case rpm?)
|
||||||
package:
|
package:
|
||||||
name: pathagar
|
name: pathagar
|
||||||
|
@ -93,6 +102,8 @@
|
||||||
service:
|
service:
|
||||||
name: postgresql-iiab
|
name: postgresql-iiab
|
||||||
state: started
|
state: started
|
||||||
|
enabled: yes
|
||||||
|
when: pathagar_enabled
|
||||||
|
|
||||||
- name: Enable Pathagar postgresql user access by md5 method
|
- name: Enable Pathagar postgresql user access by md5 method
|
||||||
lineinfile:
|
lineinfile:
|
||||||
|
@ -193,6 +204,15 @@
|
||||||
name: "{{ apache_service }}"
|
name: "{{ apache_service }}"
|
||||||
state: reloaded
|
state: reloaded
|
||||||
|
|
||||||
|
# if the only service using the backend db disable if not running
|
||||||
|
- name: Disable postgresql-iiab service when not pathagar_enabled
|
||||||
|
systemd:
|
||||||
|
name: postgresql-iiab
|
||||||
|
state: stopped
|
||||||
|
enabled: no
|
||||||
|
when: not moodle_enabled and not pathagar_enabled
|
||||||
|
|
||||||
|
|
||||||
- name: Add 'pathagar' variable values to {{ iiab_ini_file }}
|
- name: Add 'pathagar' variable values to {{ iiab_ini_file }}
|
||||||
ini_file:
|
ini_file:
|
||||||
path: "{{ iiab_ini_file }}"
|
path: "{{ iiab_ini_file }}"
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
dependencies:
|
|
||||||
- { role: nodejs, tags: ['nodejs'], when: pbx_install and (nodejs_version == "10.x")}
|
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
- name: NODEJS
|
||||||
|
include_role:
|
||||||
|
name: nodejs
|
||||||
|
|
||||||
- name: Fail if nodejs_version is incorrect
|
- name: Fail if nodejs_version is incorrect
|
||||||
fail:
|
fail:
|
||||||
msg: >-
|
msg: >-
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
dependencies:
|
|
||||||
- { role: mongodb, tags: ['generic','mongodb'], when: sugarizer_install | bool }
|
|
||||||
- { role: nodejs, tags: ['nodejs'], when: sugarizer_install | bool }
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
# auto starts mongodb via the requires= line in unit file
|
||||||
- name: Enable & Restart 'sugarizer' systemd service
|
- name: Enable & Restart 'sugarizer' systemd service
|
||||||
systemd:
|
systemd:
|
||||||
name: sugarizer
|
name: sugarizer
|
||||||
|
@ -6,6 +7,7 @@
|
||||||
state: restarted
|
state: restarted
|
||||||
when: sugarizer_enabled | bool
|
when: sugarizer_enabled | bool
|
||||||
|
|
||||||
|
# stops sugarizer but not mongodb
|
||||||
- name: Disable & Stop 'sugarizer' systemd service
|
- name: Disable & Stop 'sugarizer' systemd service
|
||||||
systemd:
|
systemd:
|
||||||
name: sugarizer
|
name: sugarizer
|
||||||
|
@ -13,6 +15,11 @@
|
||||||
state: stopped
|
state: stopped
|
||||||
when: not sugarizer_enabled
|
when: not sugarizer_enabled
|
||||||
|
|
||||||
|
# stops mongodb would of been called via meta/main.yml prior
|
||||||
|
- name: MONGODB
|
||||||
|
include_tasks: roles/mongodb/tasks/enable.yml
|
||||||
|
when: not sugarizer_enabled
|
||||||
|
|
||||||
# Apache
|
# Apache
|
||||||
|
|
||||||
- name: Enable http://box/sugarizer & http://box/sugar via Apache
|
- name: Enable http://box/sugarizer & http://box/sugar via Apache
|
||||||
|
|
|
@ -1,3 +1,11 @@
|
||||||
|
- name: MONGODB
|
||||||
|
include_role:
|
||||||
|
name: mongodb
|
||||||
|
|
||||||
|
- name: NODEJS
|
||||||
|
include_role:
|
||||||
|
name: nodejs
|
||||||
|
|
||||||
- name: FAIL (STOP INSTALLING) IF nodejs_version is not set to 12.x
|
- name: FAIL (STOP INSTALLING) IF nodejs_version is not set to 12.x
|
||||||
fail:
|
fail:
|
||||||
msg: "Sugarizer install cannot proceed, as it currently requires Node.js 12.x, and your nodejs_version is set to {{ nodejs_version }}. Please check the value of nodejs_version in /opt/iiab/iiab/vars/default_vars.yml and possibly also /etc/iiab/local_vars.yml"
|
msg: "Sugarizer install cannot proceed, as it currently requires Node.js 12.x, and your nodejs_version is set to {{ nodejs_version }}. Please check the value of nodejs_version in /opt/iiab/iiab/vars/default_vars.yml and possibly also /etc/iiab/local_vars.yml"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue