Compare commits
19 commits
Author | SHA1 | Date | |
---|---|---|---|
e1ececcb58 | |||
1bd318d112 | |||
97101a41bd | |||
fb9f353130 | |||
eb193119e1 | |||
8beadae205 | |||
61e5ed05a3 | |||
292c04cbc0 | |||
0fedce36a6 | |||
6dc97b3e9c | |||
de7badc583 | |||
90b371aa59 | |||
4079807c8e | |||
a3b5fc1eab | |||
bec361ed7f | |||
903fea413a | |||
62a7145f3a | |||
26e8c2d3f7 | |||
5dfb6bfaec |
15 changed files with 214 additions and 141 deletions
6
.ansible-lint
Normal file
6
.ansible-lint
Normal file
|
@ -0,0 +1,6 @@
|
|||
skip_list:
|
||||
- fqcn-builtins
|
||||
- fqcn[action]
|
||||
- fqcn[action-core]
|
||||
- fqcn[canonical]
|
||||
- name[casing]
|
|
@ -3,6 +3,7 @@
|
|||
- hosts: etherpad
|
||||
roles:
|
||||
- mariadb
|
||||
- node
|
||||
- etherpad
|
||||
|
||||
vars_files:
|
||||
|
|
|
@ -12,17 +12,16 @@ Then you can access etherpad from your computer on http://192.168.33.8:9001
|
|||
|
||||
|
||||
## Playbook
|
||||
The playbook includes mariadb role and deploys entire stack needed to run Etherpad-lite. Additional role is also available in the Ansible roles repos in git.
|
||||
The playbook includes mariadb and node roles and deploys entire stack needed to run Etherpad-lite. Additional roles are also available in the Ansible roles repos in git.
|
||||
|
||||
## Tags
|
||||
You can use tags when you deploy:
|
||||
- `config`: to deploy just config
|
||||
- `modules`: to deploy modules
|
||||
|
||||
⚠ Since the v.2.0.2, modules can only be installed, not removed. The devs are working on this: https://github.com/ether/etherpad-lite/issues/6272 So if you need to remove a plugin, log into the admin interface.
|
||||
|
||||
|
||||
## CHANGELOG
|
||||
- **09.06.2024** - Add possibility to remove plugin
|
||||
- **14.04.2024** - Bumped version to 2.0.2 and change from npm to pnpm
|
||||
- **26.03.2021** - Bumped version to 1.8.13 and enable ep_adminpads2
|
||||
- **04.03.2021** - Bumped version to 1.8.11 and adjusted readme file
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
---
|
||||
|
||||
etherpad_version: '2.0.2'
|
||||
etherpad_version: '2.2.6'
|
||||
etherpad_skin: 'colibris'
|
||||
etherpad_skinVariants: 'super-light-toolbar super-light-editor light-background'
|
||||
etherpad_skin_variants: 'super-light-toolbar super-light-editor light-background'
|
||||
etherpad_username: 'etherpad'
|
||||
etherpad_group: 'etherpad'
|
||||
etherpad_app_dir: '/var/www/etherpad-lite'
|
||||
etherpad_instance_name: 'pads'
|
||||
etherpad_listen_ip: '0.0.0.0'
|
||||
etherpad_listen_port: '9001'
|
||||
etherpad_db_type: '0' #an integer. 0 or unset for mysql, 1 for postgres
|
||||
etherpad_db_type: '0' # an integer. 0 or unset for mysql, 1 for postgres
|
||||
etherpad_db_user: 'etherpad'
|
||||
etherpad_db_host: 'localhost'
|
||||
etherpad_db_passwd: 'changeme'
|
||||
|
@ -19,53 +19,56 @@ etherpad_welcome_text: 'Welcome to Etherpad!\n\nThis pad text is synchronized as
|
|||
etherpad_group_only: 'false'
|
||||
etherpad_editonly: 'false'
|
||||
etherpad_minify: 'true'
|
||||
etherpad_showSettingsInAdminPage: 'true'
|
||||
etherpad_suppressErrorsInPadText: 'false'
|
||||
etherpad_allowUnknownFileEnds: 'true'
|
||||
etherpad_automaticReconnectionTimeout: '0'
|
||||
etherpad_indentationOnNewLine: 'false'
|
||||
etherpad_importExportRateLimitingwindowMs: '90000'
|
||||
etherpad_importExportRateLimitingMax: '10'
|
||||
etherpad_importMaxFileSize: '52428800' # 50 MB -> 50 * 1024 * 1024
|
||||
etherpad_exposeVersion: 'false'
|
||||
etherpad_show_settings_in_admin_page: 'true'
|
||||
etherpad_cleanup_enabled: 'false'
|
||||
etherpad_cleanup_keep_revisions: '5'
|
||||
etherpad_suppress_errors_in_pad_text: 'false'
|
||||
etherpad_allow_unknown_file_ends: 'true'
|
||||
etherpad_automatic_reconnection_timeout: '0'
|
||||
etherpad_indentation_on_new_line: 'false'
|
||||
etherpad_import_export_rate_limiting_window_ms: '90000'
|
||||
etherpad_import_export_rate_limiting_max: '10'
|
||||
etherpad_import_max_file_size: '52428800' # 50 MB -> 50 * 1024 * 1024
|
||||
etherpad_authmethod: 'sso'
|
||||
etherpad_expose_version: 'false'
|
||||
etherpad_js_maxage: '21600'
|
||||
etherpad_max_log_size: '1024'
|
||||
etherpad_abiword: '/usr/bin/abiword'
|
||||
etherpad_auth: 'false'
|
||||
etherpad_authorization: 'false'
|
||||
etherpad_proxy: 'false'
|
||||
etherpad_sessionLifetime: '864000000' #10d
|
||||
etherpad_sessionRefreshInterval: '86400000' #1d
|
||||
etherpad_session_lifetime: '864000000' # 10 days
|
||||
etherpad_session_refresh_interval: '86400000' # 1 day
|
||||
etherpad_ip_logging: 'false'
|
||||
etherpad_maxHttpBufferSize: '10000'
|
||||
etherpad_enableAdminUITests: 'false'
|
||||
etherpad_max_http_buffer_size: '10000'
|
||||
etherpad_log_layout_type: 'colored'
|
||||
etherpad_enable_admin_ui_tests: 'false'
|
||||
etherpad_admin_pwd: 'changeme'
|
||||
etherpad_ratelimit_duration: '1'
|
||||
etherpad_ratelimit_points: '100'
|
||||
etherpad_loglevel: 'INFO'
|
||||
etherpad_logfile: '/var/log/etherpad-lite.log'
|
||||
etherpad_dumpOnUncleanExit: 'false'
|
||||
etherpad_dump_on_unclean_exit: 'false'
|
||||
etherpad_error_log_recipient: 'support@example.com'
|
||||
etherpad_smtp_host: 'localhost'
|
||||
etherpad_smtp_port: '587'
|
||||
etherpad_smtp_user: 'support'
|
||||
etherpad_smtp_pass: 'changeme'
|
||||
etherpad_nodejs_version: '21'
|
||||
etherpad_apt:
|
||||
- curl
|
||||
- nodejs
|
||||
- git
|
||||
|
||||
etherpad_admin_page: 'true' # set to something else if you don't want to build admin page
|
||||
# Nodejs
|
||||
nodejs_version: '21'
|
||||
|
||||
etherpad_plugins_list:
|
||||
etherpad_admin_page: 'true' # set to something else if you don't want to build admin page
|
||||
etherpad_plugins_list: # set to "removed" if you want to remove à plugin
|
||||
ep_adminpads2: enabled
|
||||
ep_comments_page: enabled
|
||||
ep_desktop_notifications: enabled
|
||||
ep_font_color: enabled
|
||||
ep_headings2: enabled
|
||||
ep_markdown: enabled
|
||||
ep_previewimages: enabled
|
||||
ep_spellcheck: enabled
|
||||
ep_real_time_chat: enabled
|
||||
ep_delete_after_delay: enabled
|
||||
|
@ -80,11 +83,11 @@ etherpad_plugins_list:
|
|||
|
||||
# ep_delete_after_delay
|
||||
# Etherpad-Lite plugin that deletes your pads after a configured delay
|
||||
delay: '7776000' # one day, in seconds Default is 86400
|
||||
loopdeletion: 'true'
|
||||
loopDelay: '86400' # one hour, in seconds Default is 3600
|
||||
deleteAtStart: 'true'
|
||||
text: "The content of this pad has been deleted since it was older than the configured delay."
|
||||
ep_delafter_delay: '7776000' # one day, in seconds Default is 86400
|
||||
ep_delafter_loopdeletion: 'true'
|
||||
ep_delafter_loopdelay: '86400' # one hour, in seconds Default is 3600
|
||||
ep_delafter_delete_at_start: 'true'
|
||||
ep_delafter_text: "The content of this pad has been deleted since it was older than the configured delay."
|
||||
|
||||
# MARIADB CONFIG
|
||||
mariadb_databases:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
|
||||
- name: restart etherpad
|
||||
- name: 'Restart etherpad'
|
||||
systemd:
|
||||
name: etherpad
|
||||
state: restarted
|
||||
name: 'etherpad'
|
||||
state: 'restarted'
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
|
||||
- name: '[LIBRE-OFFICE] - Install Abiword'
|
||||
apt:
|
||||
name: abiword
|
||||
state: present
|
||||
update_cache: yes
|
||||
name: 'abiword'
|
||||
state: 'present'
|
||||
update_cache: true
|
||||
|
|
|
@ -2,20 +2,22 @@
|
|||
|
||||
- name: '[CONFIGURE] - Create log file'
|
||||
file:
|
||||
path: "{{ etherpad_logfile }}"
|
||||
state: touch
|
||||
owner: "{{ etherpad_username }}"
|
||||
group: "{{ etherpad_group }}"
|
||||
mode: 0755
|
||||
tags: config
|
||||
path: '{{ etherpad_logfile }}'
|
||||
state: 'touch'
|
||||
owner: '{{ etherpad_username }}'
|
||||
group: '{{ etherpad_group }}'
|
||||
mode: '0755'
|
||||
tags:
|
||||
- 'config'
|
||||
|
||||
- name: '[CONFIGURE] - Deploy config'
|
||||
template:
|
||||
src: var/www/etherpad-lite/settings.json.j2
|
||||
dest: "{{ etherpad_app_dir }}/app/settings.json"
|
||||
owner: "{{ etherpad_username }}"
|
||||
group: "{{ etherpad_group }}"
|
||||
mode: 0644
|
||||
src: 'var/www/etherpad-lite/settings.json.j2'
|
||||
dest: '{{ etherpad_app_dir }}/app/settings.json'
|
||||
owner: '{{ etherpad_username }}'
|
||||
group: '{{ etherpad_group }}'
|
||||
mode: '0644'
|
||||
notify:
|
||||
restart etherpad
|
||||
tags: config
|
||||
- 'Restart etherpad'
|
||||
tags:
|
||||
- 'config'
|
||||
|
|
|
@ -2,19 +2,20 @@
|
|||
|
||||
- name: '[GIT] - Create directory'
|
||||
file:
|
||||
path: "/var/www/"
|
||||
state: directory
|
||||
owner: "{{ etherpad_username }}"
|
||||
group: "{{ etherpad_group }}"
|
||||
mode: 0755
|
||||
path: '/var/www/'
|
||||
state: 'directory'
|
||||
owner: '{{ etherpad_username }}'
|
||||
group: '{{ etherpad_group }}'
|
||||
mode: '0755'
|
||||
|
||||
- name: '[GIT] - Deploy source'
|
||||
git:
|
||||
repo: https://github.com/ether/etherpad-lite.git
|
||||
dest: "{{ etherpad_app_dir }}/app"
|
||||
force: yes
|
||||
update: yes
|
||||
version: "{{ etherpad_version }}"
|
||||
repo: 'https://github.com/ether/etherpad-lite.git'
|
||||
dest: '{{ etherpad_app_dir }}/app'
|
||||
force: true
|
||||
update: true
|
||||
version: '{{ etherpad_version }}'
|
||||
become: true
|
||||
become_user: "{{ etherpad_username }}"
|
||||
notify: restart etherpad
|
||||
become_user: '{{ etherpad_username }}'
|
||||
notify:
|
||||
- 'Restart etherpad'
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
---
|
||||
|
||||
- name: '[INSTALL] - Install with pnpm'
|
||||
shell:
|
||||
cmd: pnpm install
|
||||
command:
|
||||
cmd: 'pnpm install'
|
||||
args:
|
||||
chdir: "{{ etherpad_app_dir }}/app"
|
||||
become: yes
|
||||
become_user: "{{ etherpad_username }}"
|
||||
chdir: '{{ etherpad_app_dir }}/app'
|
||||
become: true
|
||||
become_user: '{{ etherpad_username }}'
|
||||
|
||||
- name: '[INSTALL] - Build admin pages with pnpm'
|
||||
shell:
|
||||
cmd: pnpm run build
|
||||
command:
|
||||
cmd: 'pnpm run build'
|
||||
args:
|
||||
chdir: "{{ etherpad_app_dir }}/app/admin"
|
||||
become: yes
|
||||
become_user: "{{ etherpad_username }}"
|
||||
when: etherpad_admin_page == "true"
|
||||
chdir: '{{ etherpad_app_dir }}/app/admin'
|
||||
become: true
|
||||
become_user: '{{ etherpad_username }}'
|
||||
when: etherpad_admin_page == 'true'
|
||||
|
|
|
@ -1,24 +1,11 @@
|
|||
---
|
||||
|
||||
- name: '[INSTALL] - Add Nodesource apt key.'
|
||||
apt_key:
|
||||
url: https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key
|
||||
state: present
|
||||
|
||||
- name: '[INSTALLDEPS] - Add repository for nodejs'
|
||||
apt_repository:
|
||||
repo: deb https://deb.nodesource.com/node_{{ etherpad_nodejs_version }}.x nodistro main
|
||||
state: present
|
||||
update_cache: yes
|
||||
filename: 'nodesource'
|
||||
|
||||
- name: '[INSTALLDEPS] - Install dependencies'
|
||||
apt:
|
||||
name: "{{ etherpad_apt }}"
|
||||
update_cache: yes
|
||||
state: latest
|
||||
name: '{{ etherpad_apt }}'
|
||||
update_cache: true
|
||||
|
||||
- name: '[INSTALLDEPS] - Install pnpm'
|
||||
npm:
|
||||
name: pnpm
|
||||
global: true
|
||||
name: 'pnpm'
|
||||
global: true
|
||||
|
|
|
@ -1,28 +1,28 @@
|
|||
---
|
||||
|
||||
- name: Install dependencies
|
||||
- name: 'Install dependencies'
|
||||
include_tasks: installdeps.yml
|
||||
|
||||
- name: Add user
|
||||
- name: 'Add user'
|
||||
include_tasks: user.yml
|
||||
|
||||
- name: Clone / Update GIT
|
||||
- name: 'Clone / Update GIT'
|
||||
include_tasks: git.yml
|
||||
|
||||
- name: Deploy configuration
|
||||
- name: 'Deploy configuration'
|
||||
include_tasks: configure.yml
|
||||
tags: config
|
||||
|
||||
- name: Use abiword
|
||||
- name: 'Use abiword'
|
||||
include_tasks: abiword.yml
|
||||
when: etherpad_abiword != 'null'
|
||||
|
||||
- name: Install etherpad
|
||||
- name: 'Install etherpad'
|
||||
include_tasks: install.yml
|
||||
|
||||
- name: Install Modules
|
||||
- name: 'Install Modules'
|
||||
include_tasks: modules.yml
|
||||
tags: modules
|
||||
|
||||
- name: Systemd
|
||||
- name: 'Systemd'
|
||||
include_tasks: systemd.yml
|
||||
|
|
|
@ -4,13 +4,27 @@
|
|||
# selects only the enabled plugins
|
||||
# then uses filter to get all plugins names in one line, without comas or quotes as needed for npm
|
||||
- name: '[Modules] - Install modules'
|
||||
shell:
|
||||
cmd: "pnpm run install-plugins {{ etherpad_plugins_list| dict2items | selectattr('value', 'eq', 'enabled') | map(attribute='key') |join(',') | replace(\",\", \" \") }}"
|
||||
command:
|
||||
cmd: "pnpm run install-plugins {{ etherpad_plugins_list | dict2items | selectattr('value', 'eq', 'enabled') | map(attribute='key') | join(',') | replace(\",\", \" \") }}"
|
||||
args:
|
||||
chdir: "{{ etherpad_app_dir }}/app"
|
||||
become: yes
|
||||
become_user: "{{ etherpad_username }}"
|
||||
chdir: '{{ etherpad_app_dir }}/app'
|
||||
become: true
|
||||
become_user: '{{ etherpad_username }}'
|
||||
when: etherpad_plugins_list| dict2items | selectattr('value', 'eq', 'enabled') |length > 0
|
||||
notify:
|
||||
restart etherpad
|
||||
tags: modules
|
||||
- 'Restart etherpad'
|
||||
tags:
|
||||
- 'modules'
|
||||
|
||||
- name: '[Modules] - Remove modules'
|
||||
command:
|
||||
cmd: "pnpm run plugins rm {{ etherpad_plugins_list | dict2items | selectattr('value', 'eq', 'removed') | map(attribute='key') | join(',') | replace(\",\", \" \") }}"
|
||||
args:
|
||||
chdir: '{{ etherpad_app_dir }}/app'
|
||||
become: true
|
||||
become_user: '{{ etherpad_username }}'
|
||||
when: etherpad_plugins_list| dict2items | selectattr('value', 'eq', 'removed') |length > 0
|
||||
notify:
|
||||
- 'Restart etherpad'
|
||||
tags:
|
||||
- 'modules'
|
||||
|
|
|
@ -2,18 +2,17 @@
|
|||
|
||||
- name: '[SYSTEMD] - Deploy Systemd config'
|
||||
template:
|
||||
src: etc/systemd/system/etherpad.service.j2
|
||||
dest: /etc/systemd/system/etherpad.service
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
register: etherpad_systemd
|
||||
src: 'etc/systemd/system/etherpad.service.j2'
|
||||
dest: '/etc/systemd/system/etherpad.service'
|
||||
owner: 'root'
|
||||
group: 'root'
|
||||
mode: '0644'
|
||||
|
||||
- name: '[SYSTEMD] - Enable systemd'
|
||||
systemd:
|
||||
name: etherpad
|
||||
enabled: yes
|
||||
state: started
|
||||
daemon_reload: yes
|
||||
name: 'etherpad'
|
||||
enabled: true
|
||||
state: 'started'
|
||||
daemon_reload: true
|
||||
notify:
|
||||
restart etherpad
|
||||
- 'Restart etherpad'
|
||||
|
|
|
@ -3,20 +3,20 @@
|
|||
- name: '[USER] - Add group'
|
||||
group:
|
||||
name: '{{ etherpad_group }}'
|
||||
state: present
|
||||
state: 'present'
|
||||
|
||||
- name: '[USER] - Add user'
|
||||
user:
|
||||
name: '{{ etherpad_username }}'
|
||||
shell: /bin/bash
|
||||
shell: '/bin/bash'
|
||||
group: '{{ etherpad_group }}'
|
||||
home: '{{ etherpad_app_dir }}'
|
||||
state: present
|
||||
state: 'present'
|
||||
|
||||
- name: '[USER] - Change ownership to etherpad user'
|
||||
file:
|
||||
path: '{{ etherpad_app_dir }}'
|
||||
owner: '{{ etherpad_username }}'
|
||||
group: '{{ etherpad_group }}'
|
||||
state: directory
|
||||
recurse: yes
|
||||
state: 'directory'
|
||||
recurse: true
|
||||
|
|
|
@ -140,7 +140,7 @@
|
|||
* "full-width-editor" variant (by default editor is rendered as a page, with
|
||||
* a max-width of 900px).
|
||||
*/
|
||||
"skinVariants": "{{ etherpad_skinVariants }}",
|
||||
"skinVariants": "{{ etherpad_skin_variants }}",
|
||||
|
||||
/*
|
||||
* IP and port which Etherpad should bind at.
|
||||
|
@ -160,7 +160,15 @@
|
|||
*
|
||||
* Default option is set to true
|
||||
*/
|
||||
"showSettingsInAdminPage": {{ etherpad_showSettingsInAdminPage }},
|
||||
"showSettingsInAdminPage": {{ etherpad_show_settings_in_admin_page }},
|
||||
|
||||
/*
|
||||
* Settings for cleanup of pads
|
||||
*/
|
||||
"cleanup": {
|
||||
"enabled": {{ etherpad_cleanup_enabled }},
|
||||
"keepRevisions": {{ etherpad_cleanup_keep_revisions }}
|
||||
},
|
||||
|
||||
/*
|
||||
* Node native SSL support
|
||||
|
@ -270,10 +278,17 @@
|
|||
"pageDown": true
|
||||
},
|
||||
|
||||
/*
|
||||
* Enables the use of a different server. We have a different one that syncs changes from the original server.
|
||||
* It is hosted on GitHub and should not be blocked by many firewalls.
|
||||
* https://etherpad.org/ep_infos
|
||||
"updateServer": "https://etherpad.org/ep_infos",
|
||||
*/
|
||||
|
||||
/*
|
||||
* Should we suppress errors from being visible in the default Pad Text?
|
||||
*/
|
||||
"suppressErrorsInPadText": {{ etherpad_suppressErrorsInPadText }},
|
||||
"suppressErrorsInPadText": {{ etherpad_suppress_errors_in_pad_text }},
|
||||
|
||||
/*
|
||||
* If this option is enabled, a user must have a session to access pads.
|
||||
|
@ -326,7 +341,7 @@
|
|||
* Allow import of file types other than the supported ones:
|
||||
* txt, doc, docx, rtf, odt, html & htm
|
||||
*/
|
||||
"allowUnknownFileEnds": {{ etherpad_allowUnknownFileEnds }},
|
||||
"allowUnknownFileEnds": {{ etherpad_allow_unknown_file_ends }},
|
||||
|
||||
/*
|
||||
* This setting is used if you require authentication of all users.
|
||||
|
@ -408,7 +423,7 @@
|
|||
* will delete the cookie when the browser exits, but a session record is
|
||||
* kept in the database forever.
|
||||
*/
|
||||
"sessionLifetime": {{ etherpad_sessionLifetime }}, // = 10d * 24h/d * 60m/h * 60s/m * 1000ms/s
|
||||
"sessionLifetime": {{ etherpad_session_lifetime }}, // = 10d * 24h/d * 60m/h * 60s/m * 1000ms/s
|
||||
|
||||
/*
|
||||
* How long (in milliseconds) before the expiration time of an active user's
|
||||
|
@ -426,7 +441,7 @@
|
|||
* Automatic session refreshes can be disabled (not recommended) by setting
|
||||
* this to null.
|
||||
*/
|
||||
"sessionRefreshInterval": {{ etherpad_sessionRefreshInterval }} // = 1d * 24h/d * 60m/h * 60s/m * 1000ms/s
|
||||
"sessionRefreshInterval": {{ etherpad_session_refresh_interval }} // = 1d * 24h/d * 60m/h * 60s/m * 1000ms/s
|
||||
},
|
||||
|
||||
/*
|
||||
|
@ -440,7 +455,7 @@
|
|||
*
|
||||
* Set to 0 to disable automatic reconnection.
|
||||
*/
|
||||
"automaticReconnectionTimeout": {{ etherpad_automaticReconnectionTimeout }},
|
||||
"automaticReconnectionTimeout": {{ etherpad_automatic_reconnection_timeout }},
|
||||
|
||||
/*
|
||||
* By default, when caret is moved out of viewport, it scrolls the minimum
|
||||
|
@ -527,11 +542,11 @@
|
|||
{% for key, value in etherpad_plugins_list.items() %}
|
||||
{% if key == "ep_delete_after_delay" and value == "enabled" %}
|
||||
"ep_delete_after_delay": {
|
||||
"delay": {{ delay }}, // one day, in seconds
|
||||
"loop": {{ loopdeletion }},
|
||||
"loopDelay": {{ loopDelay }}, // one hour, in seconds
|
||||
"deleteAtStart": {{ deleteAtStart }},
|
||||
"text": "{{ text }}"
|
||||
"delay": {{ ep_delafter_delay }}, // one day, in seconds
|
||||
"loop": {{ ep_delafter_loopdeletion }},
|
||||
"loopDelay": {{ ep_delafter_loopdelay }}, // one hour, in seconds
|
||||
"deleteAtStart": {{ ep_delafter_delete_at_start }},
|
||||
"text": "{{ ep_delafter_text }}"
|
||||
},
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
@ -551,20 +566,21 @@
|
|||
* value to work properly, but increasing the value increases susceptibility
|
||||
* to denial of service attacks (malicious clients can exhaust memory).
|
||||
*/
|
||||
"maxHttpBufferSize": {{ etherpad_maxHttpBufferSize }}
|
||||
"maxHttpBufferSize": {{ etherpad_max_http_buffer_size }}
|
||||
},
|
||||
|
||||
/*
|
||||
* Allow Load Testing tools to hit the Etherpad Instance.
|
||||
*
|
||||
* WARNING: this will disable security on the instance.
|
||||
* WARNING: this will disable security on the instance./etherpad_logLayoutType
|
||||
|
||||
*/
|
||||
"loadTest": false,
|
||||
|
||||
/**
|
||||
* Disable dump of objects preventing a clean exit
|
||||
*/
|
||||
"dumpOnUncleanExit": {{ etherpad_dumpOnUncleanExit }},
|
||||
"dumpOnUncleanExit": {{ etherpad_dump_on_unclean_exit }},
|
||||
|
||||
/*
|
||||
* Disable indentation on new line when previous line ends with some special
|
||||
|
@ -572,7 +588,7 @@
|
|||
*/
|
||||
|
||||
/*
|
||||
"indentationOnNewLine": {{ etherpad_indentationOnNewLine }},
|
||||
"indentationOnNewLine": {{ etherpad_indentation_on_new_line }},
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@ -586,10 +602,10 @@
|
|||
*/
|
||||
"importExportRateLimiting": {
|
||||
// duration of the rate limit window (milliseconds)
|
||||
"windowMs": {{ etherpad_importExportRateLimitingwindowMs }},
|
||||
"windowMs": {{ etherpad_import_export_rate_limiting_window_ms }},
|
||||
|
||||
// maximum number of requests per IP to allow during the rate limit window
|
||||
"max": {{ etherpad_importExportRateLimitingMax }}
|
||||
"max": {{ etherpad_import_export_rate_limiting_max }}
|
||||
},
|
||||
|
||||
/*
|
||||
|
@ -598,7 +614,14 @@
|
|||
*
|
||||
* File size is specified in bytes. Default is 50 MB.
|
||||
*/
|
||||
"importMaxFileSize": {{ etherpad_importMaxFileSize }}, // 50 * 1024 * 1024
|
||||
"importMaxFileSize": {{ etherpad_import_max_file_size }}, // 50 * 1024 * 1024
|
||||
|
||||
/*
|
||||
The authentication method used by the server.
|
||||
The default value is sso
|
||||
If you want to use the old authentication system, change this to apikey
|
||||
*/
|
||||
"authenticationMethod": "${AUTHENTICATION_METHOD:{{ etherpad_authmethod }}}",
|
||||
|
||||
/*
|
||||
* From Etherpad 1.8.5 onwards, when Etherpad is in production mode commits from individual users are rate limited
|
||||
|
@ -646,7 +669,7 @@
|
|||
*
|
||||
* Do not enable on production machines.
|
||||
*/
|
||||
"exposeVersion": {{ etherpad_exposeVersion }},
|
||||
"exposeVersion": {{ etherpad_expose_version }},
|
||||
|
||||
/*
|
||||
* The log level we are using.
|
||||
|
@ -655,14 +678,52 @@
|
|||
*/
|
||||
"loglevel": "{{ etherpad_loglevel }}",
|
||||
|
||||
/*
|
||||
* The log layout type to use.
|
||||
*
|
||||
* Valid values: basic, colored
|
||||
*/
|
||||
"logLayoutType": "{{ etherpad_log_layout_type }}",
|
||||
|
||||
/* Override any strings found in locale directories */
|
||||
"customLocaleStrings": {},
|
||||
|
||||
/* Disable Admin UI tests */
|
||||
"enableAdminUITests": {{ etherpad_enableAdminUITests }},
|
||||
"enableAdminUITests": {{ etherpad_enable_admin_ui_tests }},
|
||||
|
||||
/*
|
||||
* Enable/Disable case-insensitive pad names.
|
||||
*/
|
||||
"lowerCasePadIds": false
|
||||
|
||||
/*"sso": {
|
||||
"issuer": "${SSO_ISSUER:http://localhost:9001}",
|
||||
"clients": [
|
||||
{
|
||||
"client_id": "${ADMIN_CLIENT:admin_client}",
|
||||
"client_secret": "${ADMIN_SECRET:admin}",
|
||||
"grant_types": ["authorization_code"],
|
||||
"response_types": ["code"],
|
||||
"redirect_uris": ["${ADMIN_REDIRECT:http://localhost:9001/admin/}"]
|
||||
},
|
||||
{
|
||||
"client_id": "${USER_CLIENT:user_client}",
|
||||
"client_secret": "${USER_SECRET:user}",
|
||||
"grant_types": ["authorization_code"],
|
||||
"response_types": ["code"],
|
||||
"redirect_uris": ["${USER_REDIRECT:http://localhost:9001/}"]
|
||||
}
|
||||
]
|
||||
}
|
||||
*/
|
||||
/* Set the time to live for the tokens
|
||||
This is the time of seconds a user is logged into Etherpad
|
||||
"ttl": {
|
||||
"AccessToken": 3600,
|
||||
"AuthorizationCode": 600,
|
||||
"ClientCredentials": 3600,
|
||||
"IdToken": 3600,
|
||||
"RefreshToken": 86400
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue