Skip to content

Commit

Permalink
improvement: allow specifying if taking major in flag (#3958)
Browse files Browse the repository at this point in the history
  • Loading branch information
armandobelardo authored Jul 1, 2024
1 parent a0b969b commit 1399cc9
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 6 deletions.
12 changes: 10 additions & 2 deletions packages/cli/cli/src/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -682,6 +682,12 @@ function addUpgradeGeneratorCommand(cli: Argv<GlobalCliOptions>, cliContext: Cli
string: true,
description:
"The API to upgrade the generator for. If not specified, the generator will be upgraded for all APIs."
})
.option("include-major", {
boolean: true,
default: false,
description:
"Whether or not to include major versions within the upgrade. Defaults to false, meaning major versions will be skipped."
}),
async (argv) => {
cliContext.instrumentPostHogEvent({
Expand All @@ -690,7 +696,8 @@ function addUpgradeGeneratorCommand(cli: Argv<GlobalCliOptions>, cliContext: Cli
generator: argv.generator,
version: argv.version,
api: argv.api,
group: argv.group
group: argv.group,
includeMajor: argv.includeMajor
}
});
await upgradeGenerator({
Expand All @@ -700,7 +707,8 @@ function addUpgradeGeneratorCommand(cli: Argv<GlobalCliOptions>, cliContext: Cli
project: await loadProjectAndRegisterWorkspacesWithContext(cliContext, {
commandLineApiWorkspace: argv.api,
defaultToAllApiWorkspaces: true
})
}),
includeMajor: argv.includeMajor
});
}
);
Expand Down
13 changes: 9 additions & 4 deletions packages/cli/cli/src/commands/upgrade/upgradeGenerator.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,14 @@ export async function loadAndUpdateGenerators({
absolutePathToWorkspace,
context,
generatorFilter,
groupFilter
groupFilter,
includeMajor
}: {
absolutePathToWorkspace: AbsoluteFilePath;
context: TaskContext;
generatorFilter: string | undefined;
groupFilter: string | undefined;
includeMajor: boolean;
}): Promise<string | undefined> {
const filepath = generatorsYml.getPathToGeneratorsConfiguration({ absolutePathToWorkspace });
if (!(await doesPathExist(filepath))) {
Expand Down Expand Up @@ -91,7 +93,7 @@ export async function loadAndUpdateGenerators({
// check if the versions have the same major version, if not fail, if yes do the upgrade
const currentMajor = semver.major(currentVersion);
const latestMajor = semver.major(latestVersion);
if (currentMajor === latestMajor) {
if (currentMajor === latestMajor || includeMajor) {
generator.set("version", latestVersion);
context.logger.info(chalk.green(`${generatorName} has been upgraded to latest in group: ${groupName}`));
}
Expand All @@ -105,12 +107,14 @@ export async function upgradeGenerator({
cliContext,
generator,
group,
project: { apiWorkspaces }
project: { apiWorkspaces },
includeMajor
}: {
cliContext: CliContext;
generator: string | undefined;
group: string | undefined;
project: Project;
includeMajor: boolean;
}): Promise<void> {
await Promise.all(
apiWorkspaces.map(async (workspace) => {
Expand All @@ -134,7 +138,8 @@ export async function upgradeGenerator({
absolutePathToWorkspace: workspace.absoluteFilepath,
context,
generatorFilter: generator,
groupFilter: group
groupFilter: group,
includeMajor
});

if (updatedConfiguration != null) {
Expand Down

0 comments on commit 1399cc9

Please sign in to comment.