Skip to content

Commit 8e31ed2

Browse files
committed
limit caching to CI again
1 parent f0218f4 commit 8e31ed2

File tree

1 file changed

+32
-20
lines changed

1 file changed

+32
-20
lines changed

src/mdx.ts

Lines changed: 32 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -521,23 +521,33 @@ export async function getFileBySlug(slug: string): Promise<SlugFile> {
521521
);
522522
}
523523

524-
const cacheKey = md5(source);
525-
const cacheFile = path.join(CACHE_DIR, `${cacheKey}.br`);
526-
const assetsCacheDir = path.join(CACHE_DIR, cacheKey);
524+
let cacheKey: string | null = null;
525+
let cacheFile: string | null = null;
526+
let assetsCacheDir: string | null = null;
527527
const outdir = path.join(root, 'public', 'mdx-images');
528528
await mkdir(outdir, {recursive: true});
529529

530-
try {
531-
const [cached, _] = await Promise.all([
532-
readCacheFile<SlugFile>(cacheFile),
533-
cp(assetsCacheDir, outdir, {recursive: true}),
534-
]);
535-
return cached;
536-
} catch (err) {
537-
if (err.code !== 'ENOENT' && err.code !== 'ABORT_ERR' && err.code !== 'Z_BUF_ERROR') {
538-
// If cache is corrupted, ignore and proceed
539-
// eslint-disable-next-line no-console
540-
console.warn(`Failed to read MDX cache: ${cacheFile}`, err);
530+
if (process.env.CI) {
531+
cacheKey = md5(source);
532+
cacheFile = path.join(CACHE_DIR, `${cacheKey}.br`);
533+
assetsCacheDir = path.join(CACHE_DIR, cacheKey);
534+
535+
try {
536+
const [cached, _] = await Promise.all([
537+
readCacheFile<SlugFile>(cacheFile),
538+
cp(assetsCacheDir, outdir, {recursive: true}),
539+
]);
540+
return cached;
541+
} catch (err) {
542+
if (
543+
err.code !== 'ENOENT' &&
544+
err.code !== 'ABORT_ERR' &&
545+
err.code !== 'Z_BUF_ERROR'
546+
) {
547+
// If cache is corrupted, ignore and proceed
548+
// eslint-disable-next-line no-console
549+
console.warn(`Failed to read MDX cache: ${cacheFile}`, err);
550+
}
541551
}
542552
}
543553

@@ -636,7 +646,7 @@ export async function getFileBySlug(slug: string): Promise<SlugFile> {
636646
};
637647
// Set the `outdir` to a public location for this bundle.
638648
// this where this images will be copied
639-
options.outdir = assetsCacheDir;
649+
options.outdir = assetsCacheDir || outdir;
640650

641651
// Set write to true so that esbuild will output the files.
642652
options.write = true;
@@ -666,11 +676,13 @@ export async function getFileBySlug(slug: string): Promise<SlugFile> {
666676
},
667677
};
668678

669-
await cp(assetsCacheDir, outdir, {recursive: true});
670-
writeCacheFile(cacheFile, JSON.stringify(resultObj)).catch(e => {
671-
// eslint-disable-next-line no-console
672-
console.warn(`Failed to write MDX cache: ${cacheFile}`, e);
673-
});
679+
if (assetsCacheDir && cacheFile) {
680+
await cp(assetsCacheDir, outdir, {recursive: true});
681+
writeCacheFile(cacheFile, JSON.stringify(resultObj)).catch(e => {
682+
// eslint-disable-next-line no-console
683+
console.warn(`Failed to write MDX cache: ${cacheFile}`, e);
684+
});
685+
}
674686

675687
return resultObj;
676688
}

0 commit comments

Comments
 (0)