buildscript {
    // @see https://mvnrepository.com/artifact/org.jetbrains.kotlin/kotlin-gradle-plugin
    ext.kotlin_version = '2.2.20'
    ext {
        // @see https://mvnrepository.com/artifact/org.jodconverter/jodconverter-local
        jodconverterVersion = '4.4.11'

        // @see https://mvnrepository.com/artifact/org.mockito/mockito-core
        mockitoVersion = '5.19.0'

        // @see https://mvnrepository.com/artifact/org.apache.tika/tika-parsers
        tikaVersion = '3.1.0'

        // @see https://mvnrepository.com/artifact/commons-io/commons-io
        commonsIo = '2.18.0'

        // @see https://mvnrepository.com/artifact/org.glassfish.jaxb/jaxb-runtime
        jaxb = "4.0.5"

        // @see https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api-kotlin
        kotlinLog4j = "1.5.0"
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

plugins {
    id 'java'
    id 'java-library'

    // we need maven to write out the pom.xml only
    id 'maven-publish'

    // @see https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web
    // changing that will upgrade spring to the corresponding version
    id 'org.springframework.boot' version '3.5.6'

    // much better output during running tests
    // see https://github.com/radarsh/gradle-test-logger-plugin for configuration options
    id "com.adarshr.test-logger" version "4.0.0"

    // @see https://plugins.gradle.org/plugin/org.sonarqube
    id "org.sonarqube" version "6.3.1.5724"

    // @see https://plugins.gradle.org/plugin/org.jetbrains.kotlin.jvm
    id "org.jetbrains.kotlin.jvm" version "2.2.20"
    id "org.jetbrains.kotlin.plugin.allopen" version "2.2.20"
    id "org.jetbrains.kotlin.plugin.spring" version "2.2.20"
}

apply plugin: 'io.spring.dependency-management'
apply plugin: 'kotlin'
apply plugin: 'org.springframework.boot'
apply from: 'gradle/repositories.gradle'
apply from: 'gradle/dependencies.gradle'
apply from: 'gradle/build.gradle'
apply from: 'gradle/tests.gradle'
apply from: 'gradle/spring_bootRun.gradle'
apply from: 'gradle/sonarqube.gradle'
apply from: 'gradle/kotlin.gradle'
apply from: 'gradle/configuration.gradle'


group = 'de.kontextwork'
// this lets us set the version during build using cli -Pversion=1.1.1
version = "${version}"

