Commit Graph

10 Commits

Author SHA1 Message Date
Marco Munizaga 23fdcef9be
Cache images slightly differently (#165) 2023-04-11 11:29:32 -07:00
Max Inden b0d8a55dd9
fix(aws): Only set bucket var when creds are available (#136)
The `dockerBuildWrapper` script enables caching based on the `AWS_BUCKET`
environment variable. When calling the `libp2p ping interop test` with a bucket
name but no AWS credentials, this leads to the script enabling caching even
though the workflow does not have access to AWS.

With this commit the environment variable `AWS_BUCKET` is only set when
credentials are available and thus the `dockerBuildWrapper` script does not enable
caching then workflow does nothave access to AWS.
2023-02-13 09:50:47 -08:00
Marco Munizaga 3b6d87b532
Update Go & JS tests to conform to the multidim interop test spec. (#121)
* Update Go test implementations to match new spec

* Update JS test implementation

* Update Rust test Implementation

* Update root Makefile

* Update runner to new spec

* Use composite action and S3 caching

* Not using GHA cache anymore

* Try removing access key from env

* Test workflow without cache keys (#131)

* Test if it works without s3 cache keys

* Fix if statement

* Fix if statement

* Always use buildkit

* Undo debug change

* Add no cache workflow

* Skip test in no-cache workflow

* Update .github/workflows/no-cache-multidim-interop.yml

* Same workflow; use CACHING_OPTIONS

* Add Browser WebRTC test (#130)

* Add webrtc to JS test

* Add onlyDial to all queries

* Update versions.ts

* Remove unneeded timeout overrides
2023-02-10 17:00:53 -08:00
Thomas Eizinger c9130e425d
Introduce composite action for running ping interop tests (#123)
Co-authored-by: Marco Munizaga <git@marcopolo.io>
2023-02-02 10:17:22 +11:00
Marco Munizaga 23ff0db5b5
Support other repos using the multidim interop tests (#99)
* Support running interop workflow from other repos

* A bit of shuffling and cleanup
2023-01-13 10:23:58 -08:00
Laurent Senta 1b981a33e0
.github/workflows: use write-artifacts and prevent rebuild (#40)
* .github/workflows: use write-artifacts to prevent rebuild

* .github/workflows: increase build timeout

* .github: add testground install retry
2022-09-23 11:42:26 +02:00
Laurent Senta 520162a188
.github/actions/setup-testground: shortcircuit with edge releases (#34) 2022-09-07 08:45:54 +02:00
Laurent Senta d872355bc0
feat: add retries & update ping/go interop test (#32)
* .github/workflows/run-composition.yml: retry the build command

* .github/workflows/run-composition.yml: reduce run timeout for now

* .github/workflows/*: run on push and PR

* .github/actions: check testground health

* ping/_composition/*: reorder lib versions

* ping/: update with go-libp2p v0.22

* chore: gofmt

* .github/workflows: allow check test-plans during PR and push

* .github/workflows/*: introduce ping-interop-latest

* .github/workflow: tweak retry + timeout

* .github/actions/setup-testground: retry install

* ping/rust: update with v0.47.0 release
2022-08-29 16:34:15 +02:00
Laurent Senta 072d351a5f
ping/rust: introduce rust cross-version test (#26)
* ping/go: fix composition name

* ping/rust: introduce the ping/rust test

* Showcase version selection through features

Can be run with `cargo check --features libp2pv0450` or `cargo check --features
libp2pv0440`.

* Peer programming session

* ping/rust: experiment with master & current groups

* ping/rust/src/main: Simplify import across versions

* ping/rust/src/main: Remove commented out code

* ping/rust/src/main: Clean up

* ping/rust/Dockerfile: Update crates.io index in separate step

Potentially allows caching.

* ping/rust/Dockerfile: Don't both build and install

Building the binary in release mode is enough.

* ping/rust/src/main: Clean up log lines

* ping/rust: Implement iterations with latency

* ping/rust/src/main: Extract signal and wait logic into fn

* ping/rust/Dockerfile: import caching fixes

* ping/: add cross-version composition

* ping/rust: add json payloads fix

* ping/rust: match iterations id with go

* ping/rust/Dockerfile: improve caching

* ci: introduce workflow ping-interop-rust

* ping/interop: update latest versions

* ping/_compositions: add full ping interop

* ci: resolve git reference to sha

* ping/rust/Dockerfile: drop cargo output

* ping/rust: drop version indirection

* ping/rust/Dockerfile: fix features to support caching

* ping/rust/Dockerfile: do not cache the rewritten package

* ping/_compositions/*: use concurrent_builds

* ping/_compositions/*: drop test_instances count

* ci: build composition then run

* ping: introduce InteropTarget option

* ci: fix interop target & build

* ping/_compositions/*: introduce load_resource

* ci: 10 minutes timeout for the run step

* README: add update instruction for rust & clean go

* ping/rust/Dockerfile: add protocol buffer compiler

* ping/rust/Cargo.lock: cargo update packages

* .github: increase testground timeout

Co-authored-by: Max Inden <mail@max-inden.de>
2022-08-22 12:25:07 +02:00
Laurent Senta fb5c863d88
testground: cross-version interoperability (#23)
* plan/ping: fix test & use go 1.17

* plan/ping: fix dedup path

* ping-interop: prepare base module and build script

* ping-interop/go-v0.11: introduce legacy ping test (fix original)

* ci: add interop reusable workflow

* ci: add testground endpoint config

* ping-interop: rewrite with new testground build config feature

* ping-interop: add v0.20 version

* ping-interop: fix build parameters

* ci: add ping-interop-go runner

* ci: use self hosted runner

* ping-interop: name with the current git branch

* ping-interop: use external proxy & drop build cache

* ping-interop: support dependencies changes in go master

* ping-interop: using longer timeout with regulars runners

* ping-interop: move to ping

* README: add ping/go update intructions

* ci: rename compatibility test

* ci: add support for forks

* ping: add doc

* REMOVEME: use a test setup

* ping: update libp2p versions

* ping: add security compat

* ping: smaller compat surface
2022-07-01 09:32:16 +02:00