Skip to content

Commit ba0094a

Browse files
conico974Nicolas Dorseuil
and
Nicolas Dorseuil
authored
fix ISR in preview in cloudflare (#3250)
Co-authored-by: Nicolas Dorseuil <nicolas@gitbook.io>
1 parent b259009 commit ba0094a

File tree

4 files changed

+28
-3
lines changed

4 files changed

+28
-3
lines changed

.changeset/nasty-moles-visit.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"gitbook-v2": patch
3+
---
4+
5+
fix ISR on preview env

packages/gitbook-v2/open-next.config.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { defineCloudflareConfig } from '@opennextjs/cloudflare';
2-
import doQueue from '@opennextjs/cloudflare/overrides/queue/do-queue';
32
import doShardedTagCache from '@opennextjs/cloudflare/overrides/tag-cache/do-sharded-tag-cache';
43
import {
54
softTagFilter,
@@ -20,7 +19,7 @@ export default defineCloudflareConfig({
2019
// We don't use `revalidatePath`, so we filter out soft tags
2120
filterFn: softTagFilter,
2221
}),
23-
queue: doQueue,
22+
queue: () => import('./openNext/queue').then((m) => m.default),
2423

2524
// Performance improvements as we don't use PPR
2625
enableCacheInterception: true,

packages/gitbook-v2/openNext/queue.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import type { Queue } from '@opennextjs/aws/types/overrides.js';
2+
import { getCloudflareContext } from '@opennextjs/cloudflare';
3+
import doQueue from '@opennextjs/cloudflare/overrides/queue/do-queue';
4+
import memoryQueue from '@opennextjs/cloudflare/overrides/queue/memory-queue';
5+
6+
interface Env {
7+
IS_PREVIEW?: string;
8+
}
9+
10+
export default {
11+
name: 'GitbookISRQueue',
12+
send: async (msg) => {
13+
const { ctx, env } = getCloudflareContext();
14+
const isPreview = (env as Env).IS_PREVIEW === 'true';
15+
ctx.waitUntil(isPreview ? memoryQueue.send(msg) : doQueue.send(msg));
16+
},
17+
} satisfies Queue;

packages/gitbook-v2/wrangler.jsonc

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,14 @@
1515
"enabled": true
1616
},
1717
"vars": {
18-
"NEXT_CACHE_DO_QUEUE_DISABLE_SQLITE": "true"
18+
"NEXT_CACHE_DO_QUEUE_DISABLE_SQLITE": "true",
19+
"IS_PREVIEW": "false"
1920
},
2021
"env": {
2122
"preview": {
23+
"vars": {
24+
"IS_PREVIEW": "true"
25+
},
2226
"r2_buckets": [
2327
{
2428
"binding": "NEXT_INC_CACHE_R2_BUCKET",

0 commit comments

Comments
 (0)