Commit Graph

17 Commits

Author SHA1 Message Date
Max Inden a2d38ccbbe
fix(ping/rust): Use refs/heads/master and not branch and master (#81)
* fix(ping/rust): Use refs/heads/master and not branch and master

Follows suggestion in
https://github.com/libp2p/test-plans/pull/79#discussion_r1030425774.
2022-12-01 18:25:34 +01:00
Thomas Eizinger 0ea1553b2c
ping/rust: Add 0.50.0 as a release and fix deprecation warnings (#87) 2022-12-01 17:14:22 +01:00
Thomas Eizinger 31a128833d
feat(ping/rust): Add dummy main to allow for caching of built dependencies (#78) 2022-11-23 18:00:19 +01:00
João Oliveira ddb2e4bad2
ping: update Rust versions 0.45.0 and 0.46.0, (#76)
to 0.45.1 and 0.46.1 respectively.
2022-11-23 15:49:54 +01:00
Max Inden 4f8297fd34
fix(ping/rust): Only specify branch when building master (#80) 2022-11-23 15:23:51 +01:00
Max Inden da5bbf715a
fix(ping/rust): Don't set PR ref for master build (#79)
When building the `master` image we would previously mistakingly set the
ref to the PR commit hash.

This surfaced when testing a pull request from a fork. `master` would be
pointed at the forks HEAD commit hash, but not the fork URL. Thus the
build could not find the commit and would fail. See
https://github.com/libp2p/rust-libp2p/pull/3154
2022-11-23 10:52:07 +01:00
Thomas Eizinger abce1ee483
ping/rust: Refactor into multiple binaries (#72)
By having one Rust binary per version, we can vary the actual binary from
version to version and f.e. fix deprecated API calls. It does introduce a bit of
duplication between the different versions but I'd rather have that then not
being able to adapt the tests to new APIs.

Instead of activating a feature per libp2p version, we add them all as
dependencies. This ensures all transitive dependencies are properly tracked in
`Cargo.lock`. Additionally, this gives us a single place we are can activate all
the feature.

For `master` and pull-request builds, we replace the git target or rev with the
one coming from the CI build. Once we trigger a build, `cargo` will update and
resolve the necessary dependencies before that, thus fixing problems such as
https://github.com/libp2p/rust-libp2p/pull/2972.
2022-11-18 12:49:30 +01:00
Max Inden b97b36aa27
ping/rust/Dockerfile: Build in debug mode instead of release mode (#50) 2022-11-04 18:05:27 +01:00
Max Inden 3d51093f23
ping/rust: Run cargo update (#69)
Updates dependency. In the hope to resolve conflict from
https://github.com/libp2p/rust-libp2p/pull/2972/.
2022-11-02 12:28:31 +00:00
Thomas Eizinger e76388106f
ping/: Update for rust-libp2p v0.49 release (#60) 2022-10-21 15:50:18 +01:00
Elena Frank c71602e88c
ping/rust: Update rust-sdk patch, remove unused dependencies (#42)
* ping/rust: remove unused dependencies

* README: fix import instructions

* ping/rust: set channel capacity to # of instances

* ping/rust: use testground-v0.4.0 from crates.io
2022-10-04 12:42:33 +01:00
Max Inden 5b5b653430
ping/rust/src/main: Decrease ping interval (#46)
This will speed up test runs.
2022-09-30 18:29:21 +01:00
Max Inden a9292a67d2
ping/rust/src/main: Reduce noise on logs (#47)
- Don't log every `SwarmEvent`.
- Log connected and ping only once per peer.
- Log format somewhat consistent with Golang implementation.
2022-09-27 12:26:31 +02:00
Max Inden edd1dd4d5e
ping/: Update to rust-libp2p release v0.48.0 and master v0.49.0 (#41)
See release of v0.48.0 in https://github.com/libp2p/rust-libp2p/pull/2869.

Master bump to v0.49.0 in https://github.com/libp2p/rust-libp2p/pull/2813
2022-09-25 20:30:40 +02:00
Laurent Senta 24b30b2b3f
ping/rust: remove the master dependency (#45)
* ping/rust: pin sdk-rust version

* ping/rust: make master branch explicit

* ping/rust: drop version for master builds
2022-09-23 09:53:00 +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