codechain icon indicating copy to clipboard operation
codechain copied to clipboard

Sharing binary on test using mutl-stage build and cache

Open foriequal0 opened this issue 6 years ago • 1 comments

We build CodeChain binary in every task in Travis. It takes about 10-15 mins per task.

  1. To run clippy and rustfmt
  2. To make sure it doesn't have a compile error.
  3. Unit tests and E2E tests.
  4. Dynamic validator tests 1
  5. Dynamic validator tests 2.

We at least use a build output from 3 in 4, 5. We might reuse a build cache from 2 in 3. When many features in clippy and rustfmt are stabilized, we also reuse the cache from 1 in 2.

foriequal0 avatar Jul 29 '19 10:07 foriequal0

We can do this relatively easily on Github Actions with artifacts than Travis CI. https://help.github.com/en/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts Describing task dependency in Github Actions is also easier than Travis CI. https://help.github.com/en/github/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idneeds

foriequal0 avatar Oct 25 '19 17:10 foriequal0