Skip to content

Commit 51b838e

Browse files
committed
Legg til openapi generation task for kodeverk
1 parent 8064568 commit 51b838e

File tree

2 files changed

+487
-1
lines changed

2 files changed

+487
-1
lines changed

build.gradle.kts

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ plugins {
2424
id("org.jetbrains.kotlin.plugin.serialization") version "2.2.0"
2525
id("com.gradleup.shadow") version "8.3.8"
2626
id("com.expediagroup.graphql") version "8.8.1"
27+
id("org.openapi.generator") version "7.15.0"
2728
}
2829

2930
group = "no.nav"
@@ -95,6 +96,14 @@ dependencies {
9596
testImplementation("org.junit.jupiter:junit-jupiter:$junit_version")
9697
}
9798

99+
sourceSets {
100+
main {
101+
kotlin {
102+
srcDir("${project.layout.buildDirectory}/generated/source/openapi/src/main/kotlin")
103+
}
104+
}
105+
}
106+
98107
tasks.withType<Test> {
99108
useJUnitPlatform()
100109

@@ -161,8 +170,25 @@ val generatePDLClient by tasks.creating(GraphQLGenerateClientTask::class) {
161170
dependsOn("downloadPDLSchema")
162171
}
163172

173+
174+
175+
openApiGenerate {
176+
inputSpec.set("${project.projectDir}/src/main/resources/kodeverk/openapi.json")
177+
generatorName.set("kotlin")
178+
packageName.set("no.nav.modiarobotapi.generated.kodeverk")
179+
configOptions.set(mapOf(
180+
"serializationLibrary" to "kotlinx_serialization",
181+
"library" to "jvm-ktor"
182+
))
183+
}
184+
164185
tasks {
186+
register("generateApi") {
187+
group = "build"
188+
description = "Generate API"
189+
dependsOn("openApiGenerate")
190+
}
165191
processResources {
166-
dependsOn("generatePDLClient")
192+
dependsOn("generateApi", "generatePDLClient")
167193
}
168194
}

0 commit comments

Comments
 (0)