Skip to content

add gradle repository for using gralde dependency in plugin #3867

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Sep 27, 2019

Conversation

fujigon
Copy link
Contributor

@fujigon fujigon commented Sep 10, 2019

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

org.gradle:gradle-tooling-api is on Gradle Releases repository (cf. https://mvnrepository.com/artifact/org.gradle/gradle-tooling-api/4.10.2)

So, we need to add this repository to pluginManagement.

Without this setting, following error will occur in some environment.

[INFO] --- gradle-maven-plugin:1.0.8:invoke (default) @ openapi-generator-gradle-plugin-mvn-wrapper ---
[WARNING] The POM for org.gradle:gradle-tooling-api:jar:4.10.2 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] openapi-generator-project .......................... SUCCESS [  3.859 s]
[INFO] openapi-generator-core ............................. SUCCESS [  3.680 s]
[INFO] openapi-generator (core library) ................... SUCCESS [ 50.943 s]
[INFO] openapi-generator (executable) ..................... SUCCESS [ 17.679 s]
[INFO] openapi-generator (maven-plugin) ................... SUCCESS [  6.745 s]
[INFO] openapi-generator-gradle-plugin (maven wrapper) .... FAILURE [  0.061 s]
[INFO] openapi-generator-online ........................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:23 min
[INFO] Finished at: 2019-09-10T05:05:53+00:00
[INFO] Final Memory: 69M/1395M
[INFO] ------------------------------------------------------------------------

(details of the change, additional tests that have been done, reference to the issue for tracking, etc)

@fujigon fujigon changed the title add gradle repository add gradle repository for using gralde plugin Sep 10, 2019
@fujigon fujigon changed the title add gradle repository for using gralde plugin add gradle repository for using gralde dependency in plugin Sep 10, 2019
@jimschubert
Copy link
Member

@fujigon what are the conditions that might cause this? Do you have a modified Maven settings.xml? And what version of Maven?

We don't really build the Gradle plugin via Maven, so it might be better to remove it and just rely on CI to report build issues in the plugin.

@wing328 any thoughts? If no concerns, we may want to merge after 4.1.2 is released. Workaround for whatever environment conditions cause this would be for the user to manually add the above configuration locally.

@fujigon
Copy link
Contributor Author

fujigon commented Sep 11, 2019

I'm still gathering the facts, please give me a moment.

@wing328 wing328 modified the milestones: 4.1.2, 4.1.3 Sep 11, 2019
@fujigon
Copy link
Contributor Author

fujigon commented Sep 12, 2019

can reproduce the error in some environments, cannot do in other environments.

Following command will reproduce the error though I found the issue while I run my complicated mvn commands for my internal package release to my private maven repository.

mvn install

I confirmed that all my trial invoke gradle-maven-plugin:1.0.8:invoke, and the error is produced by it (if error occurs).
But results varies in environments.

When succeeds, I get

[INFO] --- gradle-maven-plugin:1.0.8:invoke (default) @ openapi-generator-gradle-plugin-mvn-wrapper ---
[INFO] jvmArgs: [Ljava.lang.String;@1841d013
[INFO] gradleProjectDirectory: /mnt/c/publicgithub/openapi-generator/modules/openapi-generator-gradle-plugin
[INFO] Build
[INFO] Connecting to Gradle Daemon
...
[INFO] Task :publishPluginMavenPublicationToMavenLocal
> Task :publishMavenJavaPublicationToMavenLocal
> Task :generatePomFileForOpenApiGeneratorPluginMarkerMavenPublication[INFO] Run tasks

> Task :publishOpenApiGeneratorPluginMarkerMavenPublicationToMavenLocal
> Task :generatePomFileForPluginMavenPublication
[INFO] Task :publishToMavenLocal
[INFO] Run tasks
[INFO] Run build
[INFO] Build
[INFO] Deleting unused version-specific caches in /mnt/c/publicgithub/openapi-generator/modules/openapi-generator-gradle-plugin/.gradle
[INFO] Build
> Task :publishPluginMavenPublicationToMavenLocal
> Task :publishToMavenLocal

BUILD SUCCESSFUL in 6s
14 actionable tasks: 14 executed
[INFO]
[INFO] gradle execution complete

When fails, I get

[INFO] --- gradle-maven-plugin:1.0.8:invoke (default) @ openapi-generator-gradle-plugin-mvn-wrapper ---
[WARNING] The POM for org.gradle:gradle-tooling-api:jar:4.10.2 is missing, no dependency information available

environment 1 error occurs

(I challenged all combination, i.e. 8 patterns)

  • CentOS 6.6
  • maven 3.3.3 / maven 3.5.3
  • java 1.8.0_66, oracle / java 1.8.0_22 openjdk
  • with my local settings.xml / with no settings.xml

environment 2 error occurs

  • CentOS 6.10
  • maven 3.3.9
  • java 1.8.0_212, amazon correto
  • with my local settings.xml

environment 3 no error

  • Windows Subsystem for Linux Ubuntu 1804 on Windows 10
  • maven 3.6.0
  • java 1.8.0_222 openjdk
  • with my local settings.xml / with no settings.xml

environment 4 no error

  • Windows 10
  • maven 3.3.9 (IntelliJ build-in)
  • java 1.8.0_212, amazon correto
  • with my local settings.xml
  • command executed via IntelliJ GUI

@fujigon
Copy link
Contributor Author

fujigon commented Sep 12, 2019

@jimschubert could you please check my error environment report please? thanks! :)

