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

Optimizations for main build workflow #2534

Merged
merged 2 commits into from
Dec 21, 2023
Merged

Conversation

hairyhum
Copy link
Contributor

@hairyhum hairyhum commented Dec 13, 2023

Change Overview

Trying to reduce time it takes to run the CI workflow.
Currently packing and unpacking entire directory takes a long time. It's faster to just download the go dependencies.

Current changes:

  • Don't pack entire dir on gomod job, only pass the go.mod and go.sum files as outputs
  • Make lint, test, build and docs steps run in parallel
  • Remove double invocation of go test in test.sh, this was left over from the time when test build was separate from test run, no longer required

These changes do not include any caching proposed in #2352 but already cut the pipeline time more then 2 times so it make sense to merge that first and then work on caching as a follow-up

Pull request type

Please check the type of change your PR introduces:

  • 🚧 Work in Progress
  • 🌈 Refactoring (no functional changes, no api changes)
  • 🐹 Trivial/Minor
  • 🐛 Bugfix
  • 🌻 Feature
  • 🗺️ Documentation
  • 🤖 Test

Test Plan

Run the pipeline.

  • 💪 Manual
  • ⚡ Unit test
  • 💚 E2E

@infraq infraq added this to In Progress in Kanister Dec 13, 2023
@hairyhum hairyhum force-pushed the ci-optimise-main-workflow branch 6 times, most recently from ab17110 to 56c0593 Compare December 15, 2023 16:01
@hairyhum hairyhum marked this pull request as ready for review December 15, 2023 16:01
@hairyhum hairyhum force-pushed the ci-optimise-main-workflow branch 4 times, most recently from be6d2a9 to ace9491 Compare December 15, 2023 16:12
@hairyhum hairyhum changed the title WIP: optimizations for main build workflow Optimizations for main build workflow Dec 15, 2023
@hairyhum hairyhum mentioned this pull request Dec 20, 2023
10 tasks
@hairyhum hairyhum added the kueue label Dec 21, 2023
@hairyhum hairyhum removed the kueue label Dec 21, 2023
Copy link
Contributor

@denisvmedia denisvmedia left a comment

Choose a reason for hiding this comment

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

LGTM

Kanister automation moved this from In Progress to Reviewer approved Dec 21, 2023
@hairyhum hairyhum added the kueue label Dec 21, 2023
Uploading/downloading the artifact takes longer than setting up deps
in the test and build steps most of the time.

Also remove double run of `go test` which left over from the time when test
compilation was a separate command.
@hairyhum hairyhum merged commit 2c89d89 into master Dec 21, 2023
12 of 13 checks passed
Kanister automation moved this from Reviewer approved to Done Dec 21, 2023
@hairyhum hairyhum deleted the ci-optimise-main-workflow branch December 21, 2023 17:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Development

Successfully merging this pull request may close these issues.

None yet

3 participants