Ansible Role collabora¶
This role installs and configures either Collabora Online Development Edition or Collabora Online Enterprise Edition. Note: To use Collabora Enterprise, you need an active Collabora Subscription.
Mandatory Requirements¶
Enable either the official Collabora CODE Repository or your Collabora Enterprise Repository. This can be done using the linuxfabrik.lfops.repo_collabora_code role.
If you use the „Collabora“ Playbook, this is automatically done for you.
Optional Role Variables¶
collabora__coolwsd_allowed_languages__host_var / collabora__coolwsd_allowed_languages__group_var
List of dictionaries containing the supported languages of Writing Aids (spell checker, grammar checker, thesaurus, hyphenation) on this instance. Allowing too many has negative effect on startup performance.
Type: List of dictionaries.
Default:
'de_AT''de_CH''de_DE''en_AU''en_CA''en_GB''en_US''fr''it_IT'
Subkeys:
name:Mandatory. Name of the language.
Type: String.
state:Optional. Either
presentorabsent.Type: String.
Default:
'present'
collabora__coolwsd_content_security_policy
List of CSP policy-directives. See https://w3.org/TR/CSP2.
Type: List of strings.
Default:
[]
collabora__coolwsd_deepl_api_url
URL for the deepl API. Only works if
collabora__coolwsd_deepl_enabledis true.Type: String.
Default:
'https://api-free.deepl.com/v2/translate'
collabora__coolwsd_deepl_auth_key
Auth Key generated by your deepl account. Only works if
collabora__coolwsd_deepl_enabledis true.Type: String.
Default:
''
collabora__coolwsd_deepl_enabled
If true, shows translate option as a menu entry in the compact view and as an icon in the tabbed view.
Type: Bool.
Default:
false
collabora__coolwsd_experimental_features
If experimental features should be enabled or not.
Type: Bool.
Default:
false
collabora__coolwsd_logging_file_enable
If coolwsd should write to a logfile or not.
Type: Bool.
Default:
true
collabora__coolwsd_lok_allow
Allowed hosts as an external data source inside edited files. All allowed post_allow.host and storage.wopi entries are also considered to be allowed as a data source. Used for example in: PostMessage Action_InsertGraphics, =WEBSERVICE() function, external reference in the cell.
Type: List of strings.
Default:
[]
collabora__coolwsd_out_of_focus_timeout_secs
The maximum number of seconds before dimming and stopping updates when the browser tab is no longer in focus.
Type: Number.
Default:
120
collabora__coolwsd_post_allow
List of client IP addresses to allow for POST(REST).
Type: List of strings.
Default:
[]
collabora__coolwsd_ssl_enable
Controls whether SSL encryption between coolwsd and the network is enabled (do not disable for production deployment).
Type: Bool.
Default:
false
collabora__coolwsd_ssl_settings_ca_file_path
Path to the ca file. Set this when coolwsd is SSL-terminating.
Type: String.
Default:
'/etc/coolwsd/ca-chain.cert.pem'
collabora__coolwsd_ssl_settings_cert_file_path
Path to the cert file. Set this when coolwsd is SSL-terminating.
Type: String.
Default:
'/etc/coolwsd/cert.pem'
collabora__coolwsd_ssl_settings_key_file_path
Path to the key file. Set this when coolwsd is SSL-terminating.
Type: String.
Default:
'/etc/coolwsd/key.pem'
collabora__coolwsd_ssl_settings_ssl_verification
Enable or disable SSL verification of hosts remote to coolwsd. If true SSL verification will be strict, otherwise certs of hosts will not be verified.
Type: Bool.
Default:
false
collabora__coolwsd_ssl_termination
Enable if coolwsd is behind a SSL-terminating proxy and therefore should act as if its using https but actually receives http.
Type: Bool.
Default:
true
collabora__coolwsd_storage_wopi__host_var / collabora__coolwsd_storage_wopi__group_var
List of dictionaries containing regex pattern of hostname to allow access to the backend storage. Usually the hostname application that uses Collabora CODE, for example Nextcloud.
Type: List of dictionaries.
Default:
[]Subkeys:
name:Mandatory. Regex pattern.
Type: String.
state:Optional. Either
presentorabsent.Type: String.
Default:
'present'
collabora__coolwsd_welcome_enable
Controls whether the welcome screen should be shown to the users on new install and updates.
Type: Bool.
Default:
false
collabora__language_packages__host_var / collabora__language_packages__group_var
A list of dictionaries containing additional packages to be installed for language support (spell checking, thesaurus, etc).
Type: List of dictionaries.
Default:
dict,mythesandhunspellfor de, en, fr, itSubkeys:
name:Mandatory. Name of the package.
Type: String.
state:Optional. Either
presentorabsent.Type: String.
Default:
'present'
collabora__logrotate
Log files are rotated
countdays before being removed or mailed to the address specified in alogrotatemail directive. If count is0, old versions are removed rather than rotated. If count is-1, old logs are not removed at all (use with caution, may waste performance and disk space).Type: Number.
Default:
{{ logrotate__rotate | d(14) }}
collabora__service_enabled
Enables or disables the coolwsd service, analogous to
systemctl enable/disable --now.Type: Bool.
Default:
true
collabora__use_code
Use Collabora CODE Edition instead of Collabora Enterprise Edition.
Type: Bool.
Default:
true
Example:
# optional
collabora__coolwsd_allowed_languages__group_var: []
collabora__coolwsd_allowed_languages__host_var:
- name: 'de_AT'
state: 'present'
- name: 'it_IT'
state: 'present'
collabora__coolwsd_content_security_policy:
- 'frame-ancestors https://office.example.com'
collabora__coolwsd_deepl_api_url: 'https://api-free.deepl.com/v2/translate'
collabora__coolwsd_deepl_auth_key: 'd3ca0484-915a-4214-80a5-b75f95238d9c:fx'
collabora__coolwsd_deepl_enabled: false
collabora__coolwsd_experimental_features: false
collabora__coolwsd_logging_file_enable: true
collabora__coolwsd_lok_allow: []
collabora__coolwsd_out_of_focus_timeout_secs: 120
collabora__coolwsd_post_allow: []
collabora__coolwsd_ssl_enable: false
collabora__coolwsd_ssl_settings_ca_file_path: '/etc/coolwsd/ca-chain.cert.pem'
collabora__coolwsd_ssl_settings_cert_file_path: '/etc/coolwsd/cert.pem'
collabora__coolwsd_ssl_settings_key_file_path: '/etc/coolwsd/key.pem'
collabora__coolwsd_ssl_settings_ssl_verification: false
collabora__coolwsd_ssl_termination: true
collabora__coolwsd_storage_wopi__group_var: []
collabora__coolwsd_storage_wopi__host_var:
- name: 'cloud\.example\.com'
state: 'present'
collabora__coolwsd_welcome_enable: true
collabora__language_packages__group_var: []
collabora__language_packages__host_var:
- name: 'collaboraoffice-dict-de'
state: 'absent'
# el
- name: 'collaboraoffice-dict-el'
state: 'present'
- name: 'collaboraofficebasis-el'
state: 'present'
- name: 'hunspell-el'
state: 'present'
- name: 'mythes-el'
state: 'present'
# es
- name: 'collaboraoffice-dict-es'
- name: 'collaboraofficebasis-es'
- name: 'hunspell-es-*'
- name: 'mythes-es'
collabora__logrotate: 7
collabora__service_enabled: true
collabora__use_code: false