serverless/lib/utils/ensure-exists.js
2024-05-29 11:51:04 -04:00

19 lines
393 B
JavaScript

import fse from 'fs-extra'
import fsp from 'fs/promises'
import path from 'path'
export default async (filename, generate) => {
const cacheDir = path.dirname(filename)
try {
const stats = await fsp.lstat(filename)
if (stats.isFile()) {
return
}
} catch (err) {
if (err.code !== 'ENOENT') throw err
}
await fse.ensureDir(cacheDir)
await generate(cacheDir)
}