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

Reorganize build/test in CI #2734

Merged
merged 32 commits into from
Mar 26, 2024
Merged

Reorganize build/test in CI #2734

merged 32 commits into from
Mar 26, 2024

Conversation

ss-es
Copy link
Contributor

@ss-es ss-es commented Mar 8, 2024

No linked issue.

This PR:

This is a PR to reorganize CI. Changes:

  • The self-hosted build, build-release and lint jobs are removed. It is unnecessary to duplicate these on GitHub runners and on the self-hosted runners. The self-hosted test and build-arm jobs are retained.
  • The build job now depends on test passing. This means that tests run first, and that we never build if tests fail. In particular, we still do not build or push dockers if the tests fail.
  • The build-release job runs in parallel to tests, since the artifacts from this job were not used to build dockers.
  • We no longer skip test_crypto in the regular tests, so it no longer runs as a separate job.
  • We no longer cancel the async-std build or test if the tokio variant fails, and vice-versa.
  • The self-hosted test no longer runs with --no-fail-fast. This means test failures are reported (in the form of CI failing) immediately, which should be helpful for development. This doesn't affect the regular GitHub runners, which will still continue to run all tests even after encountering a failing test, and may be helpful for debugging. (The choice of which one to run with --no-fail-fast was completely arbitrary.)

Unrelated to the primary changes, this PR also adds DEBUG logging for libp2p-networking, which is helpful when the tests in libp2p-networking/tests/counter.rs fail -- currently, these tests don't produce any useful logs when they fail.

Notes: if we expect build-release artifacts to be consumed in the future, it should depend on passing tests.

This PR does not:

Key places to review:

Overall test workflow, e.g. here: https://github.com/EspressoSystems/HotShot/actions/runs/8348230729?pr=2734

@ss-es ss-es changed the title Speed up CI by splitting build and test Reorganize build/test in CI Mar 11, 2024
@ss-es ss-es marked this pull request as ready for review March 19, 2024 18:49
jparr721
jparr721 previously approved these changes Mar 20, 2024
Copy link
Contributor

@jparr721 jparr721 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🥳

@ss-es ss-es merged commit db90f49 into main Mar 26, 2024
12 of 13 checks passed
@ss-es ss-es deleted the ss/split-build-and-test branch March 26, 2024 23:14
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.

2 participants