diff --git a/lib/config/migration.ts b/lib/config/migration.ts index bd7f996119bcd8..e24431a5053dfa 100644 --- a/lib/config/migration.ts +++ b/lib/config/migration.ts @@ -174,11 +174,6 @@ export function migrateConfig( const templateIndex = val.indexOf(`{{`); migratedConfig.branchPrefix = val.substring(0, templateIndex); migratedConfig.additionalBranchPrefix = val.substring(templateIndex); - } else if (key === 'upgradeInRange') { - delete migratedConfig.upgradeInRange; - if (val === true) { - migratedConfig.rangeStrategy = 'bump'; - } } else if (key === 'versionStrategy') { delete migratedConfig.versionStrategy; if (val === 'widen') { diff --git a/lib/config/migrations/custom/upgrade-in-range-migration.spec.ts b/lib/config/migrations/custom/upgrade-in-range-migration.spec.ts new file mode 100644 index 00000000000000..af27aaeaf0939b --- /dev/null +++ b/lib/config/migrations/custom/upgrade-in-range-migration.spec.ts @@ -0,0 +1,23 @@ +import { UpgradeInRangeMigration } from './upgrade-in-range-migration'; + +describe('config/migrations/custom/upgrade-in-range-migration', () => { + it('should migrate upgradeInRange=true to rangeStrategy="bump"', () => { + expect(UpgradeInRangeMigration).toMigrate( + { + upgradeInRange: true, + }, + { + rangeStrategy: 'bump', + } + ); + }); + + it('should just remove property when upgradeInRange not equals to true', () => { + expect(UpgradeInRangeMigration).toMigrate( + { + upgradeInRange: false, + }, + {} + ); + }); +}); diff --git a/lib/config/migrations/custom/upgrade-in-range-migration.ts b/lib/config/migrations/custom/upgrade-in-range-migration.ts new file mode 100644 index 00000000000000..4a36a6d3b04692 --- /dev/null +++ b/lib/config/migrations/custom/upgrade-in-range-migration.ts @@ -0,0 +1,12 @@ +import { AbstractMigration } from '../base/abstract-migration'; + +export class UpgradeInRangeMigration extends AbstractMigration { + override readonly deprecated = true; + readonly propertyName = 'upgradeInRange'; + + override run(value): void { + if (value === true) { + this.setSafely('rangeStrategy', 'bump'); + } + } +} diff --git a/lib/config/migrations/migrations-service.ts b/lib/config/migrations/migrations-service.ts index 5286e417e5671a..7d4ff0e19290eb 100644 --- a/lib/config/migrations/migrations-service.ts +++ b/lib/config/migrations/migrations-service.ts @@ -12,6 +12,7 @@ import { RebaseStalePrsMigration } from './custom/rebase-stale-prs-migration'; import { RequiredStatusChecksMigration } from './custom/required-status-checks-migration'; import { SemanticCommitsMigration } from './custom/semantic-commits-migration'; import { TrustLevelMigration } from './custom/trust-level-migration'; +import { UpgradeInRangeMigration } from './custom/upgrade-in-range-migration'; import type { Migration, MigrationConstructor } from './types'; export class MigrationsService { @@ -51,6 +52,7 @@ export class MigrationsService { RequiredStatusChecksMigration, SemanticCommitsMigration, TrustLevelMigration, + UpgradeInRangeMigration, ]; static run(originalConfig: RenovateConfig): RenovateConfig {