Skip to content

Commit b6b8c0d

Browse files
jimschubertwing328
authored andcommitted
[gradle-plugin] Initial implementation (#162)
* [gradle-plugin] Initial commit * Clarify comments on file constraints When a user sets the models, apis, or supportingFiles environment variables, any one of these being set disables generation for the other two. This could be confusing to users, so I've added some clarification text in the comments for these properties. In addition, I've cleaned up the extension on Property.ifNotEmpty, to avoid using Suppress annotations where it's not necessary. The change creates a local variable of type T?, allowing Kotlin to track the variable's nullable state at compile time. * Move gradle plugin under modules * Move kt files under kotlin source set. Add sample. * [gradle] map-like options as maps * Add tests for gradle validate task * Apply gradle plugin to mvn install phase * [gradle] Testing remaining gradle tasks * Add gradle plugin to the integration doc * Update gradle plugin README with task options * Gradle readme formatting
1 parent 7dfd940 commit b6b8c0d

33 files changed

Lines changed: 3130 additions & 1 deletion

docs/integration.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,19 @@
11
## Workflow Integration (Maven, Github, CI/CD)
22

3+
### Gradle Integration
4+
5+
See the [openapi-generator-gradle-plugin README](../modules/openapi-generator-gradle-plugin/README.adoc) for details related to configuring and using the Gradle Plugin.
6+
7+
Supported tasks include:
8+
9+
* Listing generators
10+
* Validation of Open API 2.0 and 3.0 Specs
11+
* Generating "Meta" generators
12+
* Generating all generators supported by OpenAPI Generator
13+
314
### Maven Integration
415

5-
You can use the [openapi-generator-maven-plugin](../modules/openapi-generator-maven-plugin/README.md) for integrating with your workflow, and generating any codegen target.
16+
See the [openapi-generator-maven-plugin README](../modules/openapi-generator-maven-plugin/README.md) for details related to configuring and using the Maven Plugin.
617

718
### GitHub Integration
819

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
2+
# Created by https://www.gitignore.io/api/gradle,kotlin,intellij,linux,osx
3+
4+
### Intellij ###
5+
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
6+
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
7+
8+
# User-specific stuff:
9+
.idea/**/workspace.xml
10+
.idea/**/tasks.xml
11+
.idea/dictionaries
12+
13+
# Sensitive or high-churn files:
14+
.idea/**/dataSources/
15+
.idea/**/dataSources.ids
16+
.idea/**/dataSources.xml
17+
.idea/**/dataSources.local.xml
18+
.idea/**/sqlDataSources.xml
19+
.idea/**/dynamic.xml
20+
.idea/**/uiDesigner.xml
21+
22+
# Gradle:
23+
.idea/**/gradle.xml
24+
.idea/**/libraries
25+
26+
# CMake
27+
cmake-build-debug/
28+
29+
# Mongo Explorer plugin:
30+
.idea/**/mongoSettings.xml
31+
32+
## File-based project format:
33+
*.iws
34+
35+
## Plugin-specific files:
36+
37+
# IntelliJ
38+
/out/
39+
40+
# mpeltonen/sbt-idea plugin
41+
.idea_modules/
42+
43+
# JIRA plugin
44+
atlassian-ide-plugin.xml
45+
46+
# Cursive Clojure plugin
47+
.idea/replstate.xml
48+
49+
# Ruby plugin and RubyMine
50+
/.rakeTasks
51+
52+
# Crashlytics plugin (for Android Studio and IntelliJ)
53+
com_crashlytics_export_strings.xml
54+
crashlytics.properties
55+
crashlytics-build.properties
56+
fabric.properties
57+
58+
### Intellij Patch ###
59+
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
60+
61+
# *.iml
62+
# modules.xml
63+
# .idea/misc.xml
64+
# *.ipr
65+
66+
# Sonarlint plugin
67+
.idea/sonarlint
68+
69+
### Kotlin ###
70+
# Compiled class file
71+
*.class
72+
73+
# Log file
74+
*.log
75+
76+
# BlueJ files
77+
*.ctxt
78+
79+
# Mobile Tools for Java (J2ME)
80+
.mtj.tmp/
81+
82+
# Package Files #
83+
*.jar
84+
*.war
85+
*.ear
86+
*.zip
87+
*.tar.gz
88+
*.rar
89+
90+
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
91+
hs_err_pid*
92+
93+
### Linux ###
94+
*~
95+
96+
# temporary files which can be created if a process still has a handle open of a deleted file
97+
.fuse_hidden*
98+
99+
# KDE directory preferences
100+
.directory
101+
102+
# Linux trash folder which might appear on any partition or disk
103+
.Trash-*
104+
105+
# .nfs files are created when an open file is removed but is still being accessed
106+
.nfs*
107+
108+
### OSX ###
109+
*.DS_Store
110+
.AppleDouble
111+
.LSOverride
112+
113+
# Icon must end with two \r
114+
Icon
115+
116+
# Thumbnails
117+
._*
118+
119+
# Files that might appear in the root of a volume
120+
.DocumentRevisions-V100
121+
.fseventsd
122+
.Spotlight-V100
123+
.TemporaryItems
124+
.Trashes
125+
.VolumeIcon.icns
126+
.com.apple.timemachine.donotpresent
127+
128+
# Directories potentially created on remote AFP share
129+
.AppleDB
130+
.AppleDesktop
131+
Network Trash Folder
132+
Temporary Items
133+
.apdisk
134+
135+
### Gradle ###
136+
.gradle
137+
**/build/
138+
139+
# Ignore Gradle GUI config
140+
gradle-app.setting
141+
142+
# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
143+
!gradle-wrapper.jar
144+
145+
# Cache of project
146+
.gradletasknamecache
147+
148+
# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898
149+
# gradle/wrapper/gradle-wrapper.properties
150+
151+
152+
# End of https://www.gitignore.io/api/gradle,kotlin,intellij,linux,osx

0 commit comments

Comments
 (0)