Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Merge requests
  • !2896

[meta] remove cli dependency

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Administrator requested to merge github/fork/jmini/remove-cli-dependency-from-meta into master May 15, 2019
  • Overview 0
  • Commits 2
  • Pipelines 0
  • Changes 8

Created by: jmini

PR checklist

  • Read the contribution guidelines.
  • Ran the shell script under ./bin/ to update Petstore sample so that CIs can verify the change. (For instance, only need to run ./bin/{LANG}-petstore.sh, ./bin/openapi3/{LANG}-petstore.sh if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates). Windows batch files can be found in .\bin\windows\. If contributing template-only or documentation-only changes which will change sample output, be sure to build the project first.
  • Filed the PR against the correct branch: master, 4.1.x, 5.0.x. Default: master.
  • Copied the technical committee to review the pull request if your PR is targeting a particular programming language.

Description of the PR

Introduced with https://github.com/OpenAPITools/openapi-generator/pull/2388, newly generated generator created with CLI command:

openapi-generator meta -n myClientCodegen -t DOCUMENTATION -p com.my.company.example -o out

has a dependency on: org.openapitools:openapi-generator-cli

See the corresponding pom in the generated samples:

https://github.com/OpenAPITools/openapi-generator/blob/cbe39ba881c42a3d70a36397c2ee504e9dfb5ca9/samples/meta-codegen/lib/pom.xml#L116-L120


Input @jimschubert on Gitter

maybe we should revert OpenAPITools/openapi-generator#2388 and provide clearer instructions on how to debug manually?


The openapi-generator-cli dependency is wrong, because the generators (normally in the org.openapitools:openapi-generator project) do not have to know the CLI project org.openapitools:openapi-generator-cli. They can be used within the openapi-generator-maven-plugin, the openapi-generator-gradle-plugin or directly. In all those cases it is without the CLI.

As described in the readme of the generated plugin, the way to add the generator to the classpath of the CLI module is like this:

java -cp /path/to/openapi-generator-cli.jar:/path/to/your.jar org.openapitools.codegen.OpenAPIGenerator generate -g myClientCodegen -i /path/to/openapi.yaml -o ./test

The intention of the PR was to be able to create a test case: DebugCodegenLauncher

https://github.com/OpenAPITools/openapi-generator/blob/cbe39ba881c42a3d70a36397c2ee504e9dfb5ca9/samples/meta-codegen/lib/src/test/java/org/openapitools/codegen/debug/DebugCodegenLauncher.java#L6-L16

This is a great idea, but I think it would be much easier to create a MyclientcodegenGeneratorTest class that call the MyclientcodegenGenerator without the openapi-generator-cli dependency.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/jmini/remove-cli-dependency-from-meta