Rename function file to eleventy-builder

This commit is contained in:
Sam Carlton 2021-07-24 14:32:53 -05:00
parent a4c999048f
commit 6287833eee
3 changed files with 89 additions and 38 deletions

View file

@ -0,0 +1,54 @@
const { EleventyServerless } = require("@11ty/eleventy");
// Explicit dependencies for the bundler from config file and global data.
// The file is generated by the Eleventy Serverless Bundler Plugin.
require("./eleventy-bundler-modules.js");
async function handler(event) {
console.log('event.path', event.path)
let elev = new EleventyServerless("eleventy-builder", {
path: event.path,
query: event.queryStringParameters,
inputDir: ".",
functionsDir: "./netlify/functions/",
});
try {
return {
statusCode: 200,
headers: {
"Content-Type": "text/html; charset=UTF-8",
},
body: await elev.render(),
};
} catch (error) {
// Only console log for matching serverless paths
// (otherwise youll see a bunch of BrowserSync 404s for non-dynamic URLs during --serve)
if (elev.isServerlessUrl(event.path)) {
console.log("Serverless Error:", error);
}
return {
statusCode: error.httpStatusCode || 500,
body: JSON.stringify(
{
error: error.message,
},
null,
2
),
};
}
}
// Choose one:
// * Runs on each request: AWS Lambda (or Netlify Function)
// * Runs on first request only: Netlify On-demand Builder
// (dont forget to `npm install @netlify/functions`)
// exports.handler = handler;
const { builder } = require("@netlify/functions");
exports.handler = builder(handler);

View file

@ -5,42 +5,39 @@ const { EleventyServerless } = require("@11ty/eleventy");
require("./eleventy-bundler-modules.js");
async function handler(event) {
let elev = new EleventyServerless("eleventy-builder", {
path: event.path,
query: event.queryStringParameters,
inputDir: ".",
functionsDir: "./netlify/functions/",
});
console.log('event.path', event.path)
let elev = new EleventyServerless("eleventy-builder", {
path: event.path,
query: event.queryStringParameters,
inputDir: ".",
functionsDir: "./netlify/functions/",
});
try {
return {
statusCode: 200,
headers: {
"Content-Type": "text/html; charset=UTF-8",
},
body: await elev.render(),
};
} catch (error) {
// Only console log for matching serverless paths
// (otherwise youll see a bunch of BrowserSync 404s for non-dynamic URLs during --serve)
if (elev.isServerlessUrl(event.path)) {
console.log("Serverless Error:", error);
}
return {
statusCode: error.httpStatusCode || 500,
body: JSON.stringify(
{
error: error.message,
},
null,
2
),
};
try {
return {
statusCode: 200,
headers: {
"Content-Type": "text/html; charset=UTF-8",
},
body: await elev.render(),
};
} catch (error) {
// Only console log for matching serverless paths
// (otherwise youll see a bunch of BrowserSync 404s for non-dynamic URLs during --serve)
if (elev.isServerlessUrl(event.path)) {
console.log("Serverless Error:", error);
}
return {
statusCode: error.httpStatusCode || 500,
body: JSON.stringify(
{
error: error.message,
},
null,
2
),
};
}
}
// Choose one:
@ -48,7 +45,7 @@ async function handler(event) {
// * Runs on first request only: Netlify On-demand Builder
// (dont forget to `npm install @netlify/functions`)
// exports.handler = handler;
exports.handler = handler;
const { builder } = require("@netlify/functions");
exports.handler = builder(handler);
//const { builder } = require("@netlify/functions");
//exports.handler = builder(handler);