From e87499b3f46a31c25df2da8686d3b913f8094660 Mon Sep 17 00:00:00 2001
From: "Amanda H. L. de Andrade Katz" <amandahla@gmail.com>
Date: Tue, 5 Dec 2023 08:42:56 -0300
Subject: [PATCH] Add how to validate configuration file with synapse.config
 script (#16714)

---
 changelog.d/16714.doc                           |  1 +
 .../usage/configuration/config_documentation.md | 17 +++++++++++++++++
 2 files changed, 18 insertions(+)
 create mode 100644 changelog.d/16714.doc

diff --git a/changelog.d/16714.doc b/changelog.d/16714.doc
new file mode 100644
index 0000000000..511d2b6022
--- /dev/null
+++ b/changelog.d/16714.doc
@@ -0,0 +1 @@
+Add documentation for how to validate the configuration file with synapse.config script.
diff --git a/docs/usage/configuration/config_documentation.md b/docs/usage/configuration/config_documentation.md
index e6fcffb570..425ec75542 100644
--- a/docs/usage/configuration/config_documentation.md
+++ b/docs/usage/configuration/config_documentation.md
@@ -33,6 +33,23 @@ In addition, configuration options referring to size use the following suffixes:
 For example, setting `max_avatar_size: 10M` means that Synapse will not accept files larger than 10,485,760 bytes
 for a user avatar.
 
+## Config Validation
+
+The configuration file can be validated with the following command:
+```bash
+python -m synapse.config read <config key to print> -c <path to config>
+```
+
+To validate the entire file, omit `read <config key to print>`:
+```bash
+python -m synapse.config -c <path to config>
+```
+
+To see how to set other options, check the help reference:
+```bash
+python -m synapse.config --help
+```
+
 ### YAML
 The configuration file is a [YAML](https://yaml.org/) file, which means that certain syntax rules
 apply if you want your config file to be read properly. A few helpful things to know:
-- 
GitLab