mirror of
https://github.com/iiab/iiab.git
synced 2025-02-13 19:52:06 +00:00
68 lines
4.4 KiB
YAML
68 lines
4.4 KiB
YAML
- name: FreePBX - Install wget, git, unixodbc, sudo, net-tools, cron, sox + ~12 PHP dependencies (run 'php -m' or 'php -i' to verify PHP modules)
|
|
package:
|
|
name:
|
|
- wget
|
|
- git
|
|
- unixodbc # For Asterisk CDR (Call Detail Records)
|
|
- sudo # Required by FreePBX install script
|
|
- net-tools # Required by FWConsole (command-line utility, that controls FreePBX)
|
|
- cron # Required by FreePBX UCP package (User Control Panel)
|
|
- sox # Required for CDR web-playback
|
|
# - php{{ php_version }} # Basically drags in phpX.Y-cgi (already below!)
|
|
- php{{ php_version }}-bcmath # Likewise installed in nextcloud/tasks/install.yml, wordpress/tasks/install.yml
|
|
- php{{ php_version }}-cgi
|
|
# - php{{ php_version }}-common # Auto-installed as an apt dependency. REGARDLESS: php{{ php_version }}-common superset php{{ php_version }}-cli is auto-installed by php{{ php_version }}-fpm in nginx/tasks/install.yml
|
|
- php{{ php_version }}-curl # Likewise installed in moodle/tasks/install.yml, nextcloud/tasks/install.yml, wordpress/tasks/install.yml
|
|
- php{{ php_version }}-fpm # Likewise installed in nginx/tasks/install.yml
|
|
# - php{{ php_version }}-gettext
|
|
- php{{ php_version }}-gd # Likewise installed in moodle/tasks/install.yml, nextcloud/tasks/install.yml
|
|
- php{{ php_version }}-imap
|
|
# - php{{ php_version }}-json # See stanza just below
|
|
- php{{ php_version }}-mbstring # Likewise installed in mediawiki/tasks/install.yml, moodle/tasks/install.yml, nextcloud/tasks/install.yml, wordpress/tasks/install.yml
|
|
- php{{ php_version }}-mysql # Likewise installed in mysql/tasks/install.yml, nextcloud/tasks/install.yml, wordpress/tasks/install.yml
|
|
- php-pear # Likewise installed for ADMIN CONSOLE https://github.com/iiab/iiab-admin-console/blob/master/roles/cmdsrv/tasks/main.yml#L19
|
|
- php{{ php_version }}-snmp
|
|
- php{{ php_version }}-xml # Likewise installed in mediawiki/tasks/install.yml, moodle/tasks/install.yml, nextcloud/tasks/install.yml, wordpress/tasks/install.yml -- AND REGARDLESS dragged in later by Admin Console's use of php-pear for roles/cmdsrv/tasks/main.yml -- run 'php -m | grep -i xml' which in the end shows {libxml, SimpleXML, xml, xmlreader, xmlwriter}
|
|
- php{{ php_version }}-zip # Likewise installed in moodle/tasks/install.yml, nextcloud/tasks/install.yml, wordpress/tasks/install.yml
|
|
# - python-mysqldb # https://github.com/Yannik/ansible-role-freepbx/blob/master/tasks/freepbx.yml#L33
|
|
state: latest
|
|
|
|
# For PHP >= 8.0: phpX.Y-json is baked into PHP itself.
|
|
# For PHP < 8.0: phpX.Y-json auto-installed by phpX.Y-fpm AND phpX.Y-cli in 3-base-server's nginx/tasks/install.yml, as confirmed by: apt rdepends phpX.Y-json
|
|
#
|
|
# - name: Install php{{ php_version }}-json if PHP < 8.0
|
|
# package:
|
|
# name: php{{ php_version }}-json
|
|
# state: present
|
|
# when: php_version is version('8.0', '<')
|
|
|
|
|
|
- block:
|
|
|
|
- name: "FreePBX - Install Apache packages: {{ apache_service }}, libapache2-mod-php, libapache2-mpm-itk - if not pbx_try_nginx"
|
|
package:
|
|
name:
|
|
- "{{ apache_service }}" # 2021-08-07: Install apache2 directly, as we prepare to deprecate roles/httpd
|
|
- libapache2-mod-php # NOTE duplication: roles/httpd/tasks.install.yml installed libapache2-mod-php{{ php_version }} ostensibly for "Elgg, Moodle, etc"
|
|
- libapache2-mpm-itk # To serve FreePBX through a VirtualHost as asterisk user (#2914: Is this possible via NGINX?)
|
|
|
|
- name: 'Enable Apache module, as with "a2enmod" command: rewrite'
|
|
apache2_module:
|
|
name: rewrite
|
|
|
|
# - name: 'Enable 5 Apache modules, as with "a2enmod" command: headers, proxy, proxy_html, proxy_http, rewrite (for http://box/kiwix, http://box/kolibri, http://box/nodered, etc)'
|
|
# apache2_module:
|
|
# name: "{{ item }}"
|
|
# with_items:
|
|
# - headers
|
|
# - proxy
|
|
# - proxy_html
|
|
# - proxy_http
|
|
# - rewrite
|
|
|
|
# 2021-08-08: Security risks? But official install doc recommends this:
|
|
# https://wiki.freepbx.org/display/FOP/Installing+FreePBX+16+on+Debian+10.9
|
|
- name: Run "sed -i 's/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf"
|
|
command: sed -i 's/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf
|
|
|
|
when: not pbx_try_nginx
|