buildServerlessFolder() — astro Function Reference
Architecture documentation for the buildServerlessFolder() function in index.ts from the astro codebase.
Entity Profile
Dependency Diagram
graph TD b08d0cb6_4d5e_9fe0_317b_85cd9ce4765d["buildServerlessFolder()"] b9cdb338_a865_cfb5_1987_5fa8663f4726["VercelBuilder"] b08d0cb6_4d5e_9fe0_317b_85cd9ce4765d -->|defined in| b9cdb338_a865_cfb5_1987_5fa8663f4726 0219003e_0431_f5b2_9b31_f2db70f1ade0["vercelAdapter()"] 0219003e_0431_f5b2_9b31_f2db70f1ade0 -->|calls| b08d0cb6_4d5e_9fe0_317b_85cd9ce4765d 8053f98f_c4a0_24d5_fb52_9329536f5a87["buildISRFolder()"] 8053f98f_c4a0_24d5_fb52_9329536f5a87 -->|calls| b08d0cb6_4d5e_9fe0_317b_85cd9ce4765d style b08d0cb6_4d5e_9fe0_317b_85cd9ce4765d fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/integrations/vercel/src/index.ts lines 658–693
async buildServerlessFolder(entry: URL, functionName: string, root: URL) {
const { includeFiles, excludeFiles, logger, NTF_CACHE, runtime, maxDuration } = this;
// .vercel/output/functions/<name>.func/
const functionFolder = new URL(`./functions/${functionName}.func/`, this.outDir);
const packageJson = new URL(`./functions/${functionName}.func/package.json`, this.outDir);
const vcConfig = new URL(`./functions/${functionName}.func/.vc-config.json`, this.outDir);
// Copy necessary files (e.g. node_modules/)
const { handler } = await copyDependenciesToFunction(
{
entry,
outDir: functionFolder,
includeFiles,
excludeFiles,
logger,
root,
},
NTF_CACHE,
);
// Enable ESM
// https://aws.amazon.com/blogs/compute/using-node-js-es-modules-and-top-level-await-in-aws-lambda/
await writeJson(packageJson, {
type: 'module',
});
// Serverless function config
// https://vercel.com/docs/build-output-api/v3#vercel-primitives/serverless-functions/configuration
await writeJson(vcConfig, {
runtime,
handler: handler.replaceAll('\\', '/'),
launcherType: 'Nodejs',
maxDuration,
supportsResponseStreaming: true,
});
}
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does buildServerlessFolder() do?
buildServerlessFolder() is a function in the astro codebase, defined in packages/integrations/vercel/src/index.ts.
Where is buildServerlessFolder() defined?
buildServerlessFolder() is defined in packages/integrations/vercel/src/index.ts at line 658.
What calls buildServerlessFolder()?
buildServerlessFolder() is called by 2 function(s): buildISRFolder, vercelAdapter.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free