Skip to content

Commit 871f7b9

Browse files
authoredDec 19, 2024
fix: set user agent for purge requests (#2730)
1 parent f00b542 commit 871f7b9

File tree

3 files changed

+23
-43
lines changed

3 files changed

+23
-43
lines changed
 

‎package-lock.json

+10-35
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
"@netlify/edge-bundler": "^12.2.3",
5555
"@netlify/edge-functions": "^2.11.0",
5656
"@netlify/eslint-config-node": "^7.0.1",
57-
"@netlify/functions": "^2.8.2",
57+
"@netlify/functions": "^3.0.0",
5858
"@netlify/serverless-functions-api": "^1.30.1",
5959
"@netlify/zip-it-and-ship-it": "^9.41.0",
6060
"@opentelemetry/api": "^1.8.0",

‎src/run/handlers/cache.cts

+12-7
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { type Span } from '@opentelemetry/api'
1111
import type { PrerenderManifest } from 'next/dist/build/index.js'
1212
import { NEXT_CACHE_TAGS_HEADER } from 'next/dist/lib/constants.js'
1313

14+
import { name as nextRuntimePkgName, version as nextRuntimePkgVersion } from '../../../package.json'
1415
import {
1516
type CacheHandlerContext,
1617
type CacheHandlerForMultipleVersions,
@@ -30,6 +31,8 @@ type TagManifest = { revalidatedAt: number }
3031

3132
type TagManifestBlobCache = Record<string, Promise<TagManifest>>
3233

34+
const purgeCacheUserAgent = `${nextRuntimePkgName}@${nextRuntimePkgVersion}`
35+
3336
export class NetlifyCacheHandler implements CacheHandlerForMultipleVersions {
3437
options: CacheHandlerContext
3538
revalidatedTags: string[]
@@ -347,12 +350,14 @@ export class NetlifyCacheHandler implements CacheHandlerForMultipleVersions {
347350
const tag = `_N_T_${key === '/index' ? '/' : encodeURI(key)}`
348351
getLogger().debug(`Purging CDN cache for: [${tag}]`)
349352
requestContext.trackBackgroundWork(
350-
purgeCache({ tags: tag.split(/,|%2c/gi) }).catch((error) => {
351-
// TODO: add reporting here
352-
getLogger()
353-
.withError(error)
354-
.error(`[NetlifyCacheHandler]: Purging the cache for tag ${tag} failed`)
355-
}),
353+
purgeCache({ tags: tag.split(/,|%2c/gi), userAgent: purgeCacheUserAgent }).catch(
354+
(error) => {
355+
// TODO: add reporting here
356+
getLogger()
357+
.withError(error)
358+
.error(`[NetlifyCacheHandler]: Purging the cache for tag ${tag} failed`)
359+
},
360+
),
356361
)
357362
}
358363
}
@@ -393,7 +398,7 @@ export class NetlifyCacheHandler implements CacheHandlerForMultipleVersions {
393398
}),
394399
)
395400

396-
await purgeCache({ tags }).catch((error) => {
401+
await purgeCache({ tags, userAgent: purgeCacheUserAgent }).catch((error) => {
397402
// TODO: add reporting here
398403
getLogger()
399404
.withError(error)

0 commit comments

Comments
 (0)
Please sign in to comment.