- Oct 22, 2021
-
-
Dan Callahan authored
Use $(...) notation instead of legacy backticked `...`. https://github.com/koalaman/shellcheck/wiki/SC2006 Signed-off-by:
Dan Callahan <danc@element.io>
-
Dan Callahan authored
Double quote to prevent globbing and word splitting. https://github.com/koalaman/shellcheck/wiki/SC2086 Signed-off-by:
Dan Callahan <danc@element.io>
-
Dan Callahan authored
var is referenced but not assigned. https://github.com/koalaman/shellcheck/wiki/SC2154 Signed-off-by:
Dan Callahan <danc@element.io>
-
- Oct 21, 2021
-
-
Richard van der Hoff authored
relative links don't work when it's on dockerhub.
-
- Sep 28, 2021
-
-
Erik Johnston authored
This was due to dh-virtualenv builds being broken due to Shpinx removing deprecated APIs.
-
- Sep 24, 2021
-
-
David Robertson authored
- Use sytest:bionic. Sytest:latest is two years old (do we want CI to push out latest at all?) and comes with Python 3.5, which we explictly no longer support. The script now runs under PostgreSQL 10 as a result. - Advertise script in the docs - Move pg testing script to scripts-dev directory - Write to host as the script's exector, not root A few changes to make it speedier to re-run the tests: - Create blank DB in the container, not the script, so we don't have to `initdb` each time - Use a named volume to persist the tox environment, so we don't have to fetch and install a bunch of packages from PyPI each time Co-authored-by:
reivilibre <olivier@librepush.net>
-
- Sep 08, 2021
-
-
kegsay authored
-
- Aug 17, 2021
-
-
reivilibre authored
-
- Aug 01, 2021
-
-
Richard van der Hoff authored
-
- Jul 21, 2021
-
-
Richard van der Hoff authored
-
- Jul 14, 2021
-
-
Richard van der Hoff authored
This is part of fixing #6116: we want to put RC debs into a different place than release debs, so reprepro has to be able to tell them apart.
-
- Jul 08, 2021
-
-
Dirk Klimpel authored
Signed-off-by:
Dirk Klimpel <dirk@klimpel.org>
-
- Jun 17, 2021
-
-
Brendan Abolivier authored
Fixes #9778 ACME v1 has been fully decommissioned for existing installs on June 1st 2021(see https://community.letsencrypt.org/t/end-of-life-plan-for-acmev1/88430/27), so we can now safely remove it from Synapse.
-
- Jun 07, 2021
-
-
Chris Castle authored
Signed-off-by:
Chris Castle <chris@crc.io>
-
- May 24, 2021
-
-
Patrick Cloke authored
Adds an option to complement.sh to run Synapse in worker mode (instead of the default monolith mode).
-
Sergio Miguéns authored
Fixes #9970 Signed-off-by:
Sergio Miguéns Iglesias <lonyelon@lony.xyz>
-
- May 05, 2021
-
-
Christopher May-Townsend authored
* Add healthcheck startup delay by 5secs and reduced interval check to 15s to reduce waiting time for docker aware edge routers bringing an instance online
-
- Apr 14, 2021
-
-
Andrew Morgan authored
This PR adds a Dockerfile and some supporting files to the `docker/` directory. The Dockerfile's intention is to spin up a container with: * A Synapse main process. * Any desired worker processes, defined by a `SYNAPSE_WORKERS` environment variable supplied at runtime. * A redis for worker communication. * A nginx for routing traffic. * A supervisord to start all worker processes and monitor them if any go down. Note that **this is not currently intended to be used in production**. If you'd like to use Synapse workers with Docker, instead make use of the official image, with one worker per container. The purpose of this dockerfile is currently to allow testing Synapse in worker mode with the [Complement](https://github.com/matrix-org/complement/) test suite. `configure_workers_and_start.py` is where most of the magic happens in this PR. It reads from environment variables (documented in the file) and creates all necessary config files for the processes. It is the entrypoint of the Dockerfile, and thus is run any time the docker container is spun up, recreating all config files in case you want to use a different set of workers. One can specify which workers they'd like to use by setting the `SYNAPSE_WORKERS` environment variable (as a comma-separated list of arbitrary worker names) or by setting it to `*` for all worker processes. We will be using the latter in CI. Huge thanks to @MatMaul for helping get this all working
This PR is paired with its equivalent on the Complement side: https://github.com/matrix-org/complement/pull/62. Note, for the purpose of testing this PR before it's merged: You'll need to (re)build the base Synapse docker image for everything to work (`matrixdotorg/synapse:latest`). Then build the worker-based docker image on top (`matrixdotorg/synapse:workers`). -
Andrew Morgan authored
Context is in https://github.com/matrix-org/synapse/issues/9764#issuecomment-818615894. I struggled to find a more official link for this. The problem occurs when using WSL1 instead of WSL2, which some Windows platforms (at least Server 2019) still don't have. Docker have updated their documentation to paint a much happier picture now given WSL2's support. The last sentence here can probably be removed once WSL1 is no longer around... though that will likely not be for a very long time.
-
- Apr 08, 2021
-
-
Johannes Wienke authored
They don't make any sense on the intermediate builder image. The final images needs them to be of use for anyone. Signed-off-by:
Johannes Wienke <languitar@semipol.de>
-
- Mar 30, 2021
-
-
Richard van der Hoff authored
`room_invite_state_types` was inconvenient as a configuration setting, because anyone that ever set it would not receive any new types that were added to the defaults. Here, we deprecate the old setting, and replace it with a couple of new settings under `room_prejoin_state`.
-
- Mar 26, 2021
-
-
Eric Eastwood authored
Make pip install faster in Docker build for [Complement](https://github.com/matrix-org/complement) testing. If files have changed in a `COPY` command, Docker will invalidate all of the layers below. So I changed the order of operations to install all dependencies before we `COPY synapse /synapse/synapse/`. This allows Docker to use our cached layer of dependencies even when we change the source of Synapse and speed up builds dramatically! `53.5s` -> `3.7s` builds
As an alternative, I did try using BuildKit caches but this still took 30 seconds overall on that step. 15 seconds to gather the dependencies from the cache and another 15 seconds to `Installing collected packages`. Fix https://github.com/matrix-org/synapse/issues/9364 -
Erik Johnston authored
-
- Mar 25, 2021
-
-
Quentin Gliech authored
On NixOS, `bash` isn't under `/bin/bash` but rather in some directory in `$PATH`. Locally, I've been patching those scripts to make them work. `/usr/bin/env` seems to be the only [portable way](https://unix.stackexchange.com/questions/29608/why-is-it-better-to-use-usr-bin-env-name-instead-of-path-to-name-as-my ) to use binaries from the PATH as interpreters. Signed-off-by:
Quentin Gliech <quentingliech@gmail.com>
-
- Mar 22, 2021
-
- Mar 16, 2021
-
-
Mathieu Velten authored
Co-authored-by:
Will Hunt <willh@matrix.org> Co-authored-by:
Erik Johnston <erik@matrix.org>
-
- Feb 22, 2021
-
-
Richard van der Hoff authored
`uploads_path` was a thing that was never used; most of it was removed in #6628 but a few vestiges remained.
-
- Feb 15, 2021
-
-
Dan Callahan authored
This is needed to build the cryptography library, since it does not provide wheels for ARMv7. Fixes #9403 Signed-off-by:
Dan Callahan <danc@element.io>
-
- Jan 29, 2021
-
-
Dan Callahan authored
Adds note about updating dh-virtualenv once we drop support for Xenial. We can't update now, because it needs debhelper 12, while Xenial only backports 10. Signed-off-by:
Dan Callahan <danc@element.io>
-
- Jan 19, 2021
-
-
Andrew Morgan authored
Replace 'perspectives' config block with 'trusted_key_servers' in docker homeserver.yaml template (#9157)
-
- Jan 12, 2021
-
-
Dan Callahan authored
Debian package builds were failing for two reasons: 1. Python versions prior to 3.7 throw exceptions when attempting to print Unicode characters under a "C" locale. (#9076) 2. We depended on `dh-systemd` which no longer exists in Debian Bullseye, but is necessary in Ubuntu Xenial. (#9073) Setting `LANG="C.UTF-8"` in the build environment fixes the first issue. See also: https://bugs.python.org/issue19846 The second issue is a bit trickier. The dh-systemd package was merged into debhelper version 9.20160709 and a transitional package left in its wake. The transitional dh-systemd package was removed in Debian Bullseye. However, Ubuntu Xenial ships an older debhelper, and still needs dh-systemd. Thus, builds were failing on Bullseye since we depended on a package which had ceased existing, but we couldn't remove it from the debian/control file and our build scripts because we still needed it for Ubuntu Xenial. We can fix the debian/control issue by listing dh-systemd as an alternative to the newer versions of debhelper. Since dh-systemd declares that it depends on debhelper, Ubuntu Xenial will select its older dh-systemd which will in turn pull in its older debhelper, resulting in no change from the status quo. All other supported releases will satisfy the debhelper dependency constraint and skip the dh-systemd alternative. Build scripts were fixed by unconditionally attempting to install dh-systemd on all releases and suppressing failures. Once we drop support for Ubuntu Xenial, we can revert most of this commit and rely on the version constraint on debhelper in debian/control. Fixes #9076 Fixes #9073 Signed-off-by:
Dan Callahan <danc@element.io>
-
- Dec 09, 2020
-
-
Erik Johnston authored
-
- Dec 04, 2020
-
-
Jordan Bancino authored
This removes the version pin of the `prometheus_client` dependency, in direct response to #8831. If merged, this will close #8831 As far as I can tell, no other changes are needed, but as I'm no synapse expert, I'm relying heavily on CI and maintainer reviews for this. My very primitive test of synapse with prometheus_client v0.9.0 on my home server didn't bring up any issues, so we'll see what happens. Signed-off-by: Jordan Bancino
-
- Nov 17, 2020
-
-
Andrew Morgan authored
Short-term fix for https://github.com/matrix-org/synapse/issues/8766.
-
- Nov 02, 2020
-
-
Dan Callahan authored
This bumps us closer to current Python without going all the way to 3.9. Fixes #8674 Signed-off-by:
Dan Callahan <danc@element.io>
-
- Oct 11, 2020
-
-
Samuel Philipp authored
-
- Oct 09, 2020
-
-
Mateusz Przybyłowicz authored
Signed-off-by:
Mateusz Przybyłowicz <uamfhq@gmail.com>
-
- Aug 26, 2020
-
-
Christopher May-Townsend authored
Signed-off-by:
Christopher May-Townsend <chris@maytownsend.co.uk>
-
- Aug 24, 2020
-
-
Christopher May-Townsend authored
-
- Aug 11, 2020
-
-
Erik Johnston authored
We do this to prevent foot guns. The default config uses a MemoryFilter, but users are free to change to logging to files directly. If they do then they have to ensure to set the `filters: [context]` on the right handler, otherwise records get written with the wrong context. Instead we move the logic to happen when we generate a record, which is when we *log* rather than *handle*. (It's possible to add filters to loggers in the config, however they don't apply to descendant loggers and so they have to be manually set on *every* logger used in the code base)
-