From 2aec0b8a6f35cf3132812b69e6b458d9a403340f Mon Sep 17 00:00:00 2001 From: ewatch Date: Mon, 21 Jun 2021 18:40:17 +0200 Subject: [PATCH] adds handling for --no-drafts / --drafts cli command --- packages/astro/src/cli.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/astro/src/cli.ts b/packages/astro/src/cli.ts index 2bf6fcbe8..9f476b5be 100644 --- a/packages/astro/src/cli.ts +++ b/packages/astro/src/cli.ts @@ -27,6 +27,7 @@ interface CLIState { cmd: cliCommand; options: { projectRoot?: string; + drafts?: boolean; sitemap?: boolean; port?: number; config?: string; @@ -39,6 +40,7 @@ function resolveArgs(flags: Arguments): CLIState { const options: CLIState['options'] = { projectRoot: typeof flags.projectRoot === 'string' ? flags.projectRoot : undefined, sitemap: typeof flags.sitemap === 'boolean' ? flags.sitemap : undefined, + drafts: typeof flags.drafts === 'boolean' ? flags.drafts : undefined, port: typeof flags.port === 'number' ? flags.port : undefined, config: typeof flags.config === 'string' ? flags.config : undefined, }; @@ -76,6 +78,7 @@ function printHelp() { --config Specify the path to the Astro config file. --project-root Specify the path to the project root folder. --no-sitemap Disable sitemap generation (build only). + --no-drafts Enable generation of draft pages (build only). --reload Clean the cache, reinstalling dependencies. --verbose Enable verbose logging --version Show the version number and exit. @@ -91,8 +94,12 @@ async function printVersion() { /** Merge CLI flags & config options (CLI flags take priority) */ function mergeCLIFlags(astroConfig: AstroConfig, flags: CLIState['options']) { + console.log(JSON.stringify(flags, null, 4)); + console.log(JSON.stringify(astroConfig, null, 4)); if (typeof flags.sitemap === 'boolean') astroConfig.buildOptions.sitemap = flags.sitemap; if (typeof flags.port === 'number') astroConfig.devOptions.port = flags.port; + if (typeof flags.drafts === 'boolean') astroConfig.buildOptions.draft = flags.drafts; + console.log(JSON.stringify(astroConfig, null, 4)); } /** Handle `astro run` command */ @@ -120,6 +127,9 @@ export async function cli(args: string[]) { const flags = yargs(args); const state = resolveArgs(flags); + console.log(JSON.stringify(flags, null, 4)); + console.log(JSON.stringify(state, null, 4)); + switch (state.cmd) { case 'help': { printHelp();