Use poetry lockfile in twisted trunk CI job (#12425)
Fixes #12458 Co-authored-by: Sean Quah <seanq@element.io> Co-authored-by: Dan Callahan <danc@element.io>
This commit is contained in:
parent
36d8b83888
commit
d24cd17820
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# replaces the dependency on Twisted in `python_dependencies` with trunk.
|
|
||||||
|
|
||||||
set -e
|
|
||||||
cd "$(dirname "$0")"/..
|
|
||||||
|
|
||||||
sed -i -e 's#"Twisted.*"#"Twisted @ git+https://github.com/twisted/twisted"#' synapse/python_dependencies.py
|
|
|
@ -6,16 +6,25 @@ on:
|
||||||
|
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: ${{ github.workflow }}-${{ github.ref }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
mypy:
|
mypy:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions/setup-python@v2
|
- uses: matrix-org/setup-python-poetry@v1
|
||||||
- run: .ci/patch_for_twisted_trunk.sh
|
with:
|
||||||
- run: pip install tox
|
python-version: "3.x"
|
||||||
- run: tox -e mypy
|
extras: "all"
|
||||||
|
- run: |
|
||||||
|
poetry remove twisted
|
||||||
|
poetry add --extras tls git+https://github.com/twisted/twisted.git#trunk
|
||||||
|
poetry install --no-interaction --extras "all test"
|
||||||
|
- run: poetry run mypy
|
||||||
|
|
||||||
trial:
|
trial:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
@ -23,14 +32,15 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- run: sudo apt-get -qq install xmlsec1
|
- run: sudo apt-get -qq install xmlsec1
|
||||||
- uses: actions/setup-python@v2
|
- uses: matrix-org/setup-python-poetry@v1
|
||||||
with:
|
with:
|
||||||
python-version: 3.7
|
python-version: "3.x"
|
||||||
- run: .ci/patch_for_twisted_trunk.sh
|
extras: "all test"
|
||||||
- run: pip install tox
|
- run: |
|
||||||
- run: tox -e py
|
poetry remove twisted
|
||||||
env:
|
poetry add --extras tls git+https://github.com/twisted/twisted.git#trunk
|
||||||
TRIAL_FLAGS: "--jobs=2"
|
poetry install --no-interaction --extras "all test"
|
||||||
|
- run: poetry run trial --jobs 2 tests
|
||||||
|
|
||||||
- name: Dump logs
|
- name: Dump logs
|
||||||
# Logs are most useful when the command fails, always include them.
|
# Logs are most useful when the command fails, always include them.
|
||||||
|
@ -55,11 +65,23 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Patch dependencies
|
- name: Patch dependencies
|
||||||
run: .ci/patch_for_twisted_trunk.sh
|
# Note: The poetry commands want to create a virtualenv in /src/.venv/,
|
||||||
|
# but the sytest-synapse container expects it to be in /venv/.
|
||||||
|
# We symlink it before running poetry so that poetry actually
|
||||||
|
# ends up installing to `/venv`.
|
||||||
|
run: |
|
||||||
|
ln -s -T /venv /src/.venv
|
||||||
|
poetry remove twisted
|
||||||
|
poetry add --extras tls git+https://github.com/twisted/twisted.git#trunk
|
||||||
|
poetry install --no-interaction --extras "all test"
|
||||||
working-directory: /src
|
working-directory: /src
|
||||||
- name: Run SyTest
|
- name: Run SyTest
|
||||||
run: /bootstrap.sh synapse
|
run: /bootstrap.sh synapse
|
||||||
working-directory: /src
|
working-directory: /src
|
||||||
|
env:
|
||||||
|
# Use offline mode to avoid reinstalling the pinned version of
|
||||||
|
# twisted.
|
||||||
|
OFFLINE: 1
|
||||||
- name: Summarise results.tap
|
- name: Summarise results.tap
|
||||||
if: ${{ always() }}
|
if: ${{ always() }}
|
||||||
run: /sytest/scripts/tap_to_gha.pl /logs/results.tap
|
run: /sytest/scripts/tap_to_gha.pl /logs/results.tap
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Run twisted trunk CI job in the locked poetry environment.
|
Loading…
Reference in New Issue