forked from loafle/openapi-generator-original
* Fix Retrofit template with Jackson (Fix #8147) This commit amends the `ApiClient` template for Retrofit. It fixes a bug where the Retrofit client uses Jackson as the serialization library. Until now, the `ApiClient` could not be compiled when using the Jackson library (default in SpringBoot applications), as the constructor of the class had the following parameter: `private val serializerBuilder: Builder = Serializer.Builder,` The change done in the commit, is to ensure that in case of Jackson, the right property of the `Serializer` class is assigned * Add sample code for `kotlin-jvm-jackson` This commit adds a sample code for the `kotlin-jvm-jackson` generated code to test the changes on CI * Update kotlin code samples for CI This commit only runs the command `bin/generate-samples.sh bin/configs/kotlin-*` to ensure that all code samples are up-to-date and CI can pass successfully.
90 lines
3.8 KiB
YAML
90 lines
3.8 KiB
YAML
name: Samples Kotlin client
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- 'samples/client/petstore/kotlin*/**'
|
|
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
|
|
pull_request:
|
|
paths:
|
|
- 'samples/client/petstore/kotlin*/**'
|
|
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
|
|
|
|
env:
|
|
GRADLE_VERSION: 6.9
|
|
|
|
jobs:
|
|
build:
|
|
name: Build Kotlin client
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
sample:
|
|
# client
|
|
- samples/client/petstore/kotlin
|
|
- samples/client/petstore/kotlin-gson
|
|
- samples/client/petstore/kotlin-jackson
|
|
# needs Android configured
|
|
#- samples/client/petstore/kotlin-json-request-string
|
|
- samples/client/petstore/kotlin-jvm-okhttp4-coroutines
|
|
- samples/client/petstore/kotlin-jvm-volley
|
|
- samples/client/petstore/kotlin-moshi-codegen
|
|
- samples/client/petstore/kotlin-multiplatform
|
|
- samples/client/petstore/kotlin-nonpublic
|
|
- samples/client/petstore/kotlin-nullable
|
|
- samples/client/petstore/kotlin-okhttp3
|
|
- samples/client/petstore/kotlin-retrofit2
|
|
- samples/client/petstore/kotlin-retrofit2-kotlinx_serialization
|
|
- samples/client/petstore/kotlin-retrofit2-rx3
|
|
- samples/client/petstore/kotlin-string
|
|
- samples/client/petstore/kotlin-threetenbp
|
|
- samples/client/petstore/kotlin-uppercase-enum
|
|
- samples/client/petstore/kotlin-default-values-jvm-okhttp3
|
|
- samples/client/petstore/kotlin-default-values-jvm-okhttp4
|
|
- samples/client/petstore/kotlin-default-values-jvm-retrofit2
|
|
- samples/client/petstore/kotlin-default-values-jvm-volley
|
|
- samples/client/petstore/kotlin-default-values-multiplatform
|
|
- samples/client/petstore/kotlin-array-simple-string-jvm-okhttp3
|
|
- samples/client/petstore/kotlin-array-simple-string-jvm-okhttp4
|
|
- samples/client/petstore/kotlin-array-simple-string-jvm-volley
|
|
- samples/client/petstore/kotlin-array-simple-string-multiplatform
|
|
- samples/client/petstore/kotlin-bigdecimal-default-multiplatform
|
|
- samples/client/petstore/kotlin-bigdecimal-default-okhttp4
|
|
- samples/client/petstore/kotlin-jvm-jackson
|
|
- samples/client/petstore/kotlin-jvm-ktor-jackson
|
|
- samples/client/petstore/kotlin-jvm-ktor-gson
|
|
- samples/client/petstore/kotlin-jvm-ktor-kotlinx_serialization
|
|
- samples/client/petstore/kotlin-jvm-vertx-gson
|
|
- samples/client/petstore/kotlin-jvm-vertx-jackson
|
|
- samples/client/petstore/kotlin-jvm-vertx-jackson-coroutines
|
|
- samples/client/petstore/kotlin-jvm-vertx-moshi
|
|
- samples/client/petstore/kotlin-jvm-spring-2-webclient
|
|
- samples/client/petstore/kotlin-jvm-spring-3-webclient
|
|
- samples/client/petstore/kotlin-spring-cloud
|
|
- samples/client/petstore/kotlin-name-parameter-mappings
|
|
- samples/client/others/kotlin-jvm-okhttp-parameter-tests
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-java@v3
|
|
with:
|
|
distribution: 'temurin'
|
|
java-version: 8
|
|
- name: Cache maven dependencies
|
|
uses: actions/cache@v3
|
|
env:
|
|
cache-name: maven-repository
|
|
with:
|
|
path: |
|
|
~/.gradle
|
|
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
|
|
- name: Install Gradle wrapper
|
|
uses: eskatos/gradle-command-action@v2
|
|
with:
|
|
gradle-version: ${{ env.GRADLE_VERSION }}
|
|
build-root-directory: ${{ matrix.sample }}
|
|
arguments: wrapper
|
|
- name: Build
|
|
working-directory: ${{ matrix.sample }}
|
|
run: ./gradlew build -x test
|