Feature: Use hash of query+variables for graphql cache instead of gitsha * feature: use a hash of query+variables as part of the cache key instead of gitsha * . * Merge branch 'master' of bitbucket.org:scandic-swap/web into feat/use-hash-for-graphql-cache * use correct json stringify * merge * remove edgeRequest in favor of request * add more indicative logging Approved-by: Linus Flood
43 lines
1022 B
TypeScript
43 lines
1022 B
TypeScript
import { env } from "@/env/server"
|
|
|
|
import { getBranchPrefix } from "./getBranchPrefix"
|
|
|
|
export function getPrefix(options: {
|
|
includeGitHashInKey: boolean
|
|
includeBranchPrefix: boolean
|
|
}): string {
|
|
const prefixTokens = []
|
|
|
|
const includeGitHashInKey = options.includeGitHashInKey
|
|
const includeBranchPrefix = options.includeBranchPrefix
|
|
|
|
if (process.env.NODE_ENV === "development") {
|
|
const devPrefix = process.env.USER || process.env.USERNAME || "dev"
|
|
return `${devPrefix}`
|
|
}
|
|
|
|
if (includeGitHashInKey) {
|
|
const gitSha = env.GIT_SHA?.trim().substring(0, 7)
|
|
|
|
if (!gitSha) {
|
|
throw new Error("Unable to getPrefix, GIT_SHA must be set")
|
|
}
|
|
|
|
prefixTokens.push(gitSha)
|
|
}
|
|
|
|
if (includeBranchPrefix) {
|
|
const branch = env.BRANCH?.trim()
|
|
|
|
if (!branch) {
|
|
throw new Error("Unable to getPrefix, BRANCH must be set")
|
|
}
|
|
const branchPrefix = getBranchPrefix(branch)
|
|
if (branchPrefix) {
|
|
prefixTokens.push(branchPrefix)
|
|
}
|
|
}
|
|
|
|
return prefixTokens.join(":")
|
|
}
|