mirror of
https://github.com/ipfs/ipfs-blog.git
synced 2026-08-12 03:42:47 +02:00
Merge pull request #506 from ipfs/feat/add-testground-higlights-2022
blog: add testground highlights 2022
This commit is contained in:
@@ -152,6 +152,7 @@ fields:
|
||||
target="_blank">file an issue</a> with the details.
|
||||
pages:
|
||||
- src/_blog/2021-05-31-distributed-wikipedia-mirror-update.md
|
||||
- src/_blog/2022-12-07-testground-in-2022.md
|
||||
- src/_blog/3s-studio-bringing-unreal-engine-to-ipfs.md
|
||||
- src/_blog/a-brave-new-wallet-the-future-of-the-browser-wallet.md
|
||||
- src/_blog/a-guide-to-ipfs-connectivity-in-web-browsers.md
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
---
|
||||
tags:
|
||||
- Testground
|
||||
title: "Highlights of Testground 2022"
|
||||
description: "Testground is a platform for testing and benchmarking distributed systems. This year, the IPDX team re-ignited the project."
|
||||
date: 2022-12-20
|
||||
permalink: "/testground-highlights-in-2022/"
|
||||
translationKey: ''
|
||||
header_image: /2022-12-07-testground-article-header.png
|
||||
author: Laurent Senta
|
||||
---
|
||||
|
||||
Testground is a platform for testing and benchmarking distributed systems. We used it before to work on massive improvements to IPFS DHT, Filecoin Network, and libp2p. This year, the [IPDX team](https://pl-strflt.notion.site/IPDX-122073392dce454e9ca4b87231034483) re-ignited the project. We started two collaborations, created a new use case for interoperability testing, and welcomed new users and contributors.
|
||||
|
||||
Now that the end of the year is near; it is time for a “bragging session” and to share our master plan to take over the CIs of the entire Protocol Labs Network!
|
||||
|
||||
[[toc]]
|
||||
|
||||
## 🔌 A new use case: interoperability testing for [libp2p](https://libp2p.io/)
|
||||
|
||||
Using Testground, the libp2p team is now testing interoperability between many implementations and versions. The newly introduced tests cover go-libp2p and rust-libp2p versions already, and js and nim support is in the works.
|
||||
|
||||
**Milestones:**
|
||||
|
||||
- **Mixed Builders Feature**: We can now write a test that depends on [multiple builders and languages](https://github.com/testground/testground/pull/1367).
|
||||
- **Interoperability Support Improvements in Go**: Testground can [rewrite mod files](https://github.com/testground/testground/pull/1338), and [overwrite dependencies](https://github.com/testground/testground/pull/1338). This enables users to test many different versions of a library using a single test source.
|
||||
- [**sdk-rust**](https://github.com/testground/sdk-rust): We introduced the [sdk-rust](https://github.com/testground/testground/pull/1287) and [improved it over the year](https://github.com/testground/sdk-rust/pulls?q=is%3Apr+is%3Aclosed).
|
||||
- [**sdk-js**](https://github.com/testground/sdk-js): Thanks to [Little Bear Labs’](https://littlebearlabs.io/) support, the Testground SDK for JavaScript [now works in the browser](https://github.com/testground/sdk-js/pull/26) too.
|
||||
|
||||
We also [presented _how Testground powers libp2p interoperability testing_ at IPFS Camp](https://www.youtube.com/watch?v=b2SkC4dYV-A) (Youtube).
|
||||
|
||||
## 🤹 Massive stability improvements for supported SDKs
|
||||
|
||||
Testground has an issue with flakiness. The project's stability has been on our minds throughout the year, and we have made significant strides in this area.
|
||||
|
||||
**Milestones:**
|
||||
|
||||
- **A refreshed Docker Runner**: to support new languages better and fix concurrency issues, we [rewrote the Docker Runner](https://github.com/testground/testground/pull/1407#issuecomment-1203853804). In our tests, **false negatives went from 40% to <1%.**
|
||||
- **Benchmarking and stability improvements:** we've implemented tooling and [fixes](https://github.com/testground/testground/pull/1421) that help with CI [testing](https://github.com/libp2p/test-plans/pulls?q=is%3Apr+is%3Amerged+merged%3A%3E%3D2022-01-01). Some of this work will soon become part of the Testground Stability Dashboard and custom CI actions.
|
||||
|
||||
## 🐘 EKS Support
|
||||
|
||||
Testground is also designed to run large network tests spanning far beyond what a single machine can handle. With Testground on [EKS](https://aws.amazon.com/eks/) (managed Kubernetes service from AWS), we can support tests with more than 10k nodes.
|
||||
|
||||
**Milestones:**
|
||||
|
||||
- **Preview Support for EKS:** The [Bloxico team](https://bloxico.com/) has been working hard on [Testground EKS support](https://github.com/testground/testground/pull/1350) and [EKS infrastructure setup for Testground](https://github.com/testground/infra/pull/78). A working alpha setup is now available. Other teams, such as [Celestia](https://celestia.org/), are already building on top of it.
|
||||
|
||||
## ✨ And sooooo much more
|
||||
|
||||
✨ The team also dusted off [SDKs](https://github.com/testground/sdk-js/pull/22) and [examples](https://github.com/testground/testground/pull/1306), helped [improve ARM support](https://github.com/testground/testground/pull/1372). We introduced new [features](https://github.com/testground/testground/pull/1481), [bug fixes](https://github.com/testground/testground/pull/1321), and [brought many more improvements](https://github.com/testground/testground/pulls?q=is%3Apr+is%3Aclosed+merged%3A%3E2022-01-01+).
|
||||
|
||||
|
||||
## 🫶 New Users
|
||||
|
||||
New users and contributors are joining the project!
|
||||
|
||||
- [**Celestia**](https://celestia.org/) is using Testground to [test their network](https://github.com/celestiaorg/test-infra). Building on top of our EKS Preview, they simulate between 4 and 6 thousand nodes.
|
||||
- [**Magmo**](https://magmo.com/) is using Testground to test and benchmark their payment channel. They had success with stability and performance measurements. They shared an excellent presentation during [Retrieval Markets Summit](https://www.youtube.com/watch?v=xYn8Evkrs30) (Youtube).
|
||||
- [**status.im**](https://status.im/) is [working](https://github.com/libp2p/test-plans/pull/70) on adding their nim implementation to the libp2p interoperability repository.
|
||||
- [**Sigma Prime**](https://sigmaprime.io/) is using Testground to [test their implementation](https://github.com/ackintosh/discv5-testground) of Ethereum's Peer Discovery Protocol.
|
||||
- [**number0**](https://n0.computer/) uses Testground to benchmark [iroh](https://iroh.computer/), an IPFS implementation written in Rust focused on efficiency. They share numbers on [their website](https://iroh.computer/).
|
||||
- **Moving the Bytes Working Group** uses Testground to benchmark and test bitswap and new protocols for data exchange. You can follow along in [Notion](https://www.notion.so/MTB-WG-Meeting-1-cfeed84309894936bd652f1b47f3221a) and join the [#move-the-bytes-wg](https://filecoinproject.slack.com/archives/C04A22DCQCF) channel on FIL Slack.
|
||||
|
||||
## 🚀 What's Next
|
||||
|
||||
We shared a [Roadmap](https://github.com/testground/testground/blob/master/ROADMAP.md) for what is coming to Testground in 2023. Here are the highlights.
|
||||
|
||||
- **Better Network Simulation & New Features:** We plan on improving [network simulation](https://github.com/testground/testground/issues/1488) for libp2p and the Move The Bytes WG. We are also adding the ability to run [more complex test plans](https://github.com/testground/testground/issues/1493) and [browser support](https://github.com/testground/testground/issues/1386). Testground improves the fastest when it’s “customer-driven”.
|
||||
- **Testing, Stability, and Workflows Improvements:** the team [will invest](https://github.com/testground/testground/issues/1512) in bringing Testground building and testing tools to a state where it's easy & efficient to contribute. We want to improve the scale and stability of changes we can make, encourage external contributions, and communicate clearly about stability & regressions.
|
||||
|
||||
<div class="blog type-rich block w-full p-6 bg-white border border-gray-200 rounded-lg shadow-md dark:bg-gray-800 dark:border-gray-700">
|
||||
|
||||
✨ Testground is like that kid in the back of the class, *"great potential, needs more attention.”* We believe it's brilliant, and we'd like to encourage you to [**join us**](https://docs.testground.ai/v/master/table-of-contents/readme/community)!
|
||||
|
||||
Whether you already know Testground and can't wait for improvements, or you are discovering the project and thinking about using it, we'd like to hear more from you:
|
||||
|
||||
- [Join the Community](https://docs.testground.ai/v/master/table-of-contents/readme/community) and build the future of Testground with us!
|
||||
- Take two minutes to fill out our [User Survey Form](https://docs.google.com/forms/d/e/1FAIpQLScnsIVq2c6nLqchStzX78LyaZxo5CiIJUviMcMuYBz2QdpdMw/viewform) and help us identify pain points.
|
||||
|
||||
</div>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 418 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 555 KiB After Width: | Height: | Size: 423 KiB |
Reference in New Issue
Block a user