docs: private static Options constructOptions() {
      Options options = new Options();
  
      Option topName = Option.builder("t")
          .desc("Name of the topology")
          .longOpt("topologyname")
          .hasArgs()
          .argName("topologyname")
          .required()
          .build();
  
      Option topId = Option.builder("i")
          .desc("Id of the topology")
          .longOpt("topologyid")
          .hasArgs()
          .argName("topologyid")
          .required()
          .build();
  
      Option ckptMgrId = Option.builder("c")
          .desc("Id of the checkpoint manager")
          .longOpt("ckptmgrid")
          .hasArgs()
          .argName("ckptmgrid")
          .required()
          .build();
  
      Option ckptMgrPort = Option.builder("p")
          .desc("Port of the checkpoint manager")
          .longOpt("ckptmgrport")
          .hasArgs()
          .argName("ckptmgrport")
          .required()
          .build();
  
      Option ckptMgrConfig = Option.builder("f")
          .desc("Config name of the checkpoint manager")
          .longOpt("ckptmgrconfig")
          .hasArgs()
          .argName("ckptmgrconfig")
          .required()
          .build();
  
      Option ckptMgrOverridenConfig = Option.builder("o")
          .desc("Config name of the checkpoint manager")
          .longOpt("ckptMgrOverridenConfig")
          .hasArgs()
          .argName("ckptMgrOverridenConfig")
          .build();
  
      Option heronInternalConfig = Option.builder("g")
          .desc("Heron internal config filename")
          .longOpt("heroninternalconfig")
          .hasArgs()
          .argName("heroninternalconfig")
          .required()
          .build();
  
      options.addOption(topName);
      options.addOption(topId);
      options.addOption(ckptMgrId);
      options.addOption(ckptMgrPort);
      options.addOption(ckptMgrConfig);
      options.addOption(ckptMgrOverridenConfig);
      options.addOption(heronInternalConfig);
  
      return options;
    }