René's URL Explorer Experiment


Title: perf(ci): enable full Go test caching (fixed ldflags + stable mtimes) by davdhacs · Pull Request #19618 · stackrox/stackrox · GitHub

Open Graph Title: perf(ci): enable full Go test caching (fixed ldflags + stable mtimes) by davdhacs · Pull Request #19618 · stackrox/stackrox

X Title: perf(ci): enable full Go test caching (fixed ldflags + stable mtimes) by davdhacs · Pull Request #19618 · stackrox/stackrox

Description: Description Combined demo of all CI optimization PRs. Do not merge — merge the individual PRs instead. Overall impact Workflow Master Optimized Speedup Unit Tests (warm) 33-36m 3.2m 10x Unit Tests (cold) 33-36m 11m 3x Style 20m 13m 1.5x Total compute (unit-tests) 188m 54m 71% less Individual PRs and what they do Foundation (merge first, any order): PR Change Impact #19617 Stable test ldflags (0.0.0-test) Enables test cache Phase 1 #19395 Stabilize file mtimes after checkout Enables test cache Phase 2 #19580 Fix GHA cache keys (GOTAGS suffix, scanner GOARCH) Prevents cache thrashing between matrix entries #19688 Remove GOMODCACHE caching Cache step 60-100s faster, all jobs unchanged or faster Workflow overhaul (merge after foundation): PR Change Impact #19678 Unit-tests: remove containers, 5-way Go sharding, postgres sharding, integration split, roxctl split, cypress action, skip bench on PRs 33m → 3.2m warm, 188m → 54m compute #19312 Style: split into 5 parallel jobs, shard roxvet 3-way 20m → 13m Key findings Go doesn't cache linked binaries for go build (source). Stable ldflags only help test caching, not build caching. GOMODCACHE (2.9GB) was the cache step bottleneck, not GOCACHE. Go proxy is as fast as GHA cache restore. -count=1 on integration tests was added in 2019 for external service tests, but 38/50 packages use mocks. bash 5.2+ treats & in replacements as matched pattern (like sed). CI container had bash 5.1, ubuntu-latest has 5.2+. Smaller PRs = faster CI — test cache hits are per-package. Unit Tests warm run breakdown (run 23728217606) Job Time go (pkg-helm) 1.0m go-postgres (migrator) 1.0m shell-unit-tests 1.0m openshift-ci 1.5m go-integration 1.6m go (central-2) 2.0m go (pkg-other) 2.0m go-postgres (main) 2.1m go (rest) 2.6m go (central-1) 2.7m go-operator-integration 2.8m local-roxctl (release) 2.9m sensor-integration 3.0m ui-component 3.1m local-roxctl (dev) 3.2m Partially generated by AI.

Open Graph Description: Description Combined demo of all CI optimization PRs. Do not merge — merge the individual PRs instead. Overall impact Workflow Master Optimized Speedup Unit Tests (warm) 33-36m 3.2m 10x Un...

X Description: Description Combined demo of all CI optimization PRs. Do not merge — merge the individual PRs instead. Overall impact Workflow Master Optimized Speedup Unit Tests (warm) 33-36m 3.2m 10x Un...

