diff options
author | 2023-01-27 16:20:34 +0100 | |
---|---|---|
committer | 2023-01-27 10:20:34 -0500 | |
commit | 1c230f10373ec392b6cdcd5c196ae932f89033aa (patch) | |
tree | 1947b1e788d920f026c23db9dbc6f5610a07ffbb /packages/integrations/netlify/src/integration-functions.ts | |
parent | 2565bc453ec5bc5e31e0cb567e2c22dafd74a09a (diff) | |
download | astro-1c230f10373ec392b6cdcd5c196ae932f89033aa.tar.gz astro-1c230f10373ec392b6cdcd5c196ae932f89033aa.tar.zst astro-1c230f10373ec392b6cdcd5c196ae932f89033aa.zip |
feat(@astrojs/netlify): Add on-demand builders Netlify functions (#5874)
* Add on-demand builders option
* chore: add changeset
* docs: add documentation in configuration section
* Update packages/integrations/netlify/README.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* Update packages/integrations/netlify/README.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* Update packages/integrations/netlify/README.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* Update .changeset/twenty-pans-agree.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
---------
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
Diffstat (limited to 'packages/integrations/netlify/src/integration-functions.ts')
-rw-r--r-- | packages/integrations/netlify/src/integration-functions.ts | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/packages/integrations/netlify/src/integration-functions.ts b/packages/integrations/netlify/src/integration-functions.ts index f75b6d1f8..fcb3f3c70 100644 --- a/packages/integrations/netlify/src/integration-functions.ts +++ b/packages/integrations/netlify/src/integration-functions.ts @@ -13,11 +13,13 @@ export function getAdapter(args: Args = {}): AstroAdapter { interface NetlifyFunctionsOptions { dist?: URL; + builders?: boolean; binaryMediaTypes?: string[]; } function netlifyFunctions({ dist, + builders, binaryMediaTypes, }: NetlifyFunctionsOptions = {}): AstroIntegration { let _config: AstroConfig; @@ -36,7 +38,7 @@ function netlifyFunctions({ }); }, 'astro:config:done': ({ config, setAdapter }) => { - setAdapter(getAdapter({ binaryMediaTypes })); + setAdapter(getAdapter({ binaryMediaTypes, builders })); _config = config; entryFile = config.build.serverEntry.replace(/\.m?js/, ''); @@ -48,7 +50,8 @@ function netlifyFunctions({ } }, 'astro:build:done': async ({ routes, dir }) => { - await createRedirects(_config, routes, dir, entryFile, false); + const type = builders ? 'builders' : 'functions' + await createRedirects(_config, routes, dir, entryFile, type); }, }, }; |