summaryrefslogtreecommitdiff
path: root/packages/integrations/node/src
diff options
context:
space:
mode:
authorGravatar Florian Lefebvre <contact@florian-lefebvre.dev> 2024-06-10 16:43:48 +0200
committerGravatar GitHub <noreply@github.com> 2024-06-10 16:43:48 +0200
commitafc87e74ee7f4889a14660771af83c826927574f (patch)
treead58eddf59529c17af3fb41fc801c5746e6f6abd /packages/integrations/node/src
parentb7db40234d08ff303bd989e8860d0c0433bd7ab0 (diff)
downloadastro-afc87e74ee7f4889a14660771af83c826927574f.tar.gz
astro-afc87e74ee7f4889a14660771af83c826927574f.tar.zst
astro-afc87e74ee7f4889a14660771af83c826927574f.zip
feat: add support for astro:env to node and vercel (#11199)
Diffstat (limited to 'packages/integrations/node/src')
-rw-r--r--packages/integrations/node/src/index.ts1
-rw-r--r--packages/integrations/node/src/server.ts6
2 files changed, 7 insertions, 0 deletions
diff --git a/packages/integrations/node/src/index.ts b/packages/integrations/node/src/index.ts
index 2108ec5ca..5fec3850c 100644
--- a/packages/integrations/node/src/index.ts
+++ b/packages/integrations/node/src/index.ts
@@ -19,6 +19,7 @@ export function getAdapter(options: Options): AstroAdapter {
isSquooshCompatible: true,
},
i18nDomains: 'experimental',
+ envGetSecret: 'experimental',
},
};
}
diff --git a/packages/integrations/node/src/server.ts b/packages/integrations/node/src/server.ts
index 1fb9d93e5..e5b503292 100644
--- a/packages/integrations/node/src/server.ts
+++ b/packages/integrations/node/src/server.ts
@@ -5,6 +5,12 @@ import { createStandaloneHandler } from './standalone.js';
import startServer from './standalone.js';
import type { Options } from './types.js';
+// Won't throw if the virtual module is not available because it's not supported in
+// the users's astro version or if astro:env is not enabled in the project
+await import('astro/env/setup')
+ .then((mod) => mod.setGetEnv((key) => process.env[key]))
+ .catch(() => {});
+
applyPolyfills();
export function createExports(manifest: SSRManifest, options: Options) {
const app = new NodeApp(manifest);