1 package org.openecomp.sdc.asdctool.migration.main;
3 import org.apache.commons.cli.Option;
4 import org.apache.commons.cli.Options;
5 import org.openecomp.sdc.asdctool.cli.CLIToolData;
6 import org.openecomp.sdc.asdctool.cli.SpringCLITool;
7 import org.openecomp.sdc.asdctool.migration.config.MigrationSpringConfig;
8 import org.openecomp.sdc.asdctool.migration.core.SdcMigrationTool;
9 import org.slf4j.Logger;
10 import org.slf4j.LoggerFactory;
11 import org.springframework.context.support.AbstractApplicationContext;
13 public class MigrationMenu extends SpringCLITool {
15 private static final Logger LOGGER = LoggerFactory.getLogger(MigrationMenu.class);
17 public static void main(String[] args) {
18 MigrationMenu migrationMenu = new MigrationMenu();
19 CLIToolData cliToolData = migrationMenu.init(args);
20 boolean enforceAll = cliToolData.getCommandLine().hasOption("e");
21 migrationMenu.doMigrate(enforceAll, cliToolData.getSpringApplicationContext());
24 private void doMigrate(boolean enforceAll, AbstractApplicationContext context) {
25 SdcMigrationTool migrationTool = context.getBean(SdcMigrationTool.class);
26 boolean migrate = migrationTool.migrate(enforceAll);
28 LOGGER.info("migration completed successfully");
31 LOGGER.error("migration failed");
37 protected Options buildCmdLineOptions() {
38 Options options = super.buildCmdLineOptions();
39 Option enforceAll = buildEnforceAllOption();
40 options.addOption(enforceAll);
45 protected String commandName() {
46 return "sdc-migration";
49 private static Option buildEnforceAllOption() {
50 return Option.builder("e")
51 .longOpt("enforceAll")
52 .desc("enforce running all migration steps for current version")
57 protected Class<?> getSpringConfigurationClass() {
58 return MigrationSpringConfig.class;