feat: move e2e test dind structure to use executor
fix: bump flutter and dart webrtc versions for dart analyze json format output
This commit is contained in:
parent
06c6e5b869
commit
a8e56074cc
|
|
@ -14,21 +14,19 @@ jobs:
|
|||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: cat .github/workflows/versions.env >> $GITHUB_ENV
|
||||
- uses: dart-lang/setup-dart@a57a6c04cf7d4840e88432aad6281d1e125f0d46
|
||||
with:
|
||||
sdk: ${{ env.dart_version }}
|
||||
- name: Run tests
|
||||
run: |
|
||||
export NETWORK='--network mynet'
|
||||
docker network create mynet
|
||||
# deploy homeserver instance
|
||||
scripts/integration-server-${{matrix.homeserver}}.sh
|
||||
docker run $NETWORK --env GITHUB_ACTIONS="${GITHUB_ACTIONS}" --env HOMESERVER_IMPLEMENTATION="${{matrix.homeserver}}" --env HOMESERVER="${{startsWith('dendrite', matrix.homeserver) && format('{0}:8008', matrix.homeserver) || matrix.homeserver }}" --volume="$(pwd):/workdir" --workdir /workdir ghcr.io/famedly/container-image-flutter/flutter:${{env.flutter_version}} /bin/bash -c "set -e
|
||||
scripts/integration-prepare-alpine.sh
|
||||
# create test user environment variables
|
||||
export HOMESERVER_IMPLEMENTATION=${{matrix.homeserver}}
|
||||
export HOMESERVER="localhost:80"
|
||||
scripts/integration-server-${{matrix.homeserver}}.sh 2>&1 > /dev/null &
|
||||
sudo apt-get update && sudo apt-get install --no-install-recommends --no-install-suggests -y libolm3 libssl3
|
||||
source scripts/integration-create-environment-variables.sh
|
||||
# properly set the homeserver IP and create test users
|
||||
scripts/integration-prepare-homeserver.sh
|
||||
# setup OLM
|
||||
scripts/prepare.sh
|
||||
scripts/test_driver.sh"
|
||||
scripts/test_driver.sh
|
||||
|
||||
coverage_without_olm:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
@ -42,7 +40,7 @@ jobs:
|
|||
sdk: ${{ env.dart_version }}
|
||||
- name: Run tests
|
||||
run: |
|
||||
sudo apt-get update && sudo apt-get install --no-install-recommends --no-install-suggests -y curl lcov python3 python3-distutils libsqlite3-0 libsqlite3-dev
|
||||
sudo apt-get update && sudo apt-get install --no-install-recommends --no-install-suggests -y lcov libsqlite3-0 libsqlite3-dev
|
||||
./scripts/test.sh
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
|
|
@ -53,16 +51,17 @@ jobs:
|
|||
|
||||
|
||||
coverage:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: arm-ubuntu-latest-16core
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: cat .github/workflows/versions.env >> $GITHUB_ENV
|
||||
- uses: dart-lang/setup-dart@a57a6c04cf7d4840e88432aad6281d1e125f0d46
|
||||
with:
|
||||
sdk: ${{ env.dart_version }}
|
||||
architecture: "arm64"
|
||||
- name: Run tests
|
||||
run: |
|
||||
sudo apt-get update && sudo apt-get install --no-install-recommends --no-install-suggests -y curl lcov python3 python3-distutils libsqlite3-0 libsqlite3-dev libolm3 libssl3
|
||||
sudo apt-get update && sudo apt-get install --no-install-recommends --no-install-suggests -y lcov libsqlite3-0 libsqlite3-dev libolm3 libssl3
|
||||
./scripts/test.sh
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
|
|
@ -110,6 +109,7 @@ jobs:
|
|||
- uses: subosito/flutter-action@48cafc24713cca54bbe03cdc3a423187d413aafa
|
||||
with:
|
||||
flutter-version: ${{ env.flutter_version }}
|
||||
cache: true
|
||||
- name: Ensure SDK compiles on web
|
||||
run: |
|
||||
pushd web_test
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
flutter_version=3.16.9
|
||||
dart_version=3.2.6
|
||||
flutter_version=3.22.2
|
||||
dart_version=3.4.3
|
||||
|
|
|
|||
|
|
@ -1,2 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
apk update && apk add docker drill grep olm cmake sqlite-dev
|
||||
|
|
@ -34,6 +34,7 @@ echo "Waiting for homeserver to be available... (GET http://$HOMESERVER/_matrix/
|
|||
sleep 5
|
||||
|
||||
while ! curl -XGET "http://$HOMESERVER/_matrix/client/v3/login" >/dev/null; do
|
||||
docker ps -a
|
||||
docker logs "$HOMESERVER_IMPLEMENTATION"
|
||||
sleep 5
|
||||
done
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
#!/usr/bin/env bash
|
||||
docker run -d \
|
||||
|
||||
docker run -d --rm \
|
||||
-e CONDUIT_CONFIG="" \
|
||||
-e CONDUIT_SERVER_NAME="famedlysdk.test" \
|
||||
-e CONDUIT_PORT="80" \
|
||||
|
|
@ -10,5 +11,4 @@
|
|||
-e CONDUIT_TRUSTED_SERVERS="[\"conduit.rs\"]" \
|
||||
-e CONDUIT_MAX_CONCURRENT_REQUESTS="100" \
|
||||
-e CONDUIT_LOG="info,rocket=off,_=off,sled=off" \
|
||||
$NETWORK \
|
||||
--name conduit -p 80:80 matrixconduit/matrix-conduit:v0.6.0
|
||||
|
|
|
|||
|
|
@ -1,14 +1,13 @@
|
|||
#!/usr/bin/env bash
|
||||
chown -R 991:991 test_driver/dendrite
|
||||
|
||||
# creating integration test SSL certificates
|
||||
docker run --rm --entrypoint="" \
|
||||
--volume="$(pwd)/test_driver/dendrite/data":/mnt:rw \
|
||||
--volume="$(pwd)/test_driver/dendrite/data":/etc/dendrite:rw \
|
||||
matrixdotorg/dendrite-monolith:latest \
|
||||
/usr/bin/generate-keys \
|
||||
-private-key /mnt/matrix_key.pem \
|
||||
-tls-cert /mnt/server.crt \
|
||||
-tls-key /mnt/server.key
|
||||
-private-key /etc/dendrite/matrix_key.pem \
|
||||
-tls-cert /etc/dendrite/server.crt \
|
||||
-tls-key /etc/dendrite/server.key
|
||||
|
||||
docker run -d --volume="$(pwd)/test_driver/dendrite/data":/etc/dendrite:rw \
|
||||
--name dendrite $NETWORK -p 80:8008 matrixdotorg/dendrite-monolith:latest -really-enable-open-registration
|
||||
--name dendrite -p 80:8008 matrixdotorg/dendrite-monolith:latest -really-enable-open-registration
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
docker run -d --name synapse --tmpfs /data $NETWORK \
|
||||
docker run -d --rm --name synapse --tmpfs /data \
|
||||
--volume="$(pwd)/test_driver/synapse/data/homeserver.yaml":/data/homeserver.yaml:rw \
|
||||
--volume="$(pwd)/test_driver/synapse/data/localhost.log.config":/data/localhost.log.config:rw \
|
||||
-p 80:80 matrixdotorg/synapse:latest
|
||||
|
|
|
|||
|
|
@ -2,5 +2,5 @@
|
|||
if which flutter >/dev/null; then
|
||||
flutter --no-version-check test test_driver/matrixsdk_test.dart --dart-define=HOMESERVER=$HOMESERVER --dart-define=USER1_NAME=$USER1_NAME --dart-define=USER2_NAME=$USER2_NAME --dart-define=USER3_NAME=$USER3_NAME --dart-define=USER1_PW=$USER1_PW --dart-define=USER2_PW=$USER2_PW --dart-define=USER3_PW=$USER3_PW
|
||||
else
|
||||
dart -D HOMESERVER=$HOMESERVER -D USER1_NAME=$USER1_NAME -D USER2_NAME=$USER2_NAME -D USER3_NAME=$USER3_NAME -D USER1_PW=$USER1_PW -D USER2_PW=$USER2_PW -D USER3_PW=$USER3_PW test test_driver/matrixsdk_test.dart -p vm
|
||||
dart --define=HOMESERVER=$HOMESERVER --define=USER1_NAME=$USER1_NAME --define=USER2_NAME=$USER2_NAME --define=USER3_NAME=$USER3_NAME --define=USER1_PW=$USER1_PW --define=USER2_PW=$USER2_PW --define=USER3_PW=$USER3_PW test test_driver/matrixsdk_test.dart -p vm
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -486,9 +486,8 @@ void main() => group('Integration tests', () {
|
|||
|
||||
Logs().i('++++ (Alice) Create DM ++++');
|
||||
final dmRoom = await testClientA.startDirectChat(testClientB.userID!);
|
||||
// conduit returns the room on sync first, so we check if it has already been returned first.
|
||||
if (testClientB.getRoomById(dmRoom)?.membership !=
|
||||
Membership.invite) {
|
||||
|
||||
if (testClientB.getRoomById(dmRoom) == null) {
|
||||
await testClientB.waitForRoomInSync(dmRoom, invite: true);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue