From 42da2e23eb3f677d25b7ed0aab273f219c8cab4e Mon Sep 17 00:00:00 2001 From: Matthew Phillips Date: Mon, 25 Jul 2022 00:18:02 -0400 Subject: [PATCH] Add the `output` option (#4015) * Start of work on astroConfig.mode === 'server' * Add tests and more * adapter -> deploy in some places * Add fallback for `adapter` config * Update more tests * Update image tests * Fix clientAddress test * Updates based on PR review * Add a changeset * Update integrations tests + readme * Oops * Remove old option * Rename `mode` to `output` * Update Node adapter test * Update test * fred pass * fred pass * fred pass * fix test Co-authored-by: Fred K. Schott --- packages/integrations/node/README.md | 1 + packages/integrations/node/src/index.ts | 6 +++++- packages/integrations/node/test/api-route.test.js | 4 +--- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/integrations/node/README.md b/packages/integrations/node/README.md index 3772a23d8d08..2743525771b6 100644 --- a/packages/integrations/node/README.md +++ b/packages/integrations/node/README.md @@ -37,6 +37,7 @@ import node from '@astrojs/node'; export default defineConfig({ // ... + output: 'server', adapter: node() }) ``` diff --git a/packages/integrations/node/src/index.ts b/packages/integrations/node/src/index.ts index b90cd9d2e990..8ff6fc423787 100644 --- a/packages/integrations/node/src/index.ts +++ b/packages/integrations/node/src/index.ts @@ -12,8 +12,12 @@ export default function createIntegration(): AstroIntegration { return { name: '@astrojs/node', hooks: { - 'astro:config:done': ({ setAdapter }) => { + 'astro:config:done': ({ setAdapter, config }) => { setAdapter(getAdapter()); + + if(config.output === 'static') { + console.warn(`[@astrojs/Node] \`output: "server"\` is required to use this adapter.`); + } }, }, }; diff --git a/packages/integrations/node/test/api-route.test.js b/packages/integrations/node/test/api-route.test.js index a28b88e7f363..034b53c07f53 100644 --- a/packages/integrations/node/test/api-route.test.js +++ b/packages/integrations/node/test/api-route.test.js @@ -9,9 +9,7 @@ describe('API routes', () => { before(async () => { fixture = await loadFixture({ root: './fixtures/api-route/', - experimental: { - ssr: true, - }, + output: 'server', adapter: nodejs(), }); await fixture.build();