ckb icon indicating copy to clipboard operation
ckb copied to clipboard

Enhance CI Workflow Efficiency

Open eval-exec opened this issue 1 year ago • 2 comments

Feature Request

Is your feature request related to a problem? Please describe.

Our CI workflows are currently slow, and we'd like to propose a few improvements:

  1. Push Events:

    • Run only lint, unit, and integration tests on Ubuntu to speed up feedback.
  2. Merge Group:

    • Run the full suite (macOS, Windows, Ubuntu) for comprehensive checks.
  3. Optimize Build Time:

    • Make ckb-test as a [bin] in the ckb workspace, let ckb-test bin and ckb bin shared same one target dir.
    • Build once in make prod so that make integration reuses the artifacts, reducing overall time.
  4. Unify Dependency Versions:

    • Use cargo tree --duplicate to ensure each dependency version is used only once, reducing compilation redundancies.
  5. Cache Build Target

    • Use rust-sccache on CI https://github.com/marketplace/actions/rust-sccache
  6. Increase Integration Test Concurrency

    • https://github.com/eval-exec/ckb/blob/exec%2Ffix-ci/Makefile#L8 (-c 4 means that only 4 integration tests are allowed to run simultaneously, need to increase)

These changes will streamline our CI processes and reduce build times.

Describe the solution you'd like

Describe alternatives you've considered

eval-exec avatar Aug 06 '24 02:08 eval-exec

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] avatar Sep 06 '24 01:09 github-actions[bot]

This issue was closed because it has been stalled for 5 days with no activity.

github-actions[bot] avatar Sep 12 '24 01:09 github-actions[bot]