mirror of https://github.com/watcha-fr/synapse
Move from TravisCI to BuildKite (#4752)
parent
76550c58d2
commit
f2a753ea38
@ -0,0 +1,13 @@ |
|||||||
|
CI |
||||||
|
BUILDKITE |
||||||
|
BUILDKITE_BUILD_NUMBER |
||||||
|
BUILDKITE_BRANCH |
||||||
|
BUILDKITE_BUILD_NUMBER |
||||||
|
BUILDKITE_JOB_ID |
||||||
|
BUILDKITE_BUILD_URL |
||||||
|
BUILDKITE_PROJECT_SLUG |
||||||
|
BUILDKITE_COMMIT |
||||||
|
BUILDKITE_PULL_REQUEST |
||||||
|
BUILDKITE_TAG |
||||||
|
CODECOV_TOKEN |
||||||
|
TRIAL_FLAGS |
@ -0,0 +1,21 @@ |
|||||||
|
version: '3.1' |
||||||
|
|
||||||
|
services: |
||||||
|
|
||||||
|
postgres: |
||||||
|
image: postgres:9.4 |
||||||
|
environment: |
||||||
|
POSTGRES_PASSWORD: postgres |
||||||
|
|
||||||
|
testenv: |
||||||
|
image: python:2.7 |
||||||
|
depends_on: |
||||||
|
- postgres |
||||||
|
env_file: .env |
||||||
|
environment: |
||||||
|
SYNAPSE_POSTGRES_HOST: postgres |
||||||
|
SYNAPSE_POSTGRES_USER: postgres |
||||||
|
SYNAPSE_POSTGRES_PASSWORD: postgres |
||||||
|
working_dir: /app |
||||||
|
volumes: |
||||||
|
- ..:/app |
@ -0,0 +1,21 @@ |
|||||||
|
version: '3.1' |
||||||
|
|
||||||
|
services: |
||||||
|
|
||||||
|
postgres: |
||||||
|
image: postgres:9.5 |
||||||
|
environment: |
||||||
|
POSTGRES_PASSWORD: postgres |
||||||
|
|
||||||
|
testenv: |
||||||
|
image: python:2.7 |
||||||
|
depends_on: |
||||||
|
- postgres |
||||||
|
env_file: .env |
||||||
|
environment: |
||||||
|
SYNAPSE_POSTGRES_HOST: postgres |
||||||
|
SYNAPSE_POSTGRES_USER: postgres |
||||||
|
SYNAPSE_POSTGRES_PASSWORD: postgres |
||||||
|
working_dir: /app |
||||||
|
volumes: |
||||||
|
- ..:/app |
@ -0,0 +1,21 @@ |
|||||||
|
version: '3.1' |
||||||
|
|
||||||
|
services: |
||||||
|
|
||||||
|
postgres: |
||||||
|
image: postgres:9.4 |
||||||
|
environment: |
||||||
|
POSTGRES_PASSWORD: postgres |
||||||
|
|
||||||
|
testenv: |
||||||
|
image: python:3.5 |
||||||
|
depends_on: |
||||||
|
- postgres |
||||||
|
env_file: .env |
||||||
|
environment: |
||||||
|
SYNAPSE_POSTGRES_HOST: postgres |
||||||
|
SYNAPSE_POSTGRES_USER: postgres |
||||||
|
SYNAPSE_POSTGRES_PASSWORD: postgres |
||||||
|
working_dir: /app |
||||||
|
volumes: |
||||||
|
- ..:/app |
@ -0,0 +1,21 @@ |
|||||||
|
version: '3.1' |
||||||
|
|
||||||
|
services: |
||||||
|
|
||||||
|
postgres: |
||||||
|
image: postgres:9.5 |
||||||
|
environment: |
||||||
|
POSTGRES_PASSWORD: postgres |
||||||
|
|
||||||
|
testenv: |
||||||
|
image: python:3.5 |
||||||
|
depends_on: |
||||||
|
- postgres |
||||||
|
env_file: .env |
||||||
|
environment: |
||||||
|
SYNAPSE_POSTGRES_HOST: postgres |
||||||
|
SYNAPSE_POSTGRES_USER: postgres |
||||||
|
SYNAPSE_POSTGRES_PASSWORD: postgres |
||||||
|
working_dir: /app |
||||||
|
volumes: |
||||||
|
- ..:/app |
@ -0,0 +1,21 @@ |
|||||||
|
version: '3.1' |
||||||
|
|
||||||
|
services: |
||||||
|
|
||||||
|
postgres: |
||||||
|
image: postgres:11 |
||||||
|
environment: |
||||||
|
POSTGRES_PASSWORD: postgres |
||||||
|
|
||||||
|
testenv: |
||||||
|
image: python:3.7 |
||||||
|
depends_on: |
||||||
|
- postgres |
||||||
|
env_file: .env |
||||||
|
environment: |
||||||
|
SYNAPSE_POSTGRES_HOST: postgres |
||||||
|
SYNAPSE_POSTGRES_USER: postgres |
||||||
|
SYNAPSE_POSTGRES_PASSWORD: postgres |
||||||
|
working_dir: /app |
||||||
|
volumes: |
||||||
|
- ..:/app |
@ -0,0 +1,21 @@ |
|||||||
|
version: '3.1' |
||||||
|
|
||||||
|
services: |
||||||
|
|
||||||
|
postgres: |
||||||
|
image: postgres:9.5 |
||||||
|
environment: |
||||||
|
POSTGRES_PASSWORD: postgres |
||||||
|
|
||||||
|
testenv: |
||||||
|
image: python:3.7 |
||||||
|
depends_on: |
||||||
|
- postgres |
||||||
|
env_file: .env |
||||||
|
environment: |
||||||
|
SYNAPSE_POSTGRES_HOST: postgres |
||||||
|
SYNAPSE_POSTGRES_USER: postgres |
||||||
|
SYNAPSE_POSTGRES_PASSWORD: postgres |
||||||
|
working_dir: /app |
||||||
|
volumes: |
||||||
|
- ..:/app |
@ -0,0 +1,149 @@ |
|||||||
|
env: |
||||||
|
CODECOV_TOKEN: "2dd7eb9b-0eda-45fe-a47c-9b5ac040045f" |
||||||
|
|
||||||
|
steps: |
||||||
|
- command: |
||||||
|
- "python -m pip install tox" |
||||||
|
- "tox -e pep8" |
||||||
|
label: "\U0001F9F9 PEP-8" |
||||||
|
plugins: |
||||||
|
- docker#v3.0.1: |
||||||
|
image: "python:3.6" |
||||||
|
|
||||||
|
- command: |
||||||
|
- "python -m pip install tox" |
||||||
|
- "tox -e packaging" |
||||||
|
label: "\U0001F9F9 packaging" |
||||||
|
plugins: |
||||||
|
- docker#v3.0.1: |
||||||
|
image: "python:3.6" |
||||||
|
|
||||||
|
- command: |
||||||
|
- "python -m pip install tox" |
||||||
|
- "tox -e check_isort" |
||||||
|
label: "\U0001F9F9 isort" |
||||||
|
plugins: |
||||||
|
- docker#v3.0.1: |
||||||
|
image: "python:3.6" |
||||||
|
|
||||||
|
- command: |
||||||
|
- "python -m pip install tox" |
||||||
|
- "scripts-dev/check-newsfragment" |
||||||
|
label: ":newspaper: Newsfile" |
||||||
|
branches: "!master !develop !release-*" |
||||||
|
plugins: |
||||||
|
- docker#v3.0.1: |
||||||
|
image: "python:3.6" |
||||||
|
propagate-environment: true |
||||||
|
|
||||||
|
- wait |
||||||
|
|
||||||
|
- command: |
||||||
|
- "python -m pip install tox" |
||||||
|
- "tox -e py27,codecov" |
||||||
|
label: ":python: 2.7 / SQLite" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 2" |
||||||
|
plugins: |
||||||
|
- docker#v3.0.1: |
||||||
|
image: "python:2.7" |
||||||
|
propagate-environment: true |
||||||
|
|
||||||
|
- command: |
||||||
|
- "python -m pip install tox" |
||||||
|
- "tox -e py35,codecov" |
||||||
|
label: ":python: 3.5 / SQLite" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 2" |
||||||
|
plugins: |
||||||
|
- docker#v3.0.1: |
||||||
|
image: "python:3.5" |
||||||
|
propagate-environment: true |
||||||
|
|
||||||
|
- command: |
||||||
|
- "python -m pip install tox" |
||||||
|
- "tox -e py36,codecov" |
||||||
|
label: ":python: 3.6 / SQLite" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 2" |
||||||
|
plugins: |
||||||
|
- docker#v3.0.1: |
||||||
|
image: "python:3.6" |
||||||
|
propagate-environment: true |
||||||
|
|
||||||
|
- command: |
||||||
|
- "python -m pip install tox" |
||||||
|
- "tox -e py37,codecov" |
||||||
|
label: ":python: 3.7 / SQLite" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 2" |
||||||
|
plugins: |
||||||
|
- docker#v3.0.1: |
||||||
|
image: "python:3.7" |
||||||
|
propagate-environment: true |
||||||
|
|
||||||
|
- label: ":python: 2.7 / :postgres: 9.4" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 4" |
||||||
|
command: |
||||||
|
- "bash -c 'python -m pip install tox && python -m tox -e py27-postgres,codecov'" |
||||||
|
plugins: |
||||||
|
- docker-compose#v2.1.0: |
||||||
|
run: testenv |
||||||
|
config: |
||||||
|
- .buildkite/docker-compose.py27.pg94.yaml |
||||||
|
|
||||||
|
- label: ":python: 2.7 / :postgres: 9.5" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 4" |
||||||
|
command: |
||||||
|
- "bash -c 'python -m pip install tox && python -m tox -e py27-postgres,codecov'" |
||||||
|
plugins: |
||||||
|
- docker-compose#v2.1.0: |
||||||
|
run: testenv |
||||||
|
config: |
||||||
|
- .buildkite/docker-compose.py27.pg95.yaml |
||||||
|
|
||||||
|
- label: ":python: 3.5 / :postgres: 9.4" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 4" |
||||||
|
command: |
||||||
|
- "bash -c 'python -m pip install tox && python -m tox -e py35-postgres,codecov'" |
||||||
|
plugins: |
||||||
|
- docker-compose#v2.1.0: |
||||||
|
run: testenv |
||||||
|
config: |
||||||
|
- .buildkite/docker-compose.py35.pg94.yaml |
||||||
|
|
||||||
|
- label: ":python: 3.5 / :postgres: 9.5" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 4" |
||||||
|
command: |
||||||
|
- "bash -c 'python -m pip install tox && python -m tox -e py35-postgres,codecov'" |
||||||
|
plugins: |
||||||
|
- docker-compose#v2.1.0: |
||||||
|
run: testenv |
||||||
|
config: |
||||||
|
- .buildkite/docker-compose.py35.pg95.yaml |
||||||
|
|
||||||
|
- label: ":python: 3.7 / :postgres: 9.5" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 4" |
||||||
|
command: |
||||||
|
- "bash -c 'python -m pip install tox && python -m tox -e py37-postgres,codecov'" |
||||||
|
plugins: |
||||||
|
- docker-compose#v2.1.0: |
||||||
|
run: testenv |
||||||
|
config: |
||||||
|
- .buildkite/docker-compose.py37.pg95.yaml |
||||||
|
|
||||||
|
- label: ":python: 3.7 / :postgres: 11" |
||||||
|
env: |
||||||
|
TRIAL_FLAGS: "-j 4" |
||||||
|
command: |
||||||
|
- "bash -c 'python -m pip install tox && python -m tox -e py37-postgres,codecov'" |
||||||
|
plugins: |
||||||
|
- docker-compose#v2.1.0: |
||||||
|
run: testenv |
||||||
|
config: |
||||||
|
- .buildkite/docker-compose.py37.pg11.yaml |
@ -1,97 +0,0 @@ |
|||||||
dist: xenial |
|
||||||
language: python |
|
||||||
|
|
||||||
cache: |
|
||||||
directories: |
|
||||||
# we only bother to cache the wheels; parts of the http cache get |
|
||||||
# invalidated every build (because they get served with a max-age of 600 |
|
||||||
# seconds), which means that we end up re-uploading the whole cache for |
|
||||||
# every build, which is time-consuming In any case, it's not obvious that |
|
||||||
# downloading the cache from S3 would be much faster than downloading the |
|
||||||
# originals from pypi. |
|
||||||
# |
|
||||||
- $HOME/.cache/pip/wheels |
|
||||||
|
|
||||||
# don't clone the whole repo history, one commit will do |
|
||||||
git: |
|
||||||
depth: 1 |
|
||||||
|
|
||||||
# only build branches we care about (PRs are built seperately) |
|
||||||
branches: |
|
||||||
only: |
|
||||||
- master |
|
||||||
- develop |
|
||||||
- /^release-v/ |
|
||||||
- rav/pg95 |
|
||||||
|
|
||||||
# When running the tox environments that call Twisted Trial, we can pass the -j |
|
||||||
# flag to run the tests concurrently. We set this to 2 for CPU bound tests |
|
||||||
# (SQLite) and 4 for I/O bound tests (PostgreSQL). |
|
||||||
matrix: |
|
||||||
fast_finish: true |
|
||||||
include: |
|
||||||
- name: "pep8" |
|
||||||
python: 3.6 |
|
||||||
env: TOX_ENV="pep8,check_isort,packaging" |
|
||||||
|
|
||||||
- name: "py2.7 / sqlite" |
|
||||||
python: 2.7 |
|
||||||
env: TOX_ENV=py27,codecov TRIAL_FLAGS="-j 2" |
|
||||||
|
|
||||||
- name: "py2.7 / sqlite / olddeps" |
|
||||||
python: 2.7 |
|
||||||
env: TOX_ENV=py27-old TRIAL_FLAGS="-j 2" |
|
||||||
|
|
||||||
- name: "py2.7 / postgres9.5" |
|
||||||
python: 2.7 |
|
||||||
addons: |
|
||||||
postgresql: "9.5" |
|
||||||
env: TOX_ENV=py27-postgres,codecov TRIAL_FLAGS="-j 4" |
|
||||||
services: |
|
||||||
- postgresql |
|
||||||
|
|
||||||
- name: "py3.5 / sqlite" |
|
||||||
python: 3.5 |
|
||||||
env: TOX_ENV=py35,codecov TRIAL_FLAGS="-j 2" |
|
||||||
|
|
||||||
- name: "py3.7 / sqlite" |
|
||||||
python: 3.7 |
|
||||||
env: TOX_ENV=py37,codecov TRIAL_FLAGS="-j 2" |
|
||||||
|
|
||||||
- name: "py3.7 / postgres9.4" |
|
||||||
python: 3.7 |
|
||||||
addons: |
|
||||||
postgresql: "9.4" |
|
||||||
env: TOX_ENV=py37-postgres TRIAL_FLAGS="-j 4" |
|
||||||
services: |
|
||||||
- postgresql |
|
||||||
|
|
||||||
- name: "py3.7 / postgres9.5" |
|
||||||
python: 3.7 |
|
||||||
addons: |
|
||||||
postgresql: "9.5" |
|
||||||
env: TOX_ENV=py37-postgres,codecov TRIAL_FLAGS="-j 4" |
|
||||||
services: |
|
||||||
- postgresql |
|
||||||
|
|
||||||
- # we only need to check for the newsfragment if it's a PR build |
|
||||||
if: type = pull_request |
|
||||||
name: "check-newsfragment" |
|
||||||
python: 3.6 |
|
||||||
script: scripts-dev/check-newsfragment |
|
||||||
|
|
||||||
install: |
|
||||||
# this just logs the postgres version we will be testing against (if any) |
|
||||||
- psql -At -U postgres -c 'select version();' || true |
|
||||||
|
|
||||||
- pip install tox |
|
||||||
|
|
||||||
# if we don't have python3.6 in this environment, travis unhelpfully gives us |
|
||||||
# a `python3.6` on our path which does nothing but spit out a warning. Tox |
|
||||||
# tries to run it (even if we're not running a py36 env), so the build logs |
|
||||||
# then have warnings which look like errors. To reduce the noise, remove the |
|
||||||
# non-functional python3.6. |
|
||||||
- ( ! command -v python3.6 || python3.6 --version ) &>/dev/null || rm -f $(command -v python3.6) |
|
||||||
|
|
||||||
script: |
|
||||||
- tox -e $TOX_ENV |
|
@ -0,0 +1 @@ |
|||||||
|
Change from TravisCI to Buildkite for CI. |
Loading…
Reference in new issue