Merged in fix/SW-2401-share-cache-in-prod (pull request #1815)

Fix/SW-2401 share cache in prod

* fix: reuse cache between prod and pre-prod

* tests: add tests for generating cachePrefix

* tests: remove unnecessary reset of process.env

* tests: add tests for generateCacheKey

* fix: make sure that we don't get invalid cacheKeys

* fix: make sure that we don't get invalid cacheKeys


Approved-by: Linus Flood
This commit is contained in:
Joakim Jäderberg
2025-04-17 08:57:21 +00:00
parent 213bd2c561
commit a56290edc7
8 changed files with 248 additions and 23 deletions

View File

@@ -0,0 +1,26 @@
/**
* This will match release branches
* @example
* release-v1.2.3
* release-v1.2
* release-v1
* release-v1.2.3-alpha
* release-v1.2-beta
* release-v1-preview
*/
const releaseRegex = /^release-v\d+(?:\.\d+){0,2}(?:-\w+)?$/
/**
* If the branch is a production branch reuse the same prefix so that we can reuse the cache between pre-prod and prod
* @param branch
* @returns
*/
export const getBranchPrefix = (branch: string) => {
const isProdBranch =
branch === "production" ||
branch === "prod" ||
branch === "release" ||
releaseRegex.test(branch)
return isProdBranch ? "" : branch
}