[remix] Set framework property on Lambda / EdgeFunction (#9579)

This commit is contained in:
Nathan Rajlich
2023-02-28 14:16:05 -08:00
committed by GitHub
parent 803a9363f9
commit b78cfc9ba5

View File

@@ -93,6 +93,14 @@ export const build: BuildV2 = async ({
await runNpmInstall(entrypointFsDirname, [], spawnOpts, meta, nodeVersion); await runNpmInstall(entrypointFsDirname, [], spawnOpts, meta, nodeVersion);
} }
const remixDevPackageJsonPath = _require.resolve(
'@remix-run/dev/package.json',
{ paths: [entrypointFsDirname] }
);
const remixVersion = JSON.parse(
await fs.readFile(remixDevPackageJsonPath, 'utf8')
).version;
// Make `remix build` output production mode // Make `remix build` output production mode
spawnOpts.env.NODE_ENV = 'production'; spawnOpts.env.NODE_ENV = 'production';
@@ -208,14 +216,16 @@ module.exports = config;`;
repoRootPath, repoRootPath,
join(entrypointFsDirname, serverBuildPath), join(entrypointFsDirname, serverBuildPath),
remixConfig.serverEntryPoint, remixConfig.serverEntryPoint,
nodeVersion nodeVersion,
remixVersion
), ),
hasEdgeRoute hasEdgeRoute
? createRenderEdgeFunction( ? createRenderEdgeFunction(
entrypointFsDirname, entrypointFsDirname,
repoRootPath, repoRootPath,
join(entrypointFsDirname, serverBuildPath), join(entrypointFsDirname, serverBuildPath),
remixConfig.serverEntryPoint remixConfig.serverEntryPoint,
remixVersion
) )
: undefined, : undefined,
]); ]);
@@ -301,7 +311,8 @@ async function createRenderNodeFunction(
rootDir: string, rootDir: string,
serverBuildPath: string, serverBuildPath: string,
serverEntryPoint: string | undefined, serverEntryPoint: string | undefined,
nodeVersion: NodeVersion nodeVersion: NodeVersion,
remixVersion: string
): Promise<NodejsLambda> { ): Promise<NodejsLambda> {
const files: Files = {}; const files: Files = {};
@@ -338,6 +349,10 @@ async function createRenderNodeFunction(
shouldAddSourcemapSupport: false, shouldAddSourcemapSupport: false,
operationType: 'SSR', operationType: 'SSR',
experimentalResponseStreaming: true, experimentalResponseStreaming: true,
framework: {
slug: 'remix',
version: remixVersion,
},
}); });
return fn; return fn;
@@ -347,7 +362,8 @@ async function createRenderEdgeFunction(
entrypointDir: string, entrypointDir: string,
rootDir: string, rootDir: string,
serverBuildPath: string, serverBuildPath: string,
serverEntryPoint: string | undefined serverEntryPoint: string | undefined,
remixVersion: string
): Promise<EdgeFunction> { ): Promise<EdgeFunction> {
const files: Files = {}; const files: Files = {};
@@ -447,6 +463,10 @@ async function createRenderEdgeFunction(
deploymentTarget: 'v8-worker', deploymentTarget: 'v8-worker',
name: 'render', name: 'render',
entrypoint: handler, entrypoint: handler,
framework: {
slug: 'remix',
version: remixVersion,
},
}); });
return fn; return fn;