diff --git a/defaults/main.yml b/defaults/main.yml index 76535af4e6bab70caa5b6370a7f570767ccbe818..94503fc14c76c069202e1fc1951ba557c1a66663 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -46,6 +46,7 @@ php_max_file_uploads: '20' php_max_input_time: '60' php_max_input_vars: '1000' php_memory_limit: '32M' +php_needs_msodbc: false php_needs_oci8: false php_output_buffering: '4096' php_post_max_size: '32M' diff --git a/tasks/msodbc.yml b/tasks/msodbc.yml new file mode 100644 index 0000000000000000000000000000000000000000..827aaa49e34176f270c1c109b42cb540f1b3ff8f --- /dev/null +++ b/tasks/msodbc.yml @@ -0,0 +1,52 @@ +--- +# file: roles/php/tasks/msodbc.yml + +- name: "Apt Key" + apt_key: + url: 'https://packages.microsoft.com/keys/microsoft.asc' + state: 'present' + +- name: "Apt Repository" + apt_repository: + repo: 'deb [arch=amd64] https://packages.microsoft.com/ubuntu/16.04/prod {{ ansible_distribution_release }} main' + state: 'present' + mode: '644' + +- name: "Install Packages" + apt: + pkg: '{{ item }}' + state: 'installed' + update_cache: yes + with_items: + - 'msodbcsql' + - 'mssql-tools' + - 'unixodbc-dev' + notify: + - "Apache | Restart Apache" + +- name: "PHP | Install PECL packages" + shell: 'pecl install {{ item }}' + with_items: + - 'sqlsrv' + - 'pdo_sqlsrv' + +- name: "Configuration files" + copy: + content: 'extension={{ item }}.so' + dest: '/etc/{{ php_base_dir }}/{{ php_conf_dir }}/{{ item }}.ini' + owner: 'root' + group: 'root' + mode: '644' + with_items: + - 'sqlsrv' + - 'pdo_sqlsrv' + notify: + - "Apache | Restart Apache" + +- name: "Enable extensions" + shell: 'phpenmod {{ item }}' + with_items: + - 'sqlsrv' + - 'pdo_sqlsrv' + notify: + - "Apache | Restart Apache" diff --git a/tasks/php.yml b/tasks/php.yml index c8f51dc5b178720a5f6aa7e0212dd6395f59e21d..d63677d756aa1ff447435b0cdee8b399bad32965 100644 --- a/tasks/php.yml +++ b/tasks/php.yml @@ -111,6 +111,10 @@ when: repository is defined and php_needs_oci8 tags: 'always' +- include_tasks: msodbc.yml + when: php_needs_msodbc + tags: 'always' + - name: "PHP | Ensure ImageMagick config directory" file: dest={{ php_imagick_config_dir }}