@paradigma-inc/flywheel 0.1.146 → 0.1.147
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/help-metadata.js +14 -13
- package/src/runtime/vendor/flywheel-cli-dist/commands/help-metadata.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/help.js +19 -12
- package/src/runtime/vendor/flywheel-cli-dist/commands/help.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/http/client.js +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/http/client.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/main.js +99 -180
- package/src/runtime/vendor/flywheel-cli-dist/main.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/runtime-auth.js +112 -0
- package/src/runtime/vendor/flywheel-cli-dist/runtime-auth.js.map +1 -0
- package/src/runtime/vendor/manifest.json +3 -1
- package/src/unified-cli.mjs +189 -193
|
@@ -5,12 +5,11 @@ import os from "node:os";
|
|
|
5
5
|
import { resolve } from "node:path";
|
|
6
6
|
import { pathToFileURL } from "node:url";
|
|
7
7
|
import { processStdoutIsPipe, writeCredentialStream } from "./credential-output.js";
|
|
8
|
-
import { loadFlywheelConfig, saveFlywheelConfig, FlywheelConfigError, resolveFlywheelConfigPath, } from "./config/index.js";
|
|
9
|
-
import { baseUrlsEqual } from "./auth/baseurl.js";
|
|
8
|
+
import { loadFlywheelConfig, saveFlywheelConfig, FlywheelConfigError, resolveFlywheelConfigPath, inspectFlywheelConfig, } from "./config/index.js";
|
|
10
9
|
import { CredentialStoreError, readCredential, resolveCredentialFilePath, } from "./auth/credentials.js";
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
10
|
+
import { ADMIN_DISCOVERY_VERIFICATION_ERROR, renderCommandHelp, renderCommandHelpAsJson, renderHelp, renderHelpAsJson, } from "./commands/help.js";
|
|
11
|
+
import { adminAuthRequestOptions, adminKeyFromEnv, } from "./commands/_admin-auth.js";
|
|
12
|
+
import { activeCredentialIsApiKey } from "./commands/auth-mode.js";
|
|
14
13
|
import { renderUsageSpec } from "./commands/usage-spec.js";
|
|
15
14
|
import { getCommandByName } from "./commands/registry.js";
|
|
16
15
|
import { MVP_COMMAND_HANDLERS } from "./commands/index.js";
|
|
@@ -31,7 +30,8 @@ import { maskSensitiveForOutput } from "./http/debug.js";
|
|
|
31
30
|
import { renderOutput } from "./output/format.js";
|
|
32
31
|
import { CLI_VERSION } from "./version.js";
|
|
33
32
|
import { LocalRepositoryAdapter } from "./local/adapter.js";
|
|
34
|
-
|
|
33
|
+
import { DEFAULT_BASE_URL, resolveRuntimeAuthConfig, resolveRuntimeProfile, selectedRuntimeProfileName, } from "./runtime-auth.js";
|
|
34
|
+
import { RUNTIME_ALIASES } from "./commands/aliases.js";
|
|
35
35
|
function defaultStdout(chunk) {
|
|
36
36
|
process.stdout.write(chunk);
|
|
37
37
|
}
|
|
@@ -69,80 +69,6 @@ function emitRetiredCommandName(command, argv, stderr) {
|
|
|
69
69
|
}
|
|
70
70
|
return 1;
|
|
71
71
|
}
|
|
72
|
-
function activeBuiltinFromConfig(config) {
|
|
73
|
-
const rawName = config.activeProfile;
|
|
74
|
-
if (typeof rawName !== "string" ||
|
|
75
|
-
!rawName.trim() ||
|
|
76
|
-
!isBuiltinProfileName(rawName.trim())) {
|
|
77
|
-
return { name: undefined, baseUrl: undefined };
|
|
78
|
-
}
|
|
79
|
-
const name = rawName.trim();
|
|
80
|
-
return { name, baseUrl: resolveBuiltinBaseUrl(name) };
|
|
81
|
-
}
|
|
82
|
-
function assertRepositoryTransportOrigin(baseUrl) {
|
|
83
|
-
let parsed;
|
|
84
|
-
try {
|
|
85
|
-
parsed = new URL(baseUrl);
|
|
86
|
-
}
|
|
87
|
-
catch {
|
|
88
|
-
throw new CliHttpError("repository remotes require HTTPS or loopback HTTP", EXIT_TRANSPORT);
|
|
89
|
-
}
|
|
90
|
-
const loopbackHttp = parsed.protocol === "http:" &&
|
|
91
|
-
["localhost", "127.0.0.1", "[::1]", "::1"].includes(parsed.hostname.toLowerCase());
|
|
92
|
-
if (parsed.protocol === "https:" || loopbackHttp)
|
|
93
|
-
return;
|
|
94
|
-
throw new CliHttpError("repository remotes require HTTPS or loopback HTTP", EXIT_TRANSPORT);
|
|
95
|
-
}
|
|
96
|
-
async function resolveRuntimeAuthConfig(config, profile, resolveEnvApiKey, resolveCredentialFile, credentialLookupEnabled, readStoredCredential, repositoryRemote = false) {
|
|
97
|
-
const envBaseUrl = process.env.FLYWHEEL_BASE_URL?.trim();
|
|
98
|
-
const activeBuiltin = activeBuiltinFromConfig(config);
|
|
99
|
-
const activeProfile = typeof config.activeProfile === "string" && config.activeProfile.trim()
|
|
100
|
-
? config.activeProfile.trim()
|
|
101
|
-
: undefined;
|
|
102
|
-
const baseUrl = envBaseUrl || profile?.baseUrl || activeBuiltin.baseUrl || DEFAULT_BASE_URL;
|
|
103
|
-
if (repositoryRemote)
|
|
104
|
-
assertRepositoryTransportOrigin(baseUrl);
|
|
105
|
-
const credentialProfile = profile?.name ?? activeBuiltin.name ?? activeProfile ?? "default";
|
|
106
|
-
const credentialBaseUrl = profile?.baseUrl ?? activeBuiltin.baseUrl ??
|
|
107
|
-
(credentialProfile === "default" ? baseUrl : DEFAULT_BASE_URL);
|
|
108
|
-
const environmentApiKey = process.env.FLYWHEEL_API_KEY?.trim() || undefined;
|
|
109
|
-
if (repositoryRemote &&
|
|
110
|
-
environmentApiKey &&
|
|
111
|
-
(!envBaseUrl || !baseUrlsEqual(baseUrl, envBaseUrl))) {
|
|
112
|
-
throw new CliHttpError("credential_store_unavailable", EXIT_TRANSPORT);
|
|
113
|
-
}
|
|
114
|
-
let apiKey = environmentApiKey;
|
|
115
|
-
if (!apiKey &&
|
|
116
|
-
profile?.apiKeyEnv &&
|
|
117
|
-
profile.baseUrl &&
|
|
118
|
-
baseUrlsEqual(baseUrl, profile.baseUrl)) {
|
|
119
|
-
apiKey = resolveEnvApiKey(profile.apiKeyEnv);
|
|
120
|
-
}
|
|
121
|
-
let credentialReadiness;
|
|
122
|
-
if (apiKey || !credentialLookupEnabled) {
|
|
123
|
-
credentialReadiness = "not_checked";
|
|
124
|
-
}
|
|
125
|
-
else if (baseUrlsEqual(baseUrl, credentialBaseUrl)) {
|
|
126
|
-
const storedCredential = await readStoredCredential(credentialProfile, credentialBaseUrl, resolveCredentialFile());
|
|
127
|
-
credentialReadiness = storedCredential ? "ready" : "missing";
|
|
128
|
-
apiKey = storedCredential ?? undefined;
|
|
129
|
-
}
|
|
130
|
-
else {
|
|
131
|
-
credentialReadiness = "not_checked";
|
|
132
|
-
}
|
|
133
|
-
if (repositoryRemote && !apiKey) {
|
|
134
|
-
throw new CliHttpError("credential_store_unavailable", EXIT_TRANSPORT);
|
|
135
|
-
}
|
|
136
|
-
return {
|
|
137
|
-
baseUrl,
|
|
138
|
-
credentialBaseUrl: environmentApiKey
|
|
139
|
-
? baseUrl
|
|
140
|
-
: credentialBaseUrl,
|
|
141
|
-
apiKey,
|
|
142
|
-
credentialReadiness,
|
|
143
|
-
defaultFormat: profile?.defaultFormat,
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
72
|
const HELP_TOKENS = new Set(["--help", "-h"]);
|
|
147
73
|
const USAGE_TOKENS = new Set(["--usage", "--usage-spec"]);
|
|
148
74
|
const SCHEMA_TOKEN = "--schema";
|
|
@@ -379,19 +305,16 @@ function parseHelpFormat(argv) {
|
|
|
379
305
|
return result;
|
|
380
306
|
}
|
|
381
307
|
/**
|
|
382
|
-
* Strip
|
|
383
|
-
*
|
|
384
|
-
* format global. Callers must validate the format value via parseHelpFormat
|
|
385
|
-
* before calling this — unsupported values should surface as usage errors,
|
|
386
|
-
* not be silently dropped.
|
|
308
|
+
* Strip format and environment options so their values cannot become command
|
|
309
|
+
* names. Callers must validate options via resolveHelpOptions first.
|
|
387
310
|
*/
|
|
388
|
-
function
|
|
311
|
+
function stripHelpOptionTokens(argv) {
|
|
389
312
|
const out = [];
|
|
390
313
|
for (let i = 0; i < argv.length; i += 1) {
|
|
391
314
|
const token = argv[i];
|
|
392
|
-
if (token.startsWith("--format="))
|
|
315
|
+
if (token.startsWith("--format=") || token.startsWith("--env="))
|
|
393
316
|
continue;
|
|
394
|
-
if (token === "--format") {
|
|
317
|
+
if (token === "--format" || token === "--env") {
|
|
395
318
|
i += 1; // skip the value
|
|
396
319
|
continue;
|
|
397
320
|
}
|
|
@@ -421,9 +344,9 @@ function renderAliasesHelp() {
|
|
|
421
344
|
.map(([aliasCommand, canonicalCommand]) => ` ${aliasCommand} → ${canonicalCommand}`)
|
|
422
345
|
.join("\n")}\n`;
|
|
423
346
|
}
|
|
424
|
-
function emitCommandHelp(stdout, stderr, commandName, schema, asJson) {
|
|
347
|
+
function emitCommandHelp(stdout, stderr, commandName, schema, asJson, adminDiscovery) {
|
|
425
348
|
if (asJson) {
|
|
426
|
-
const payload = renderCommandHelpAsJson(commandName);
|
|
349
|
+
const payload = renderCommandHelpAsJson(commandName, { adminDiscovery });
|
|
427
350
|
const parsed = JSON.parse(payload);
|
|
428
351
|
if (parsed.error) {
|
|
429
352
|
writeLine(stderr, parsed.error);
|
|
@@ -432,8 +355,9 @@ function emitCommandHelp(stdout, stderr, commandName, schema, asJson) {
|
|
|
432
355
|
stdout(payload);
|
|
433
356
|
return 0;
|
|
434
357
|
}
|
|
435
|
-
const helpText = renderCommandHelp(commandName, { schema });
|
|
436
|
-
if (helpText.startsWith("unknown command:")
|
|
358
|
+
const helpText = renderCommandHelp(commandName, { schema, adminDiscovery });
|
|
359
|
+
if (helpText.startsWith("unknown command:") ||
|
|
360
|
+
helpText.trim() === ADMIN_DISCOVERY_VERIFICATION_ERROR) {
|
|
437
361
|
writeLine(stderr, helpText.trim());
|
|
438
362
|
return 1;
|
|
439
363
|
}
|
|
@@ -644,6 +568,47 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
644
568
|
}));
|
|
645
569
|
return 0;
|
|
646
570
|
}
|
|
571
|
+
const resolveConfigPath = () => dependencies.configPath ??
|
|
572
|
+
(dependencies.resolveConfigPath ?? resolveFlywheelConfigPath)();
|
|
573
|
+
const loadConfig = dependencies.loadConfig ??
|
|
574
|
+
(dependencies.configPath
|
|
575
|
+
? (filePath) => loadFlywheelConfig({
|
|
576
|
+
env: { ...process.env, FLYWHEEL_CLI_CONFIG_PATH: filePath },
|
|
577
|
+
})
|
|
578
|
+
: async () => loadFlywheelConfig());
|
|
579
|
+
const configExists = dependencies.configExists ?? defaultConfigExists;
|
|
580
|
+
const saveConfig = dependencies.saveConfig ??
|
|
581
|
+
(async (filePath, config) => saveFlywheelConfig(config, filePath));
|
|
582
|
+
const resolveEnvApiKey = dependencies.resolveEnvApiKey ??
|
|
583
|
+
((envVar) => process.env[envVar]?.trim() || undefined);
|
|
584
|
+
let credentialFile = dependencies.credentialFile;
|
|
585
|
+
const resolveCredentialFile = () => credentialFile ??= resolveCredentialFilePath();
|
|
586
|
+
async function resolveHelpAdminDiscovery(environment) {
|
|
587
|
+
try {
|
|
588
|
+
const config = await (dependencies.loadConfig ?? inspectFlywheelConfig)(resolveConfigPath()) ?? { schemaVersion: 1 };
|
|
589
|
+
const profile = resolveRuntimeProfile(config, environment);
|
|
590
|
+
const runtimeConfig = await resolveRuntimeAuthConfig(config, profile, resolveEnvApiKey, resolveCredentialFile, true, dependencies.readCredential ?? readCredential);
|
|
591
|
+
if (!adminKeyFromEnv() &&
|
|
592
|
+
(!runtimeConfig.apiKey || activeCredentialIsApiKey(runtimeConfig.apiKey))) {
|
|
593
|
+
return false;
|
|
594
|
+
}
|
|
595
|
+
const client = (dependencies.createHttpClient ?? createHttpClient)({
|
|
596
|
+
baseUrl: runtimeConfig.baseUrl,
|
|
597
|
+
apiKey: runtimeConfig.apiKey,
|
|
598
|
+
cliVersion: CLI_VERSION,
|
|
599
|
+
commandName: "help",
|
|
600
|
+
retryEnabled: false,
|
|
601
|
+
timeoutMs: 10_000,
|
|
602
|
+
});
|
|
603
|
+
const response = await client.requestJson("GET", "/auth/admin-status", adminAuthRequestOptions(runtimeConfig.apiKey));
|
|
604
|
+
return (response !== null &&
|
|
605
|
+
typeof response === "object" &&
|
|
606
|
+
response.is_admin === true);
|
|
607
|
+
}
|
|
608
|
+
catch {
|
|
609
|
+
return false;
|
|
610
|
+
}
|
|
611
|
+
}
|
|
647
612
|
const usagePrivateFlag = argv.find((token) => token.startsWith(USAGE_EXTRAS_PREFIX) ||
|
|
648
613
|
token.startsWith(USAGE_VERSION_PREFIX));
|
|
649
614
|
if (usagePrivateFlag !== undefined) {
|
|
@@ -656,23 +621,40 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
656
621
|
// below. Non-help commands let `parseCliArgs` validate --format against the
|
|
657
622
|
// full json|tsv|csv|table set; validating here would reject legitimate
|
|
658
623
|
// runtime formats like `flywheel hosted:node:list --format=csv`.
|
|
659
|
-
function
|
|
624
|
+
function resolveHelpOptions(params) {
|
|
660
625
|
const fmt = parseHelpFormat(argv);
|
|
661
626
|
if (fmt.kind === "invalid") {
|
|
662
627
|
writeLine(stderr, `invalid --format=${fmt.value}: help supports --format=json or no --format (text)`);
|
|
663
628
|
return EXIT_USAGE;
|
|
664
629
|
}
|
|
665
|
-
|
|
630
|
+
if (!params) {
|
|
631
|
+
const parsed = parseCliArgs(["help", ...stripHelpExtras(argv.slice(1))], argv.length, GLOBAL_BOOLEAN_FLAG_NAMES);
|
|
632
|
+
if (!parsed.ok) {
|
|
633
|
+
writeLine(stderr, parsed.message);
|
|
634
|
+
return parsed.exitCode;
|
|
635
|
+
}
|
|
636
|
+
params = parsed.params;
|
|
637
|
+
}
|
|
638
|
+
try {
|
|
639
|
+
const environment = params.env === undefined
|
|
640
|
+
? undefined
|
|
641
|
+
: extractGlobals({ env: params.env }).globals.env;
|
|
642
|
+
return { json: fmt.kind === "json", environment };
|
|
643
|
+
}
|
|
644
|
+
catch (error) {
|
|
645
|
+
if (!(error instanceof CliUsageError))
|
|
646
|
+
throw error;
|
|
647
|
+
writeLine(stderr, error.message);
|
|
648
|
+
return error.exitCode;
|
|
649
|
+
}
|
|
666
650
|
}
|
|
667
|
-
//
|
|
668
|
-
//
|
|
669
|
-
// they'd fail COMMAND_TOKEN_PATTERN and return "unknown command" if we
|
|
670
|
-
// let the parser run first. Per-command help (`flywheel <cmd> --help`,
|
|
651
|
+
// Normalize top-level help aliases to the canonical help command for option
|
|
652
|
+
// parsing. Per-command help (`flywheel <cmd> --help`,
|
|
671
653
|
// `flywheel <cmd> --schema --help`) is detected AFTER parseCliArgs binds
|
|
672
654
|
// values to flags, so a call like `profile:set --name -h --base_url ...`
|
|
673
655
|
// does not incorrectly drop into help mode on the `-h` value token.
|
|
674
656
|
if (isHelpToken(first)) {
|
|
675
|
-
const resolved =
|
|
657
|
+
const resolved = resolveHelpOptions();
|
|
676
658
|
if (typeof resolved === "number")
|
|
677
659
|
return resolved;
|
|
678
660
|
const extrasParsed = parseHelpExtras(argv);
|
|
@@ -681,16 +663,18 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
681
663
|
return EXIT_USAGE;
|
|
682
664
|
}
|
|
683
665
|
const extras = extrasParsed.kind === "ok" ? extrasParsed.extras : [];
|
|
684
|
-
|
|
666
|
+
const adminDiscovery = await resolveHelpAdminDiscovery(resolved.environment);
|
|
667
|
+
stdout(resolved.json
|
|
668
|
+
? renderHelpAsJson(extras, { adminDiscovery })
|
|
669
|
+
: renderHelp(extras, { adminDiscovery }));
|
|
685
670
|
return 0;
|
|
686
671
|
}
|
|
687
672
|
if (first === "help") {
|
|
688
|
-
const resolved =
|
|
673
|
+
const resolved = resolveHelpOptions();
|
|
689
674
|
if (typeof resolved === "number")
|
|
690
675
|
return resolved;
|
|
691
|
-
// Strip
|
|
692
|
-
|
|
693
|
-
const { commandArgs: helpArgs, schema, aliases, } = normalizeCommandHelpArgs(stripHelpExtras(stripFormatTokens(rest)));
|
|
676
|
+
// Strip help globals so their values cannot become a command name.
|
|
677
|
+
const { commandArgs: helpArgs, schema, aliases, } = normalizeCommandHelpArgs(stripHelpExtras(stripHelpOptionTokens(rest)));
|
|
694
678
|
const extrasParsed = parseHelpExtras(argv);
|
|
695
679
|
if (extrasParsed.kind === "invalid") {
|
|
696
680
|
writeLine(stderr, "invalid --_help_extras payload");
|
|
@@ -706,17 +690,16 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
706
690
|
}
|
|
707
691
|
if (helpArgs.length === 0) {
|
|
708
692
|
const extras = extrasParsed.kind === "ok" ? extrasParsed.extras : [];
|
|
709
|
-
|
|
693
|
+
const adminDiscovery = await resolveHelpAdminDiscovery(resolved.environment);
|
|
694
|
+
stdout(resolved.json
|
|
695
|
+
? renderHelpAsJson(extras, { adminDiscovery })
|
|
696
|
+
: renderHelp(extras, { adminDiscovery }));
|
|
710
697
|
return 0;
|
|
711
698
|
}
|
|
712
|
-
// --_help_extras is only valid on top-level help. Surface mis-use
|
|
713
|
-
// as a usage error rather than silently ignoring it.
|
|
714
699
|
if (extrasParsed.kind === "ok") {
|
|
715
700
|
writeLine(stderr, "unknown flag: --_help_extras");
|
|
716
701
|
return EXIT_USAGE;
|
|
717
702
|
}
|
|
718
|
-
// `help <alias>` must resolve the same alias map used by the SHORTCUTS
|
|
719
|
-
// section so advertised shortcuts get executable help pages.
|
|
720
703
|
const rawCommandName = helpArgs[0];
|
|
721
704
|
const commandName = Object.prototype.hasOwnProperty.call(RUNTIME_ALIASES, rawCommandName)
|
|
722
705
|
? RUNTIME_ALIASES[rawCommandName]
|
|
@@ -724,7 +707,7 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
724
707
|
const retiredExitCode = emitRetiredCommandName(commandName, argv, stderr);
|
|
725
708
|
if (retiredExitCode !== undefined)
|
|
726
709
|
return retiredExitCode;
|
|
727
|
-
return emitCommandHelp(stdout, stderr, commandName, schema, resolved.json);
|
|
710
|
+
return emitCommandHelp(stdout, stderr, commandName, schema, resolved.json, await resolveHelpAdminDiscovery(resolved.environment));
|
|
728
711
|
}
|
|
729
712
|
// --_help_extras is reserved for top-level help dispatch only. Reject it
|
|
730
713
|
// when seen on any other command path so it cannot leak into runtime
|
|
@@ -761,10 +744,10 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
761
744
|
const helpRequested = parsed.params.help === true || parsed.params.h === true;
|
|
762
745
|
const schemaRequested = parsed.params.schema === true;
|
|
763
746
|
if (helpRequested) {
|
|
764
|
-
const resolved =
|
|
747
|
+
const resolved = resolveHelpOptions(parsed.params);
|
|
765
748
|
if (typeof resolved === "number")
|
|
766
749
|
return resolved;
|
|
767
|
-
return emitCommandHelp(stdout, stderr, parsed.command, schemaRequested, resolved.json);
|
|
750
|
+
return emitCommandHelp(stdout, stderr, parsed.command, schemaRequested, resolved.json, await resolveHelpAdminDiscovery(resolved.environment));
|
|
768
751
|
}
|
|
769
752
|
if (schemaRequested && parsed.command !== "repo:node:create") {
|
|
770
753
|
writeLine(stderr, "--schema is only valid with --help");
|
|
@@ -818,70 +801,12 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
818
801
|
}
|
|
819
802
|
return 0;
|
|
820
803
|
}
|
|
821
|
-
const configPath =
|
|
822
|
-
(dependencies.resolveConfigPath ?? resolveFlywheelConfigPath)();
|
|
823
|
-
const loadConfig = dependencies.loadConfig ??
|
|
824
|
-
(dependencies.configPath
|
|
825
|
-
? (filePath) => loadFlywheelConfig({
|
|
826
|
-
env: { ...process.env, FLYWHEEL_CLI_CONFIG_PATH: filePath },
|
|
827
|
-
})
|
|
828
|
-
: async () => loadFlywheelConfig());
|
|
829
|
-
const configExists = dependencies.configExists ?? defaultConfigExists;
|
|
830
|
-
const saveConfig = dependencies.saveConfig ??
|
|
831
|
-
(async (filePath, config) => saveFlywheelConfig(config, filePath));
|
|
832
|
-
const resolveEnvApiKey = dependencies.resolveEnvApiKey ??
|
|
833
|
-
((envVar) => process.env[envVar]?.trim() || undefined);
|
|
804
|
+
const configPath = resolveConfigPath();
|
|
834
805
|
const config = await loadConfig(configPath);
|
|
835
806
|
const runtimeConfigExists = dependencies.loadConfig === undefined
|
|
836
807
|
? await configExists(configPath)
|
|
837
808
|
: true;
|
|
838
|
-
|
|
839
|
-
// (prod / staging). Built-ins synthesise a minimal Profile so the rest of
|
|
840
|
-
// the pipeline (base URL resolution and per-profile keychain lookups) treats
|
|
841
|
-
// them uniformly. The built-in base URL is the runtime source of truth
|
|
842
|
-
// (never written to config.toml); `--env=<builtin>` selects it for one call
|
|
843
|
-
// without mutating disk state.
|
|
844
|
-
let profile = null;
|
|
845
|
-
if (globals.env) {
|
|
846
|
-
// Built-in names (`prod` / `staging`) are reserved and must always
|
|
847
|
-
// resolve to `BUILTIN_PROFILES`. Checking built-ins BEFORE the
|
|
848
|
-
// TOML loader prevents a stray `profiles/staging.toml` (e.g. left
|
|
849
|
-
// over from manual setup before built-ins existed) from silently
|
|
850
|
-
// shadowing the built-in and routing requests — and, via the
|
|
851
|
-
// per-profile key lookup in `resolveRuntimeAuthConfig`, stored
|
|
852
|
-
// credentials — to an unintended origin. `env:switch` enforces
|
|
853
|
-
// the same reservation; resolving built-ins first keeps
|
|
854
|
-
// `--env=<name>` and `env:switch --name <name>` in lockstep.
|
|
855
|
-
if (isBuiltinProfileName(globals.env)) {
|
|
856
|
-
const builtinBaseUrl = resolveBuiltinBaseUrl(globals.env);
|
|
857
|
-
if (builtinBaseUrl) {
|
|
858
|
-
profile = { name: globals.env, baseUrl: builtinBaseUrl };
|
|
859
|
-
}
|
|
860
|
-
}
|
|
861
|
-
else {
|
|
862
|
-
const fromToml = config.profiles && Object.hasOwn(config.profiles, globals.env)
|
|
863
|
-
? { name: globals.env, ...config.profiles[globals.env] }
|
|
864
|
-
: null;
|
|
865
|
-
if (fromToml) {
|
|
866
|
-
profile = fromToml;
|
|
867
|
-
}
|
|
868
|
-
if (!profile) {
|
|
869
|
-
const available = BUILTIN_PROFILE_NAMES.join(", ");
|
|
870
|
-
throw new CliUsageError(`unknown profile: ${globals.env}. Built-in profiles: ${available}`);
|
|
871
|
-
}
|
|
872
|
-
}
|
|
873
|
-
}
|
|
874
|
-
if (!profile &&
|
|
875
|
-
config.activeProfile &&
|
|
876
|
-
!isBuiltinProfileName(config.activeProfile)) {
|
|
877
|
-
const active = config.profiles && Object.hasOwn(config.profiles, config.activeProfile)
|
|
878
|
-
? config.profiles[config.activeProfile]
|
|
879
|
-
: undefined;
|
|
880
|
-
if (active)
|
|
881
|
-
profile = { name: config.activeProfile, ...active };
|
|
882
|
-
}
|
|
883
|
-
let credentialFile = dependencies.credentialFile;
|
|
884
|
-
const resolveCredentialFile = () => credentialFile ??= resolveCredentialFilePath();
|
|
809
|
+
const profile = resolveRuntimeProfile(config, globals.env);
|
|
885
810
|
if (dependencies.loadConfig === undefined &&
|
|
886
811
|
!RUNTIME_CONFIG_OPTIONAL_COMMANDS.includes(commandName)) {
|
|
887
812
|
// Env-only execution (CI/containers, scripted health checks) and
|
|
@@ -910,10 +835,7 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
910
835
|
profile !== null ||
|
|
911
836
|
Boolean(process.env.FLYWHEEL_BASE_URL?.trim());
|
|
912
837
|
const runtimeConfig = await resolveRuntimeAuthConfig(config, profile, resolveEnvApiKey, resolveCredentialFile, !CREDENTIAL_LOOKUP_SKIPPED_COMMANDS.includes(commandName), dependencies.readCredential ?? readCredential, localRepositoryRemoteCommand);
|
|
913
|
-
const selectedProfileName = profile
|
|
914
|
-
(typeof config.activeProfile === "string" && config.activeProfile.trim()
|
|
915
|
-
? config.activeProfile.trim()
|
|
916
|
-
: "default");
|
|
838
|
+
const selectedProfileName = selectedRuntimeProfileName(config, profile);
|
|
917
839
|
missingCredentialRemediation = runtimeConfig.apiKey
|
|
918
840
|
? undefined
|
|
919
841
|
: selectedProfileName === "default"
|
|
@@ -981,10 +903,7 @@ export async function runCli(argv, dependencies = {}) {
|
|
|
981
903
|
? {
|
|
982
904
|
client,
|
|
983
905
|
baseUrl: runtimeConfig.baseUrl,
|
|
984
|
-
profile:
|
|
985
|
-
(typeof config.activeProfile === "string" && config.activeProfile.trim()
|
|
986
|
-
? config.activeProfile.trim()
|
|
987
|
-
: "default"),
|
|
906
|
+
profile: selectedProfileName,
|
|
988
907
|
}
|
|
989
908
|
: undefined;
|
|
990
909
|
const localAdapter = localRepositoryCommand
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|