libeufin

Integration and sandbox testing for FinTech APIs and data formats
Log | Files | Refs | Submodules | README | LICENSE

build.gradle (1867B)


      1 // This file is in the public domain.
      2 
      3 plugins {
      4     id("org.jetbrains.kotlin.jvm") version "2.2.21"
      5     id("org.jetbrains.dokka") version "2.0.0"
      6     id("idea")
      7     id("java-library")
      8 }
      9 
     10 group = "tech.libeufin"
     11 version = "1.2.4"
     12 
     13 if (!JavaVersion.current().isCompatibleWith(JavaVersion.VERSION_17)){
     14     throw new GradleException(
     15         "This build must be run with java 17 " +
     16         "or later (your version is java ${JavaVersion.current()})")
     17 }
     18 
     19 allprojects {
     20     ext {
     21         set("kotlin_version", "2.2.21")
     22         set("ktor_version", "3.3.3")
     23         set("clikt_version", "5.0.3")
     24         set("coroutines_version", "1.10.2")
     25         set("postgres_version", "42.7.8")
     26         set("junixsocket_version", "2.10.1")
     27         set("shadow_version", "9.2.2")
     28         set("prometheus_version", "1.4.3")
     29     }
     30 
     31     repositories {
     32         mavenCentral()
     33     }
     34 }
     35 
     36 subprojects {
     37     apply plugin: 'org.jetbrains.dokka'
     38 
     39     tasks.withType(Test) {
     40         // Invalidate tests cache when editing SQL logic
     41         inputs.dir("$rootDir/database-versioning").withPathSensitivity(PathSensitivity.RELATIVE)
     42         // Or when editing ISO20022 test samples
     43         inputs.dir("$rootDir/libeufin-nexus/sample").withPathSensitivity(PathSensitivity.RELATIVE)
     44         inputs.dir("$rootDir/testbench/sample").withPathSensitivity(PathSensitivity.RELATIVE)
     45         testLogging {
     46             exceptionFormat = 'full'
     47         }
     48     }
     49 }
     50 
     51 ext.getVersionWithGitHash = { ->
     52     def gitHash = 'git rev-parse --short HEAD'.execute().text.trim()
     53     return "v${project.version}-git-$gitHash"
     54 }
     55 
     56 task libeufinVersion {
     57     doLast {
     58         println getVersionWithGitHash()
     59     }
     60 }
     61 
     62 dependencies {
     63     dokka(project(":libeufin-common:"))
     64     dokka(project(":libeufin-bank:"))
     65     dokka(project(":libeufin-nexus:"))
     66     dokka(project(":libeufin-ebics:"))
     67     dokka(project(":libeufin-ebisync:"))
     68 }