@fujigon
Copy link
Contributor Author

fujigon commented Sep 26, 2019

confirmed this PR will

  • environment 1 succeeds (only limited patterns checked)
    • maven 3.5.3
    • java 1.8.0_66 oracle / java 1.8.0_222 openjdk
    • with my local settings.xml / with no settings.xml
  • environment 2 succeeds
  • environment 3 still succeeds
  • environment 4 still succeeds

Copy link
Member

@jmini jmini left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This pom file:

        <groupId>org.openapitools</groupId>
        <artifactId>openapi-generator-gradle-plugin-mvn-wrapper</artifactId>
        <version>4.1.2-SNAPSHOT</version>

Is not something we release. It is only here to trigger gradle as part of the maven build.

It does not seems to hurt to give maven an additional way to fetch the dependencies requested for one of the plugins used in this pom.

@wing328 wing328 merged commit 2664c62 into OpenAPITools:master Sep 27, 2019
jimschubert added a commit that referenced this pull request Sep 30, 2019
* master: (207 commits)
  Add missing enum processing in C++ codegen, already present for Qt5 (#3986)
  [C++] [Pistache] Removed deprecated warnings (#3985)
  [C++][Pistache] Simplified model template (#3417)
  add go oas3 petstore to ensure up-to-date (#3979)
  replace gitter with slack in the doc (#3977)
  Fix wrong variable name in LessThan and LessThanOrEqual asserts (#3971)
  #3957 - Removed hardcoded baseUrl (#3964)
  Regenerate go openapi3 samples (#3975)
  [rust] Make it easier to test rust client generator (#3543)
  Fix issue3635 (#3948)
  add gradle repository (#3867)
  [java] allow to use setArtifactVersion() programmatically (#3907)
  Add a link to DevRelCon SF 2019 (#3961)
  Add a link to a medium blog post (#3960)
  update maven-compiler-plugin version (#3956)
  fix generateAliasAsModels in default generator (#3951)
  Implement BigDecimal to Decimal in swift4 for currency data as type=string format=number (#3910)
  Add F# Functions server generator (#3933)
  [python-experimental] generate model if type != object if enums/validations exist (#2757)
  [scala] add [date-time] field to codegen unit test (#3939)
  ...
Jesse0Michael pushed a commit to Jesse0Michael/openapi-generator that referenced this pull request Oct 3, 2019
jimschubert added a commit that referenced this pull request Oct 4, 2019
* master: (110 commits)
  [golang] Regenerate all go samples  (#3988)
  Better tests for string (number) (#3953)
  Add missing enum processing in C++ codegen, already present for Qt5 (#3986)
  [C++] [Pistache] Removed deprecated warnings (#3985)
  [C++][Pistache] Simplified model template (#3417)
  add go oas3 petstore to ensure up-to-date (#3979)
  replace gitter with slack in the doc (#3977)
  Fix wrong variable name in LessThan and LessThanOrEqual asserts (#3971)
  #3957 - Removed hardcoded baseUrl (#3964)
  Regenerate go openapi3 samples (#3975)
  [rust] Make it easier to test rust client generator (#3543)
  Fix issue3635 (#3948)
  add gradle repository (#3867)
  [java] allow to use setArtifactVersion() programmatically (#3907)
  Add a link to DevRelCon SF 2019 (#3961)
  Add a link to a medium blog post (#3960)
  update maven-compiler-plugin version (#3956)
  fix generateAliasAsModels in default generator (#3951)
  Implement BigDecimal to Decimal in swift4 for currency data as type=string format=number (#3910)
  Add F# Functions server generator (#3933)
  ...
@wing328
Copy link
Member

wing328 commented Oct 4, 2019

@fujigon thanks for the PR, which has been included in the v4.1.3 release: https://twitter.com/oas_generator/status/1180123829626003456

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants