diff --git a/.changeset/chilled-bobcats-repeat.md b/.changeset/chilled-bobcats-repeat.md deleted file mode 100644 index 572a82b589..0000000000 --- a/.changeset/chilled-bobcats-repeat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/cli': patch ---- - -Resolve config options against both the current directory and the monorepo root directory. diff --git a/packages/cli/src/commands/build/buildBackend.ts b/packages/cli/src/commands/build/buildBackend.ts index 5d42aa18d4..f82567de3c 100644 --- a/packages/cli/src/commands/build/buildBackend.ts +++ b/packages/cli/src/commands/build/buildBackend.ts @@ -18,6 +18,7 @@ import os from 'os'; import fs from 'fs-extra'; import { resolve as resolvePath } from 'path'; import tar, { CreateOptions } from 'tar'; +import { paths } from '../../lib/paths'; import { createDistWorkspace } from '../../lib/packager'; import { getEnvironmentParallelism } from '../../lib/parallel'; import { buildPackage, Output } from '../../lib/builder'; @@ -42,11 +43,18 @@ export async function buildBackend(options: BuildBackendOptions) { outputs: new Set([Output.cjs]), }); + const resolvedConfigPaths = configPaths?.map(p => { + let path = paths.resolveTarget(p); + if (!fs.pathExistsSync(path)) { + path = paths.resolveOwnRoot(p); + } + return path; + }); const tmpDir = await fs.mkdtemp(resolvePath(os.tmpdir(), 'backstage-bundle')); try { await createDistWorkspace([pkg.name], { targetDir: tmpDir, - configPaths, + configPaths: resolvedConfigPaths, buildDependencies: !skipBuildDependencies, buildExcludes: [pkg.name], parallelism: getEnvironmentParallelism(), diff --git a/packages/cli/src/lib/config.ts b/packages/cli/src/lib/config.ts index 9bb32fa481..a76571c3f6 100644 --- a/packages/cli/src/lib/config.ts +++ b/packages/cli/src/lib/config.ts @@ -24,7 +24,6 @@ import { paths } from './paths'; import { isValidUrl } from './urls'; import { getPackages } from '@manypkg/get-packages'; import { PackageGraph } from './monorepo'; -import { pathExistsSync } from 'fs-extra'; type Options = { args: string[]; @@ -39,11 +38,7 @@ export async function loadCliConfig(options: Options) { const configTargets: ConfigTarget[] = []; options.args.forEach(arg => { if (!isValidUrl(arg)) { - let path = paths.resolveTarget(arg); - if (!pathExistsSync(path)) { - path = paths.resolveOwnRoot(arg); - } - configTargets.push({ path }); + configTargets.push({ path: paths.resolveTarget(arg) }); } });