summary refs log tree commit diff
path: root/.github/workflows (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Run Complement tests sequentially (#11910)kegsay2022-02-041-1/+1
| | | | | | | | | | | Since #11811 there has been general Complement flakiness around networking. It seems like tests are hitting the wrong containers. In an effort to diagnose the cause of this, as well as reduce its impact on this project, set the parallelsim to 1 (no parallelism) when running tests. If this fixes the flakiness then this indicates the cause and I can diagnose this further. If this doesn't fix the flakiness then that implies some kind of test pollution which also helps to diagnose this further.
* CI: run Complement on the VM, not inside Docker (#11811)kegsay2022-01-251-10/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * CI: run Complement on the VM, not inside Docker This requires https://github.com/matrix-org/complement/pull/289 We now run Complement on the VM instead of inside a Docker container. This is to allow Complement to bind to any high-numbered port when it starts up its own federation servers. We want to do this to allow for more concurrency when running complement tests. Previously, Complement only ever bound to `:8448` when running its own federation server. This prevented multiple federation tests running at the same time as they would fight each other on the port. This did however allow Complement to run in Docker, as the host could just port forward `:8448` to allow homeserver containers to communicate to Complement. Now that we are using random ports however, we cannot use Docker to run Complement. This ends up being a good thing because: - Running Complement tests locally is closer to how they run in CI. - Allows the `CI` env var to be removed in Complement. - Slightly speeds up runs as we don't need to pull down the Complement image prior to running tests. This assumes GHA caches actions sensibly. * Changelog * Full stop * Update .github/workflows/tests.yml Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Review comments * Update .github/workflows/tests.yml Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Skip the initial amd64-only Docker build (#11810)Richard van der Hoff2022-01-241-12/+2
| | | | | PyNaCl's recent 1.5.0 release on PyPi includes arm64 wheels, which means our arm64 docker images now build in a sensible amount of time, so we can skip the amd64-only build.
* Drop support for and remove references to EOL Python 3.6 (#11683)Shay2022-01-212-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * remove reference in comments to python3.6 * upgrade tox python env in script * bump python version in example for completeness * upgrade python version requirement in setup doc * upgrade necessary python version in __init__.py * upgrade python version in setup.py * newsfragment * drops refs to bionic and replace with focal * bump refs to postgres 9.6 to 10 * fix hanging ci * try installing tzdata first * revert change made in b979f336 * ignore new random mypy error while debugging other error * fix lint error for temporary workaround * revert change to install list * try passing env var * export debian frontend var? * move line and add comment * bump pillow dependency * bump lxml depenency * install libjpeg-dev for pillow * bump automat version to one compatible with py3.8 * add libwebp for pillow * bump twisted trunk python version * change suffix of newsfragment * remove redundant python 3.7 checks * lint
* Use buildkit's cache feature to speed up docker builds (#11691)Richard van der Hoff2022-01-121-0/+2
| | | Having spent much of the last week attempting to run complement tests from somewhere with damp string instead of internet... something had to be done.
* Prettier complement logs (#11707)kegsay2022-01-101-1/+2
| | | | | * Prettier complement logs * Changelog
* Drop EOL python 3.6 from CI (#11595)Shay2021-12-211-6/+6
| | | | | | | | | | | * remove python 3.6 and postgres 9.6 from github workflow * remove python 3.6 env from tox * newsfragment * correct postgres version * add py310 to tox env list
* Support the stable /hierarchy endpoint from MSC2946 (#11329)Patrick Cloke2021-11-291-1/+1
| | | | | | This also makes additional updates where the implementation had drifted from the approved MSC. Unstable endpoints will be removed at a later data.
* Return the stable `event` field from `/send_join` per MSC3083. (#11413)Patrick Cloke2021-11-291-1/+1
| | | | | This does not remove the unstable field and still parses both. Handling of the unstable field will need to be removed in the future.
* Publish a `develop` docker image (#11380)Richard van der Hoff2021-11-191-1/+4
| | | | I'd find it helpful to have a docker image corresponding to current develop, without having to build my own.
* Fix broken export-data admin command and add a test for it to CI (#11078)Hillery Shay2021-10-181-0/+29
| | | Fix broken export-data admin command and add a test for it to CI
* Always dump logs from trial during CI. (#11068)Patrick Cloke2021-10-122-0/+8
| | | Instead of only dumping them if trial passes.
* Fix CI to run the unit tests without optional deps (#11017)Erik Johnston2021-10-081-3/+6
| | | | | This also turns off calculating code coverage, as we didn't use it and it was a lot of noise
* Run CI with Python 3.10 and Postgres 14 (#10992)David Robertson2021-10-051-7/+7
|
* Clear our destination directories before copying files to GitHub pages. (#10869)Patrick Cloke2021-09-211-1/+0
| | | This should fix stale deleted files being still accessible.
* GHA: reintroduce an env var for `$GITHUB_HEAD_REF` (#10659)David Robertson2021-09-201-0/+1
| | | This should ensure GHA runs synapse against the same-named sytest branch
* Avoid duplicate issues from Twisted trunk failures (#10672)Dan Callahan2021-08-231-1/+2
| | | | | | | | | | | | | | | | | | Setting `update_existing: true` in the `create-an-issue` GitHub Action will avoid opening duplicate issues if an open issue already exists with an identical title. If no open issues match the title, then a new issue will be created. This helps avoid spamming our issue tracker should there be a failure when testing against Twisted's trunk. This PR also pins the SHA of the `create-an-issue` action to mitigate the risk of a malicious actor gaining access to JasonEtco's account. See GitHub's page on security hardening third party actions for more: https://docs.github.com/en/actions/learn-github-actions/security-hardening-for-github-actions#using-third-party-actions Signed-off-by: Dan Callahan <danc@element.io>
* Run a nightly CI build against Twisted trunk. (#10651)Richard van der Hoff2021-08-231-0/+89
| | | This creates a GHA workflow which runs at 8am every day, and runs mypy, trial and sytest against Twisted's current trunk. If any of the jobs fail, it opens an issue.
* Remove buildkite-era commentDavid Robertson2021-08-121-3/+0
|
* portdb also uses coverage, so provide $TOP thereDavid Robertson2021-08-121-0/+2
|
* set TOP in sytest containersDavid Robertson2021-08-111-0/+1
|
* Rename ci to .ciDavid Robertson2021-08-111-3/+3
|
* Remove buildkite from portdb CI testsDavid Robertson2021-08-101-7/+1
|
* Remove unused BUILDKITE_BRANCH env varDavid Robertson2021-08-101-1/+0
|
* Move sytest worker-blacklist to ci directoryDavid Robertson2021-08-101-1/+1
|
* check-newsfragment: pass pr number explicitlyDavid Robertson2021-08-101-4/+2
| | | | | use PULL_REQUEST_NUMBER instead of BUILDKITE_PULL_REQUEST remove the other user of BUILDKITE_PULL_REQUEST, namely merge_base_branch.sh
* Move test_old_deps.sh to new ci dirDavid Robertson2021-08-101-1/+1
|
* Don't fail CI when lint-newfile job was skipped (#10529)Erik Johnston2021-08-051-1/+6
|
* Fix the `tests-done` github actions step, again (#10512)Richard van der Hoff2021-08-021-9/+12
|
* Use new go test running syntax for complement. (#10488)Patrick Cloke2021-07-271-1/+1
| | | Updates CI and the helper script t ensures all tests are run (in parallel).
* Enable docker image caching for the deb build (#10431)Richard van der Hoff2021-07-261-4/+35
|
* Merge branch 'release-v1.39' into developErik Johnston2021-07-231-1/+1
|\
| * Fix an error in the docker workflow (#10461)Richard van der Hoff2021-07-221-1/+1
| |
* | Cancel redundant GHA workflows (#10451)Richard van der Hoff2021-07-222-0/+8
| |
* | Fix the tests-done Github Actions job (#10444)Richard van der Hoff2021-07-221-1/+18
|/
* Move the docker image build to Github Actions (#10416)Richard van der Hoff2021-07-211-0/+72
| | | | it's flaky on circleCI, and having to manage multiple CI providers is painful.
* Add a github actions job recording success of other jobs. (#10430)Richard van der Hoff2021-07-201-0/+12
|
* Make GHA config more efficient (#10383)Richard van der Hoff2021-07-142-15/+20
| | | | | | | | A few things here: * Build the debs for single distro for each PR, so that we can see if it breaks. Do the same for develop. Building all the debs ties up the GHA workers for ages. * Stop building the debs for release branches. Again, it takes ages, and I don't think anyone is actually going to stop and look at them. We'll know they are working when we make an RC. * Change the configs so that if we manually cancel a workflow, it actually does something.
* Github Actions workflow to attach release artifacts to release (#10379)Richard van der Hoff2021-07-131-1/+27
|
* Build the python release artifacts in GHA tooRichard van der Hoff2021-07-131-3/+23
|
* build debs in GHA (#10247)Richard van der Hoff2021-07-121-0/+44
| | | GHA workflow to build the debs
* Merge branch 'master' into release-v1.38Richard van der Hoff2021-07-071-30/+27
|\
| * build the docs for master (#10323)Richard van der Hoff2021-07-071-31/+28
| |
* | Create an index.html file when generating a docs build (#10242)Andrew Morgan2021-06-241-1/+6
|/ | | | | | | | | Currently when a new build of the docs is created, an `index.html` file does not exist. Typically this would be generated from a`docs/README.md` file - which we have - however we're currently using [docs/README.md](https://github.com/matrix-org/synapse/blob/394673055db4df49bfd58c2f6118834a6d928563/docs/README.md) to explain the docs and point to the website. It is not part of the content of the website. So we end up not having an `index.html` file, which will result in a 404 page if one tries to navigate to `https://matrix-org.github.io/synapse/<docs_version>/index.html`. This isn't a really problem for the default version of the documentation (currently `develop`), as [navigating to the top-level root](https://matrix-org.github.io/synapse/) of the website (without specifying a version) will [redirect](https://github.com/matrix-org/synapse/blob/a77e6925f26597958eccf0ef9956cb13c536e57e/index.html#L2) you to the Welcome and Overview page of the `develop` docs version. However, ideally once we add a GUI for switching between versions, we'll want to send the user to `matrix-org.github.io/synapse/<version>/index.html`, which currently isn't generated. This PR modifies the CI that builds the docs to simply copy the rendered [Welcome & Overview page](https://matrix-org.github.io/synapse/develop/welcome_and_overview.html) to `index.html`.
* Deploy a documentation version for each new Synapse release (#10198)Andrew Morgan2021-06-181-0/+33
| | | | | | | | | This PR will run a new "Deploy release-specific documentation" job whenever a push to a branch name matching `release-v*` occurs. Doing so will create/add to a folder named `vX.Y` on the `gh-pages` branch. Doing so will allow us to build up `major.minor` releases of the docs as we release Synapse. This is especially useful for having a mechanism for keeping around documentation of old/removed features (for those running older versions of Synapse), without needing to clutter the latest copy of the docs. After a [discussion](https://matrix.to/#/!XaqDhxuTIlvldquJaV:matrix.org/$rKmkBmQle8OwTlGcoyu0BkcWXdnHW3_oap8BMgclwIY?via=matrix.org&via=vector.modular.im&via=envs.net) in #synapse-dev, we wanted to use tags to trigger the documentation deployments, which I agreed with. However, I soon realised that the bash-foo required to turn a tag of `v1.2.3rc1` into `1.2` was a lot more complex than the branch's `release-v1.2`. So, I've gone with the latter for simplicity. In the future we'll have some UI on the website to switch between versions, but for now you can simply just change 'develop' to 'v1.2' in the URL.
* Use the matching complement branch when running tests in CI. (#10160)Patrick Cloke2021-06-111-5/+23
| | | | | | | | | | | This implements similar behavior to sytest where a matching branch is used, if one exists. This is useful when needing to modify both application code and tests at the same time. The following rules are used to find a matching complement branch: 1. Search for the branch name of the pull request. (E.g. feature/foo.) 2. Search for the base branch of the pull request. (E.g. develop or release-vX.Y.) 3. Search for the reference branch of the commit. (E.g. master or release-vX.Y.) 4. Fallback to 'master', the default complement branch name.
* Update Complement run with Synapse-supported MSC-related build tags (#10155)Andrew Morgan2021-06-091-1/+1
| | | | | This PR updates the build tags that we perform Complement runs with to match our [buildkite pipeline](https://github.com/matrix-org/pipelines/blob/618b3e90bcae8efd1a71502ae95b7913e6e24665/synapse/pipeline.yml#L570), as well as adding `msc2403` (as it will be required once #9359 is merged). Build tags are what we use to determine which tests to run in Complement (really it determines which test files are compiled into the final binary). I haven't put in a comment about updating the buildkite side here, as we've decided to migrate fully to GitHub Actions anyhow.
* Compile and render Synapse's docs into a browsable, mobile-friendly and ↵Andrew Morgan2021-06-031-0/+31
| | | | searchable website (#10086)
* github actions: summarize Sytest results in an easy-to-read format (#10094)Richard van der Hoff2021-06-021-2/+2
| | | ... using the script from matrix-org/sytest#1052
* Fix GitHub Actions lint for newsfragments (#10069)Dan Callahan2021-05-261-0/+6
| | | | | * Fix GitHub Actions lint for newsfragments Signed-off-by: Dan Callahan <danc@element.io>
* Fix port_db on empty db (#9930)Richard van der Hoff2021-05-101-1/+1
| | | | ... and test it.
* Proof of concept for GitHub Actions (#9661)Dan Callahan2021-04-091-0/+322
Signed-off-by: Dan Callahan <danc@element.io>