code: public void generate(GenRepoInfoFileConfiguration configuration) throws AppEngineException {
      List<String> arguments = new ArrayList<>();
  
      arguments.add("beta");
      arguments.add("debug");
      arguments.add("source");
      arguments.add("gen-repo-info-file");
      arguments.addAll(GcloudArgs.get("output-directory", configuration.getOutputDirectory()));
      arguments.addAll(GcloudArgs.get("source-directory", configuration.getSourceDirectory()));
  
      try {
        runner.run(arguments, null);
      } catch (ProcessHandlerException | IOException ex) {
        throw new AppEngineException(ex);
      }
    }
docs: Generates source context files.
  
  <p>It is possible for the process to return an error code. In that case, no exception is
  thrown, but the code must be caught with a {@link
  com.google.cloud.tools.appengine.operations.cloudsdk.process.ProcessExitListener} attached to
  the {@link CloudSdk} object used to run the command.
  
  @param configuration contains the source and output directories
  @throws AppEngineException when there is an issue running the gcloud process