Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: run testground:ping plan on pull requests #1625

Merged

Conversation

laurentsenta
Copy link
Contributor

@laurentsenta laurentsenta commented Jul 1, 2022

Add a workflow that calls the testground interop testing on every push and pull request.

Examples

Known limitation

  • This PR will work with local branches & forks, but it will test the latest commit of the pull request, NOT the merge commit,
  • The test takes ~14 minutes for now (5 min setup, 9 min to run),

@laurentsenta laurentsenta changed the title ci: run testgroundLping plan on pull requests ci: run testground:ping plan on pull requests Jul 1, 2022
@laurentsenta laurentsenta marked this pull request as draft July 1, 2022 11:14
@laurentsenta laurentsenta force-pushed the ci/cross-version-interop-testing branch from 8e832dc to 0a0e2a5 Compare July 1, 2022 11:16
@laurentsenta laurentsenta force-pushed the ci/cross-version-interop-testing branch from 0a0e2a5 to 0667287 Compare July 1, 2022 11:36
@laurentsenta laurentsenta marked this pull request as ready for review July 1, 2022 12:12
@marten-seemann
Copy link
Contributor

Very nice! Are the tests are now completely stable, or will this add (additional) flakiness?

@mxinden
Copy link
Member

mxinden commented Jul 2, 2022

Very cool!

but it will test the latest commit of the pull request, NOT the merge commit,

I can only comment for rust-libp2p. Here master is a protected branch and we enabled "Require branches to be up to date before merging", thus it is fine to test the commit and not the merge.

@laurentsenta
Copy link
Contributor Author

@marten-seemann I have noticed no flakiness with the current setup (a few dozen runs, 0 failures).

The one thing I'm not sure about is how much maintenance the master and the current test groups will require:

They both auto-update libp2p using a replace directive in the modfile. Which doesn't looks super stable with go and libp2p.
I already had to patch the test plan (libp2p/test-plans#25) and I hope that will be enough. From my understanding, libp2p's repo consolidation will help too.

I think it's worth a shot, especially because if we make this work, we might be able to make this work everywhere (ipfs, lotus, etc).

I'll fix the tests along if needed, and if the maintenance cost is too high we have options (automation, running the test only on releases, moving the plan into the go-libp2p repo, etc).

@marten-seemann marten-seemann merged commit 4ebef86 into libp2p:master Aug 2, 2022
@laurentsenta laurentsenta deleted the ci/cross-version-interop-testing branch August 2, 2022 15:03
@galargh
Copy link
Contributor

galargh commented Aug 2, 2022

🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants