mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-15 19:03:09 -06:00
Merge branch 'master' of https://github.com/matrix-org/dendrite
This commit is contained in:
commit
3655c0d454
50
.buildkite/pipeline.yaml
Normal file
50
.buildkite/pipeline.yaml
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
steps:
|
||||
- command:
|
||||
- "go build ./cmd/..."
|
||||
label: ":hammer-and-wrench: Build / :go: 1.11"
|
||||
env:
|
||||
GOGC: "400"
|
||||
DENDRITE_LINT_DISABLE_GC: "1"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "golang:1.11-alpine"
|
||||
|
||||
- command:
|
||||
- "go test ./..."
|
||||
label: ":female-scientist: Unit tests / :go: 1.11"
|
||||
env:
|
||||
GOGC: "400"
|
||||
DENDRITE_LINT_DISABLE_GC: "1"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "golang:1.11-alpine"
|
||||
|
||||
- command:
|
||||
- "go build ./cmd/..."
|
||||
label: ":hammer-and-wrench: Build / :go: 1.12"
|
||||
env:
|
||||
GOGC: "400"
|
||||
DENDRITE_LINT_DISABLE_GC: "1"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "golang:1.12-alpine"
|
||||
|
||||
- command:
|
||||
- "go test ./..."
|
||||
label: ":female-scientist: Unit tests / :go: 1.12"
|
||||
env:
|
||||
GOGC: "400"
|
||||
DENDRITE_LINT_DISABLE_GC: "1"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "golang:1.12-alpine"
|
||||
|
||||
- command:
|
||||
- "./scripts/find-lint.sh"
|
||||
label: ":lower_left_crayon: Lint / :go: 1.12"
|
||||
env:
|
||||
GOGC: "400"
|
||||
DENDRITE_LINT_DISABLE_GC: "1"
|
||||
plugins:
|
||||
- docker#v3.0.1:
|
||||
image: "golang:1.12-alpine"
|
||||
32
.circleci/config.yml
Normal file
32
.circleci/config.yml
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
version: 2
|
||||
jobs:
|
||||
dendrite:
|
||||
docker:
|
||||
- image: matrixdotorg/sytest-dendrite
|
||||
working_directory: /src
|
||||
steps:
|
||||
- checkout
|
||||
|
||||
# Set up dendrite
|
||||
- run:
|
||||
name: Build Dendrite
|
||||
command: ./build.sh
|
||||
- run:
|
||||
name: Copy dummy keys to root
|
||||
command: |
|
||||
mv .circleci/matrix_key.pem .
|
||||
mv .circleci/server.key .
|
||||
- run:
|
||||
name: Run sytest with whitelisted tests
|
||||
command: /dendrite_sytest.sh
|
||||
|
||||
- store_artifacts:
|
||||
path: /logs
|
||||
destination: logs
|
||||
- store_test_results:
|
||||
path: /logs
|
||||
workflows:
|
||||
version: 2
|
||||
build:
|
||||
jobs:
|
||||
- dendrite
|
||||
5
.circleci/matrix_key.pem
Normal file
5
.circleci/matrix_key.pem
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
-----BEGIN MATRIX PRIVATE KEY-----
|
||||
Key-ID: ed25519:zXtB
|
||||
|
||||
jDyHsx0EXbAfvM32yBEKQfIy1FHrmwtB1uMAbm5INBg=
|
||||
-----END MATRIX PRIVATE KEY-----
|
||||
52
.circleci/server.key
Normal file
52
.circleci/server.key
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
-----BEGIN PRIVATE KEY-----
|
||||
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
|
||||
+yaBExKfroZjsksctNAcAbgpuvhLLG8=
|
||||
-----END PRIVATE KEY-----
|
||||
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
|
|
@ -2,5 +2,5 @@
|
|||
|
||||
<!-- Please read CONTRIBUTING.md before submitting your pull request -->
|
||||
|
||||
* [ ] I have made sure any new dependencies have been checked into the `vendor/` directory
|
||||
* [ ] I have added any new tests that need to pass to `testfile` as specified in [docs/sytest.md](https://github.com/matrix-org/dendrite/blob/master/docs/sytest.md)
|
||||
* [ ] Pull request includes a [sign off](https://github.com/matrix-org/dendrite/blob/master/CONTRIBUTING.md#sign-off)
|
||||
|
|
|
|||
31
.travis.yml
31
.travis.yml
|
|
@ -1,31 +0,0 @@
|
|||
language: go
|
||||
go:
|
||||
- 1.11.x
|
||||
- 1.12.x
|
||||
|
||||
env:
|
||||
- TEST_SUITE="lint"
|
||||
- TEST_SUITE="unit-test"
|
||||
- TEST_SUITE="integ-test"
|
||||
|
||||
sudo: false
|
||||
|
||||
# Use trusty for postgres 9.5 support
|
||||
dist: trusty
|
||||
|
||||
addons:
|
||||
postgresql: "9.5"
|
||||
|
||||
services:
|
||||
- postgresql
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- .downloads
|
||||
|
||||
script:
|
||||
- ./scripts/travis-test.sh
|
||||
|
||||
# we only need the latest git commit
|
||||
git:
|
||||
depth: 1
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
# Dendrite [](https://travis-ci.org/matrix-org/dendrite) [](https://matrix.to/#/#dendrite-dev:matrix.org) [](https://matrix.to/#/#dendrite:matrix.org)
|
||||
# Dendrite [](https://travis-ci.org/matrix-org/dendrite) [](https://circleci.com/gh/matrix-org/dendrite) [](https://matrix.to/#/#dendrite-dev:matrix.org) [](https://matrix.to/#/#dendrite:matrix.org)
|
||||
|
||||
Dendrite will be a matrix homeserver written in go.
|
||||
|
||||
|
|
|
|||
8
docs/sytest.md
Normal file
8
docs/sytest.md
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
# SyTest
|
||||
|
||||
Dendrite uses [SyTest](https://github.com/matrix-org/sytest) for its
|
||||
integration testing. When creating a new PR, add the test IDs that your PR
|
||||
should allow to pass to `testfile` in dendrite's root directory. Not all PRs
|
||||
need to make new tests pass. If we find your PR should be making a test pass we
|
||||
may ask you to add to that file, as generally Dendrite's progress can be
|
||||
tracked through the amount of SyTest tests it passes.
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
#! /bin/bash
|
||||
|
||||
# The entry point for travis tests
|
||||
#
|
||||
# TEST_SUITE env var can be set to "lint", "unit-test" or "integ-test", in
|
||||
# which case only the linting, unit tests or integration tests will be run
|
||||
# respectively. If not specified or null all tests are run.
|
||||
|
||||
set -eu
|
||||
|
||||
# Tune the GC to use more memory to reduce the number of garbage collections
|
||||
export GOGC=400
|
||||
export DENDRITE_LINT_DISABLE_GC=1
|
||||
|
||||
export GO111MODULE=on
|
||||
|
||||
# starts a travis fold section. The first argument is the name of the fold
|
||||
# section (which appears on the RHS) and may contain no spaces. Remaining
|
||||
# arguments are echoed in yellow on the LHS as the header line of the fold
|
||||
# section.
|
||||
travis_sections=()
|
||||
function travis_start {
|
||||
name="$1"
|
||||
shift
|
||||
echo -en "travis_fold:start:$name\r"
|
||||
travis_sections+=($name)
|
||||
|
||||
# yellow/bold
|
||||
echo -en "\e[33;1m"
|
||||
echo "$@"
|
||||
# normal
|
||||
echo -en "\e[0m"
|
||||
}
|
||||
|
||||
# ends a travis fold section
|
||||
function travis_end {
|
||||
name=${travis_sections[-1]}
|
||||
unset 'travis_sections[-1]'
|
||||
echo -en "travis_fold:end:$name\r"
|
||||
}
|
||||
|
||||
function kill_kafka {
|
||||
echo "killing kafka"
|
||||
# sometimes kafka doesn't die on a SIGTERM so we SIGKILL it.
|
||||
killall -9 -v java
|
||||
}
|
||||
|
||||
if [ "${TEST_SUITE:-lint}" == "lint" ]; then
|
||||
./scripts/find-lint.sh
|
||||
fi
|
||||
|
||||
if [ "${TEST_SUITE:-unit-test}" == "unit-test" ]; then
|
||||
go test ./...
|
||||
fi
|
||||
|
||||
if [ "${TEST_SUITE:-integ-test}" == "integ-test" ]; then
|
||||
travis_start go-build "Building dendrite and integ tests"
|
||||
go install ./cmd/...
|
||||
travis_end
|
||||
|
||||
# Check that all the packages can build.
|
||||
# When `go build` is given multiple packages it won't output anything, and just
|
||||
# checks that everything builds.
|
||||
go build ./cmd/...
|
||||
|
||||
# Create necessary certificates and keys to run dendrite
|
||||
travis_start certs "Building SSL certs"
|
||||
openssl req -x509 -newkey rsa:512 -keyout server.key -out server.crt -days 365 -nodes -subj /CN=localhost
|
||||
travis_end
|
||||
|
||||
travis_start kafka "Installing kafka"
|
||||
./scripts/install-local-kafka.sh
|
||||
travis_end
|
||||
|
||||
# make sure we kill off zookeeper/kafka on exit, because it stops the
|
||||
# travis container being cleaned up (cf
|
||||
# https://github.com/travis-ci/travis-ci/issues/8082)
|
||||
trap kill_kafka EXIT
|
||||
|
||||
# Run the integration tests
|
||||
for i in roomserver syncserver mediaapi; do
|
||||
travis_start "$i-integration-tests" "Running integration tests for $i"
|
||||
$i-integration-tests
|
||||
travis_end
|
||||
done
|
||||
fi
|
||||
Loading…
Reference in a new issue