Opengraph URL: https://github.com/stackrox/stackrox/pull/19618

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:60fcff58-dce8-758b-f302-1f3ab569371e
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-id9758:204C81:79DA14:A38269:6A4D6AEF
html-safe-nonceef45b80d1da53ffdf2def6ed157e8b72db9652742f63c9c76fd43bd36e30fb39
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5NzU4OjIwNEM4MTo3OURBMTQ6QTM4MjY5OjZBNEQ2QUVGIiwidmlzaXRvcl9pZCI6IjM1NzQwODkwMTMxODEzNzcyNjMiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac733de008ccf423398dd1ae5c0d62ea31b6d16c4b9443da47dcef6545f4a2416c
hovercard-subject-tagpull_request:3446623913
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/stackrox/stackrox/pull/19618/files
twitter:imagehttps://avatars.githubusercontent.com/u/105243888?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/105243888?s=400&v=4
og:image:altDescription Combined demo of all CI optimization PRs. Do not merge — merge the individual PRs instead. Overall impact Workflow Master Optimized Speedup Unit Tests (warm) 33-36m 3.2m 10x Un...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None7db3950e3f59095e20a9789440c3dd554efc62d434882ead06ae05b5815605b9
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/stackrox/stackrox git https://github.com/stackrox/stackrox.git
octolytics-dimension-user_id40638982
octolytics-dimension-user_loginstackrox
octolytics-dimension-repository_id434017296
octolytics-dimension-repository_nwostackrox/stackrox
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id434017296
octolytics-dimension-repository_network_root_nwostackrox/stackrox
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasecd8f6a71db61d6012a0cbb134be844fdbe9b8a45
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/stackrox/stackrox/pull/19618/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fstackrox%2Fstackrox%2Fpull%2F19618%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fstackrox%2Fstackrox%2Fpull%2F19618%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=stackrox%2Fstackrox
Reloadhttps://github.com/stackrox/stackrox/pull/19618/files
Reloadhttps://github.com/stackrox/stackrox/pull/19618/files
Reloadhttps://github.com/stackrox/stackrox/pull/19618/files
Please reload this pagehttps://github.com/stackrox/stackrox/pull/19618/files
stackrox https://github.com/stackrox
stackroxhttps://github.com/stackrox/stackrox
Notifications https://github.com/login?return_to=%2Fstackrox%2Fstackrox
Fork 181 https://github.com/login?return_to=%2Fstackrox%2Fstackrox
Star 1.3k https://github.com/login?return_to=%2Fstackrox%2Fstackrox
Code https://github.com/stackrox/stackrox
Issues 52 https://github.com/stackrox/stackrox/issues
Pull requests 549 https://github.com/stackrox/stackrox/pulls
Actions https://github.com/stackrox/stackrox/actions
Security and quality 0 https://github.com/stackrox/stackrox/security
Insights https://github.com/stackrox/stackrox/pulse
Code https://github.com/stackrox/stackrox
Issues https://github.com/stackrox/stackrox/issues
Pull requests https://github.com/stackrox/stackrox/pulls
Actions https://github.com/stackrox/stackrox/actions
Security and quality https://github.com/stackrox/stackrox/security
Insights https://github.com/stackrox/stackrox/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fstackrox%2Fstackrox%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fstackrox%2Fstackrox%2Fissues%2Fnew%2Fchoose
davdhacshttps://github.com/davdhacs
masterhttps://github.com/stackrox/stackrox/tree/master
davdhacs/test-cache-combined-minimalhttps://github.com/stackrox/stackrox/tree/davdhacs/test-cache-combined-minimal
Conversation 10 https://github.com/stackrox/stackrox/pull/19618
Commits 14 https://github.com/stackrox/stackrox/pull/19618/commits
Checks 98 https://github.com/stackrox/stackrox/pull/19618/checks
Files changed https://github.com/stackrox/stackrox/pull/19618/files
Please reload this pagehttps://github.com/stackrox/stackrox/pull/19618/files
perf(ci): enable full Go test caching (fixed ldflags + stable mtimes) https://github.com/stackrox/stackrox/pull/19618/files#top
Show all changes 14 commits https://github.com/stackrox/stackrox/pull/19618/files
5571d4d perf(ci): use fixed version ldflags for tests to enable GOCACHE hits davdhacs Mar 25, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/5571d4dd1b4d37b73d5caeb40783b5171314e70d
7eb0527 perf(ci): stabilize file mtimes for Go test cache davdhacs Mar 24, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/7eb0527111ffe32deecd5380e5dc22fe9f27ca83
7502783 perf(ci): also stabilize directory mtimes for test cache davdhacs Mar 26, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/7502783db9c732fffac13a6c3fe82a1f132a8178
d9c7216 perf(ci): stop over-separating GOCACHE for matrix variants that share… davdhacs Mar 24, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/d9c7216bc216d2da4e304913ce36c54c92d9c484
feaf62b fix(ci): add key-suffix for unit-test GOTAGS matrix and scanner GOARCH davdhacs Mar 24, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/feaf62b99140dbdc041c3bfe2e2526dc9800006b
10c1182 style: add parentheses to key-suffix conditional for clarity davdhacs Mar 24, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/10c1182abcb6c25b5d1fb617c726fa79ebe6195c
eb06477 revert: keep operator branding key-suffix (PR #19417 will refactor this) davdhacs Mar 25, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/eb06477e25550f7aadd1c2c791442fb3ef5a9f38
029b0e6 chore: add comment explaining race-only cache key separation davdhacs Mar 25, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/029b0e60bc6547faca270c926d5ae6558b9d31a3
627491e empty: warm run with rebased combined branch davdhacs Mar 28, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/627491ec753301f7fe5aee1ef302bccd951b56cb
b892a63 ci: temporarily always save GOCACHE for testing on PR branch (remove … davdhacs Mar 28, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/b892a63cf6d5a5f634dd688c1834af7c44e9a70f
649f11f empty: warm run after cache save davdhacs Mar 28, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/649f11fa1e233d7ec6cfcf7a72cec62e2ca1cf7e
4e8ab28 Merge remote-tracking branch 'origin/master' into davdhacs/test-cache… davdhacs Mar 31, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/4e8ab285a9f4b8574d0381e98cf0db82e508fd14
79cc3bb Merge remote-tracking branch 'origin/master' into davdhacs/test-cache… davdhacs Mar 31, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/79cc3bb271cd0cc795dc46980897e5b66587a9d5
ca76592 Merge remote-tracking branch 'origin/master' into davdhacs/test-cache… davdhacs Mar 31, 2026 https://github.com/stackrox/stackrox/pull/19618/commits/ca76592f2ea63a7c64d3e71d956c247e1b5af6d2
Clear filters https://github.com/stackrox/stackrox/pull/19618/files
Please reload this pagehttps://github.com/stackrox/stackrox/pull/19618/files
Please reload this pagehttps://github.com/stackrox/stackrox/pull/19618/files
action.yaml https://github.com/stackrox/stackrox/pull/19618/files#diff-89b6e576fce993588689a097e8c3b7f028a178aa5db857dc37778de26302c813
go-tool.sh https://github.com/stackrox/stackrox/pull/19618/files#diff-98fe5781c9a901030c3ba8b40f129fe11769fec10b4b2fb6dd0c67af124ce298
https://github.com/stackrox/stackrox/blob/master/.github/CODEOWNERS#L113
.github/actions/cache-go-dependencies/action.yamlhttps://github.com/stackrox/stackrox/pull/19618/files#diff-89b6e576fce993588689a097e8c3b7f028a178aa5db857dc37778de26302c813
View file https://github.com/stackrox/stackrox/blob/ca76592f2ea63a7c64d3e71d956c247e1b5af6d2/.github/actions/cache-go-dependencies/action.yaml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/stackrox/stackrox/pull/19618/{{ revealButtonHref }}
https://github.com/stackrox/stackrox/pull/19618/files#diff-89b6e576fce993588689a097e8c3b7f028a178aa5db857dc37778de26302c813
https://github.com/stackrox/stackrox/pull/19618/files#diff-89b6e576fce993588689a097e8c3b7f028a178aa5db857dc37778de26302c813
scripts/go-tool.shhttps://github.com/stackrox/stackrox/pull/19618/files#diff-98fe5781c9a901030c3ba8b40f129fe11769fec10b4b2fb6dd0c67af124ce298
View file https://github.com/stackrox/stackrox/blob/ca76592f2ea63a7c64d3e71d956c247e1b5af6d2/scripts/go-tool.sh
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/stackrox/stackrox/pull/19618/{{ revealButtonHref }}
https://github.com/stackrox/stackrox/pull/19618/files#diff-98fe5781c9a901030c3ba8b40f129fe11769fec10b4b2fb6dd0c67af124ce298
https://github.com/stackrox/stackrox/pull/19618/files#diff-98fe5781c9a901030c3ba8b40f129fe11769fec10b4b2fb6dd0c67af124ce298
Please reload this pagehttps://github.com/stackrox/stackrox/pull/19618/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.