mirror of
https://github.com/iiab/iiab.git
synced 2025-03-09 15:40:17 +00:00
Fix freepbx.yml playbook
This commit is contained in:
parent
01cfb3fc7b
commit
e66104a5e1
2 changed files with 12 additions and 92 deletions
|
@ -31,31 +31,6 @@
|
||||||
group: root
|
group: root
|
||||||
extra_opts: [--strip-components=1]
|
extra_opts: [--strip-components=1]
|
||||||
|
|
||||||
- name: FreePBX - Add mysql user
|
|
||||||
mysql_user:
|
|
||||||
name: "{{ asterisk_db_user }}"
|
|
||||||
password: "{{ asterisk_db_password }}"
|
|
||||||
priv: "{{ asterisk_db_dbname }}.*:ALL/{{ asterisk_db_cdrdbname }}.*:ALL"
|
|
||||||
login_host: "{{ asterisk_db_host }}"
|
|
||||||
host: "{{ (asterisk_db_host == 'localhost') | ternary('localhost', ansible_default_ipv4.address) }}"
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: FreePBX - Add mysql db
|
|
||||||
mysql_db:
|
|
||||||
name: "{{ asterisk_db_dbname }}"
|
|
||||||
encoding: utf8
|
|
||||||
collation: utf8_general_ci
|
|
||||||
login_host: "{{ asterisk_db_host }}"
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: FreePBX - Add cdr mysql db
|
|
||||||
mysql_db:
|
|
||||||
name: "{{ asterisk_db_cdrdbname }}"
|
|
||||||
encoding: utf8
|
|
||||||
collation: utf8_general_ci
|
|
||||||
login_host: "{{ asterisk_db_host }}"
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: FreePBX - Disable & Stop asterisk service
|
- name: FreePBX - Disable & Stop asterisk service
|
||||||
systemd:
|
systemd:
|
||||||
daemon_reload: yes
|
daemon_reload: yes
|
||||||
|
@ -63,24 +38,6 @@
|
||||||
enabled: no
|
enabled: no
|
||||||
state: stopped
|
state: stopped
|
||||||
|
|
||||||
## using named groups due to this: http://www.handverdrahtet.org/2016/01/ansible-using-numbered-backreference.html
|
|
||||||
#- name: Enable freepbx installation with remote mysql db
|
|
||||||
# replace:
|
|
||||||
# dest: '{{ freepbx_src_dir }}/installlib/installcommand.class.php'
|
|
||||||
# regexp: '(?P<firstpart>\$amp_conf\[.AMPDBHOST.\] = .)localhost(.;)'
|
|
||||||
# replace: '\g<firstpart>{{ asterisk_db_host }}\2'
|
|
||||||
|
|
||||||
- name: Don't let freepbx take over the php sessions dir
|
|
||||||
blockinfile:
|
|
||||||
content: |
|
|
||||||
[blacklist]
|
|
||||||
directory = /var/lib/php/sessions
|
|
||||||
marker: "; {mark} ANSIBLE MANAGED BLOCK"
|
|
||||||
dest: /etc/asterisk/freepbx_chown.conf
|
|
||||||
owner: asterisk
|
|
||||||
group: asterisk
|
|
||||||
create: yes
|
|
||||||
|
|
||||||
- name: Install freepbx (just ran once)
|
- name: Install freepbx (just ran once)
|
||||||
command: "{{ item }}"
|
command: "{{ item }}"
|
||||||
args:
|
args:
|
||||||
|
@ -88,58 +45,13 @@
|
||||||
creates: /var/www/html/freepbx
|
creates: /var/www/html/freepbx
|
||||||
with_items:
|
with_items:
|
||||||
- ./start_asterisk start
|
- ./start_asterisk start
|
||||||
- ./install -n --webroot /var/www/html/freepbx --dbuser {{ asterisk_db_user }} --dbpass {{ asterisk_db_password }} --dbname {{ asterisk_db_dbname }} --cdrdbname {{ asterisk_db_cdrdbname }}
|
- ./install -n --webroot /var/www/html/freepbx --dbuser root --dbpass {{ mysql_root_password }}
|
||||||
register: freepbx_installation
|
register: freepbx_installation
|
||||||
|
|
||||||
- name: Install unit file /etc/systemd/system/freepbx.service from templates
|
- name: Create /etc/odbc.ini
|
||||||
template:
|
template:
|
||||||
src: "freepbx.service.j2"
|
src: odbc.ini.j2
|
||||||
dest: "/etc/systemd/system/freepbx.service"
|
dest: /etc/odbc.ini
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: 0644
|
mode: 0644
|
||||||
|
|
||||||
# http://community.freepbx.org/t/fixing-cdr-cel-on-ubuntu-debian-installation/30836
|
|
||||||
# Test using `isql -v MySQL-asteriskcdrdb`
|
|
||||||
- name: Fix asterisk cdr odbc connection (1)
|
|
||||||
blockinfile:
|
|
||||||
dest: /etc/odbcinst.ini
|
|
||||||
create: yes
|
|
||||||
marker: "; {mark} ANSIBLE MANAGED BLOCK"
|
|
||||||
content: |
|
|
||||||
[MySQL]
|
|
||||||
Description = ODBC for MySQL
|
|
||||||
Driver = {{ libodbc_path }}
|
|
||||||
FileUsage = 1
|
|
||||||
|
|
||||||
- name: Fix asterisk cdr odbc connection (2)
|
|
||||||
replace:
|
|
||||||
dest: /etc/odbc.ini
|
|
||||||
regexp: /var/lib/mysql/mysql.sock
|
|
||||||
replace: /var/run/mysqld/mysqld.sock
|
|
||||||
|
|
||||||
- name: Install freepbx modules
|
|
||||||
command: "fwconsole ma downloadinstall {{ item }}"
|
|
||||||
args:
|
|
||||||
creates: /var/www/html/freepbx/admin/modules/{{ item }}
|
|
||||||
with_items:
|
|
||||||
- userman
|
|
||||||
- asteriskinfo
|
|
||||||
- backup
|
|
||||||
- outroutemsg
|
|
||||||
|
|
||||||
- name: FreePBX - Enable and start FreePBX service
|
|
||||||
systemd:
|
|
||||||
daemon_reload: yes
|
|
||||||
name: freepbx
|
|
||||||
enabled: yes
|
|
||||||
state: started
|
|
||||||
when: pbx_enabled
|
|
||||||
|
|
||||||
- name: FreePBX - Disable and Stop FreePBX service
|
|
||||||
systemd:
|
|
||||||
daemon_reload: yes
|
|
||||||
name: freepbx
|
|
||||||
enabled: no
|
|
||||||
state: stopped
|
|
||||||
when: pbx_enabled
|
|
||||||
|
|
8
roles/pbx/templates/odbc.ini.j2
Normal file
8
roles/pbx/templates/odbc.ini.j2
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
[MySQL-asteriskcdrdb]
|
||||||
|
Description=MySQL connection to 'asteriskcdrdb' database
|
||||||
|
driver=MySQL
|
||||||
|
server=localhost
|
||||||
|
database=asteriskcdrdb
|
||||||
|
Port=3306
|
||||||
|
Socket=/var/run/mysqld/mysqld.sock
|
||||||
|
option=3
|
Loading…
Add table
Add a link
Reference in a new issue