File tree Expand file tree Collapse file tree
modules/openapi-generator-mill-plugin
src/main/java/com/acme/foo/boundary/web Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Mill plugin tests
2+
3+ on :
4+ push :
5+ paths :
6+ - modules/openapi-generator-mill-plugin/**
7+ pull_request :
8+ paths :
9+ - modules/openapi-generator-mill-plugin/**
10+
11+ jobs :
12+ test :
13+ name : Mill plugin tests
14+ runs-on : ubuntu-latest
15+ steps :
16+ - uses : actions/checkout@v5
17+ - name : Set up JDK 11
18+ uses : actions/setup-java@v5
19+ with :
20+ java-version : 11
21+ distribution : ' temurin'
22+ - name : Cache maven dependencies
23+ uses : actions/cache@v5
24+ env :
25+ cache-name : cache-maven-repository
26+ with :
27+ path : |
28+ ~/.m2/repository
29+ ~/.gradle
30+ !~/.gradle/caches/*/plugin-resolution/
31+ !~/.m2/repository/org/openapitools/
32+ key : ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
33+ restore-keys : |
34+ ${{ runner.os }}-test-mill-plugin-${{ env.cache-name }}-
35+ ${{ runner.os }}-test-mill-plugin-
36+ - name : Run tests
37+ env :
38+ GRADLE_ENTERPRISE_ACCESS_KEY : ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
39+ run : |
40+ ./mvnw clean install -DskipTests -Dmaven.javadoc.skip=true
41+ (cd modules/openapi-generator-mill-plugin/example/ && ./mill __.compile)
42+ (cd modules/openapi-generator-mill-plugin/example/ && ./mill openapi.validate)
43+ (cd modules/openapi-generator-mill-plugin/example/ && ./mill validateOpenapiSpec $(pwd)/api/petstore-invalid.yaml)
44+
Original file line number Diff line number Diff line change @@ -93,6 +93,7 @@ declare -a xml_files=(
9393declare -a properties_files=(
9494 " ${root} /modules/openapi-generator-gradle-plugin/gradle.properties"
9595 " ${root} /modules/openapi-generator-gradle-plugin/samples/local-spec/gradle.properties"
96+ " ${root} /modules/openapi-generator-mill-plugin/example/mill-build/version.properties"
9697)
9798
9899${cwd} /bump.sh -f ${version} -i ${inc} ${xml_files[@]}
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change 11//| mill-version: 1.0.6
2- //| mvnDeps:
3- //| - com.lihaoyi::mill-contrib-versionfile:$MILL_VERSION
4- //| - org.openapitools:openapi-generator-mill-plugin:$MILL_OPENAPITOOLS_PLUGIN_VERSION
2+ //| # usually you would add the plugin dependency like the following,
3+ //| # but for testing with SNAPSHOT versions, the plugin dependency is added in the meta-build
4+ //| # mvnDeps:
5+ //| # - org.openapitools:openapi-generator-mill-plugin:$MILL_OPENAPITOOLS_PLUGIN_VERSION
56//|
67package build
78
@@ -12,13 +13,10 @@ import mill.scalalib.publish.PomSettings
1213import mill.util.BuildInfo.{millBinPlatform, millVersion}
1314import javalib.*
1415
15- import mill.contrib.versionfile.VersionFileModule
1616import org.openapitools.generator.mill.OpenApiModule
1717
1818object `package` extends JavaModule with MavenModule with OpenApiModule {
1919
20- // dependency on openapi-generator is set in Mills meta-build
21- // this is needed to point to a local maven repo
2220 override def mvnDeps = Seq(
2321 mvn"jakarta.platform:jakarta.jakartaee-api:11.0.0",
2422 mvn"com.fasterxml.jackson.core:jackson-databind:2.20.0",
File renamed without changes.
Original file line number Diff line number Diff line change 1+
2+ import coursier.LocalRepositories.Dangerous
3+ import coursier.Repositories
4+ import mill.scalalib.DepSyntax
5+ import mill.*
6+ import mill.api.Task
7+ import mill.meta.MillBuildRootModule
8+ import java.util.Properties
9+ import java.io.FileInputStream
10+ import scala.util.Using
11+
12+ object `package` extends MillBuildRootModule {
13+
14+ override def repositories = Task {
15+ Seq(
16+ // central needed for default deps
17+ Repositories.central.root,
18+ // the previously installed snapshot is in local maven
19+ // see docs on Coursier, why m2 is considered dangerous
20+ Dangerous.maven2Local.root)
21+ }
22+
23+ def propsFile = Task.Source("version.properties")
24+
25+ def readOpenapiSnapshotVersion: Task[String] = Task {
26+ val props = new Properties()
27+ Using(new FileInputStream(propsFile().path.toIO)) { fis =>
28+ props.load(fis)
29+ props.getProperty("openApiGeneratorVersion")
30+ }.get
31+ }
32+
33+ override def mvnDeps = Seq(
34+ mvn"org.openapitools:openapi-generator-mill-plugin:${readOpenapiSnapshotVersion()}"
35+ )
36+ }
Original file line number Diff line number Diff line change 1+ # RELEASE_VERSION
2+ openApiGeneratorVersion =7.19.0-SNAPSHOT
3+ # /RELEASE_VERSION
File renamed without changes.
File renamed without changes.
You can’t perform that action at this time.
0 commit comments