mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-06-06 02:48:51 -04:00
Config templating (#5900)
Template config files * Imagine a system composed entirely of x, y, z etc and the basic operations.. Wait George, why XOR? Why not just neq? George: Eh, I didn't think of that.. Co-Authored-By: Erik Johnston <erik@matrix.org>
This commit is contained in:
parent
7dc398586c
commit
6d97843793
9 changed files with 366 additions and 46 deletions
|
@ -13,7 +13,9 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
from synapse.config.server import is_threepid_reserved
|
||||
import yaml
|
||||
|
||||
from synapse.config.server import ServerConfig, is_threepid_reserved
|
||||
|
||||
from tests import unittest
|
||||
|
||||
|
@ -29,3 +31,100 @@ class ServerConfigTestCase(unittest.TestCase):
|
|||
self.assertTrue(is_threepid_reserved(config, user1))
|
||||
self.assertFalse(is_threepid_reserved(config, user3))
|
||||
self.assertFalse(is_threepid_reserved(config, user1_msisdn))
|
||||
|
||||
def test_unsecure_listener_no_listeners_open_private_ports_false(self):
|
||||
conf = yaml.safe_load(
|
||||
ServerConfig().generate_config_section(
|
||||
"che.org", "/data_dir_path", False, None
|
||||
)
|
||||
)
|
||||
|
||||
expected_listeners = [
|
||||
{
|
||||
"port": 8008,
|
||||
"tls": False,
|
||||
"type": "http",
|
||||
"x_forwarded": True,
|
||||
"bind_addresses": ["::1", "127.0.0.1"],
|
||||
"resources": [{"names": ["client", "federation"], "compress": False}],
|
||||
}
|
||||
]
|
||||
|
||||
self.assertEqual(conf["listeners"], expected_listeners)
|
||||
|
||||
def test_unsecure_listener_no_listeners_open_private_ports_true(self):
|
||||
conf = yaml.safe_load(
|
||||
ServerConfig().generate_config_section(
|
||||
"che.org", "/data_dir_path", True, None
|
||||
)
|
||||
)
|
||||
|
||||
expected_listeners = [
|
||||
{
|
||||
"port": 8008,
|
||||
"tls": False,
|
||||
"type": "http",
|
||||
"x_forwarded": True,
|
||||
"resources": [{"names": ["client", "federation"], "compress": False}],
|
||||
}
|
||||
]
|
||||
|
||||
self.assertEqual(conf["listeners"], expected_listeners)
|
||||
|
||||
def test_listeners_set_correctly_open_private_ports_false(self):
|
||||
listeners = [
|
||||
{
|
||||
"port": 8448,
|
||||
"resources": [{"names": ["federation"]}],
|
||||
"tls": True,
|
||||
"type": "http",
|
||||
},
|
||||
{
|
||||
"port": 443,
|
||||
"resources": [{"names": ["client"]}],
|
||||
"tls": False,
|
||||
"type": "http",
|
||||
},
|
||||
]
|
||||
|
||||
conf = yaml.safe_load(
|
||||
ServerConfig().generate_config_section(
|
||||
"this.one.listens", "/data_dir_path", True, listeners
|
||||
)
|
||||
)
|
||||
|
||||
self.assertEqual(conf["listeners"], listeners)
|
||||
|
||||
def test_listeners_set_correctly_open_private_ports_true(self):
|
||||
listeners = [
|
||||
{
|
||||
"port": 8448,
|
||||
"resources": [{"names": ["federation"]}],
|
||||
"tls": True,
|
||||
"type": "http",
|
||||
},
|
||||
{
|
||||
"port": 443,
|
||||
"resources": [{"names": ["client"]}],
|
||||
"tls": False,
|
||||
"type": "http",
|
||||
},
|
||||
{
|
||||
"port": 1243,
|
||||
"resources": [{"names": ["client"]}],
|
||||
"tls": False,
|
||||
"type": "http",
|
||||
"bind_addresses": ["this_one_is_bound"],
|
||||
},
|
||||
]
|
||||
|
||||
expected_listeners = listeners.copy()
|
||||
expected_listeners[1]["bind_addresses"] = ["::1", "127.0.0.1"]
|
||||
|
||||
conf = yaml.safe_load(
|
||||
ServerConfig().generate_config_section(
|
||||
"this.one.listens", "/data_dir_path", True, listeners
|
||||
)
|
||||
)
|
||||
|
||||
self.assertEqual(conf["listeners"], expected_listeners)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue