Skip to content

Conversation

aanm
Copy link
Member

@aanm aanm commented Sep 12, 2024

Using cache to improve the build times of lint commit. As an example, a PR with 3-4 commits was taking:

Setup time
baseline / main ~37m39s
w/ this PR changes - partial cache hit ~5m23s
w/ this PR changes - cache hit ~2m49s

@maintainer-s-little-helper maintainer-s-little-helper bot added the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Sep 12, 2024
@aanm aanm force-pushed the pr/add-ccache branch 7 times, most recently from d81de00 to b3236fe Compare September 13, 2024 08:01
ccache can be used to speed up builds of bpf programs.

Signed-off-by: André Martins <andre@cilium.io>
With theses changes, the workflow run time will decreases tremendously
up with the usage of ccache and golang caches.

Signed-off-by: André Martins <andre@cilium.io>
@aanm aanm temporarily deployed to release-base-images September 13, 2024 11:50 — with GitHub Actions Inactive
@aanm aanm added area/CI Continuous Integration testing issue or flake release-note/misc This PR makes changes that have no direct user impact. labels Sep 13, 2024
Copy link
Member

@joestringer joestringer left a comment

Choose a reason for hiding this comment

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

Nice work 💯

I agree in theory this could be missing some things leading to breakage, but generally speaking the bpf code is pretty self-contained and almost all C dependencies are under that path. I can't think of any particular dependencies for the C datapath build that reside outside this directory other than maybe a few makefiles.

Given the benefits of this, I think it's well worth merging this as-is. If it turns out that we frequently hit issues due to the way this PR detects changes in the tree, then those should become quite apparent by breaking the tree, and then we can revisit whether to iterate further on these heuristics.

@aanm aanm disabled auto-merge September 16, 2024 08:53
@aanm aanm merged commit 12b480f into main Sep 16, 2024
281 checks passed
@aanm aanm deleted the pr/add-ccache branch September 16, 2024 08:53
@aanm aanm added backport/author The backport will be carried out by the author of the PR. needs-backport/1.14 needs-backport/1.16 This PR / issue needs backporting to the v1.16 branch labels Oct 1, 2024
@aanm aanm mentioned this pull request Oct 1, 2024
11 tasks
@aanm aanm added backport-pending/1.16 The backport for Cilium 1.16.x for this PR is in progress. and removed needs-backport/1.16 This PR / issue needs backporting to the v1.16 branch labels Oct 1, 2024
@aanm aanm mentioned this pull request Oct 2, 2024
14 tasks
@aanm aanm added backport-pending/1.15 The backport for Cilium 1.15.x for this PR is in progress. and removed needs-backport/1.15 labels Oct 2, 2024
@github-actions github-actions bot added backport-done/1.16 The backport for Cilium 1.16.x for this PR is done. and removed backport-pending/1.16 The backport for Cilium 1.16.x for this PR is in progress. labels Oct 2, 2024
@aanm aanm mentioned this pull request Oct 2, 2024
10 tasks
@aanm aanm added backport-pending/1.14 The backport for Cilium 1.14.x for this PR is in progress. and removed needs-backport/1.14 labels Oct 2, 2024
@github-actions github-actions bot added backport-done/1.14 The backport for Cilium 1.14.x for this PR is done. backport-done/1.15 The backport for Cilium 1.15.x for this PR is done. and removed backport-pending/1.14 The backport for Cilium 1.14.x for this PR is in progress. backport-pending/1.15 The backport for Cilium 1.15.x for this PR is in progress. labels Oct 3, 2024
@learnitall learnitall mentioned this pull request Oct 28, 2024
8 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/CI Continuous Integration testing issue or flake backport/author The backport will be carried out by the author of the PR. backport-done/1.14 The backport for Cilium 1.14.x for this PR is done. backport-done/1.15 The backport for Cilium 1.15.x for this PR is done. backport-done/1.16 The backport for Cilium 1.16.x for this PR is done. release-note/misc This PR makes changes that have no direct user impact.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants