Compare commits

...

19 commits
2.0.2 ... main

Author SHA1 Message Date
e1ececcb58 2.2.6 (#38)
- Updated to version 2.2.6
- Applied style guide

Co-authored-by: meaz <meaz@disroot.org>
Reviewed-on: #38
Reviewed-by: meaz <meaz@no-reply@disroot.org>
2024-12-03 21:15:17 +01:00
1bd318d112 Remove ep_previewimage module (#35) (#36)
It's no longer maintained and should not be used as it breaks pads using links to images since etherpad 2.XX

Reviewed-on: #35
Co-authored-by: muppeth <muppeth@disroot.org>
Co-committed-by: muppeth <muppeth@disroot.org>

Reviewed-on: #36
Co-authored-by: muppeth <muppeth@disroot.org>
Co-committed-by: muppeth <muppeth@disroot.org>
2024-10-25 18:29:21 +02:00
97101a41bd
Merge branch 'staging' 2024-10-08 20:53:38 +02:00
fb9f353130 update to version 2.2.5 (#33)
This update solves the issue with slider that has been reported here: Disroot/Disroot-Project#953

Would be nice to get it pushed to the upcoming deployment.

Reviewed-on: #33
Co-authored-by: muppeth <muppeth@disroot.org>
Co-committed-by: muppeth <muppeth@disroot.org>
2024-09-26 06:24:05 +02:00
eb193119e1 update to 2.2.4 (#32)
Reviewed-on: #32
Reviewed-by: muppeth <muppeth@no-reply@disroot.org>
Co-authored-by: meaz <meaz@disroot.org>
Co-committed-by: meaz <meaz@disroot.org>
2024-09-14 09:15:19 +02:00
8beadae205 Update to 2.1.1 (#30)
To be merged before deployment on prod.

Co-authored-by: muppeth <muppeth@disroot.org>
Reviewed-on: #30
Reviewed-by: muppeth <muppeth@no-reply@disroot.org>
Co-authored-by: meaz <meaz@disroot.org>
Co-committed-by: meaz <meaz@disroot.org>
2024-08-06 21:19:52 +02:00
61e5ed05a3
merging master 2024-07-17 18:22:33 +02:00
292c04cbc0 replace nodejs task by role (#23)
WIP as node role PR need to be merged first

Co-authored-by: muppeth <muppeth@no-reply@disroot.org>
Reviewed-on: #23
Reviewed-by: muppeth <muppeth@no-reply@disroot.org>
2024-07-17 18:09:36 +02:00
0fedce36a6 Update to 2.1.1 (#29)
Reviewed-on: #29
Reviewed-by: muppeth <muppeth@no-reply@disroot.org>
2024-07-15 18:34:15 +02:00
6dc97b3e9c remove modules (#28)
Add possibility to remove modules

Co-authored-by: muppeth <muppeth@disroot.org>
Reviewed-on: #28
Reviewed-by: muppeth <muppeth@no-reply@disroot.org>
2024-07-13 10:25:38 +02:00
de7badc583 Update to version 2.0.3 (#26)
Co-authored-by: meaz <meaz@disroot.org>
Reviewed-on: #26
Reviewed-by: meaz <meaz@no-reply@disroot.org>
Co-authored-by: muppeth <muppeth@disroot.org>
Co-committed-by: muppeth <muppeth@disroot.org>
2024-06-04 21:51:12 +02:00
90b371aa59 Merge branch 'staging' of git.disroot.org:Disroot-Ansible/etherpad into staging 2024-06-04 21:50:11 +02:00
4079807c8e 2.1.0 - Version bump (#27)
Reviewed-on: #27
Reviewed-by: meaz <meaz@no-reply@disroot.org>
Co-authored-by: muppeth <muppeth@disroot.org>
Co-committed-by: muppeth <muppeth@disroot.org>
2024-06-04 21:45:03 +02:00
a3b5fc1eab Merge branch 'staging' of git.disroot.org:Disroot-Ansible/etherpad into staging 2024-06-04 00:06:28 +02:00
bec361ed7f Version update to 2.0.3 (#25)
Reviewed-on: #25
Reviewed-by: meaz <meaz@no-reply@disroot.org>
Co-authored-by: muppeth <muppeth@disroot.org>
Co-committed-by: muppeth <muppeth@disroot.org>
2024-05-21 13:36:59 +02:00
903fea413a Merge branch 'main' into staging 2024-05-16 11:57:24 +02:00
62a7145f3a build admin page (#22)
Fix the issue with admin page.
Also, I know we got that discussion already for cryptpad, but I removed npm package as it is already installed with nodejs even on bookworm. Otherwise I get an error as it is trying to install`npm=9.2.0` whereas with nodejs you get `npm=10.5.0`

Reviewed-on: #22
Reviewed-by: muppeth <muppeth@no-reply@disroot.org>
Co-authored-by: meaz <meaz@disroot.org>
Co-committed-by: meaz <meaz@disroot.org>
2024-04-16 22:58:44 +02:00
26e8c2d3f7 Update to 2.0.2 (#21)
I created an issue upstream as there is no possibility to remove modules from cli. The main dev will do is tomorrow normally. So I keep this as WIP at the moment.

Reviewed-on: #21
Reviewed-by: muppeth <muppeth@no-reply@disroot.org>
Co-authored-by: meaz <meaz@disroot.org>
Co-committed-by: meaz <meaz@disroot.org>
2024-04-16 15:08:00 +02:00
5dfb6bfaec
added npm to apt list 2024-03-08 10:46:48 +01:00
15 changed files with 214 additions and 141 deletions

6
.ansible-lint Normal file
View file

@ -0,0 +1,6 @@
skip_list:
- fqcn-builtins
- fqcn[action]
- fqcn[action-core]
- fqcn[canonical]
- name[casing]

View file

@ -3,6 +3,7 @@
- hosts: etherpad
roles:
- mariadb
- node
- etherpad
vars_files:

View file

@ -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

View 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:

View file

@ -1,6 +1,6 @@
---
- name: restart etherpad
- name: 'Restart etherpad'
systemd:
name: etherpad
state: restarted
name: 'etherpad'
state: 'restarted'

View file

@ -2,6 +2,6 @@
- name: '[LIBRE-OFFICE] - Install Abiword'
apt:
name: abiword
state: present
update_cache: yes
name: 'abiword'
state: 'present'
update_cache: true

View file

@ -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'

View file

@ -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'

View file

@ -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'

View file

@ -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

View file

@ -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

View file

@ -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'

View file

@ -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'

View file

@ -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

View file

@ -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
}
*/
}