pluginManagement { repositories { mavenCentral() gradlePluginPortal() maven { url 'https://repo.spring.io/release' } if (version.contains('-')) { maven { url 'https://repo.spring.io/milestone' } } if (version.endsWith('-SNAPSHOT')) { maven { url 'https://repo.spring.io/snapshot' } } } plugins { id 'org.springframework.boot' version "$springBootVersion" id 'com.gradle.enterprise' version "$gradleEnterpriseVersion" id 'io.spring.ge.conventions' version "$springGeConventionsVersion" } } plugins { id "com.gradle.enterprise" id "io.spring.ge.conventions" } rootProject.name = 'spring-statemachine' settings.gradle.projectsLoaded { gradleEnterprise { buildScan { def buildDir = settings.gradle.rootProject.getBuildDir() buildDir.mkdirs() new File(buildDir, "build-scan-uri.txt").text = "build scan not generated" buildScanPublished { scan -> buildDir.mkdirs() new File(buildDir, "build-scan-uri.txt").text = "<${scan.buildScanUri}|build scan>\n" } } } } include 'spring-statemachine-platform' include 'spring-statemachine-core' include 'spring-statemachine-test' include 'spring-statemachine-kryo' include 'spring-statemachine-zookeeper' include 'spring-statemachine-cluster' include 'spring-statemachine-uml' include 'spring-statemachine-build-tests' include 'spring-statemachine-recipes' include 'spring-statemachine-autoconfigure' include 'spring-statemachine-bom' include 'spring-statemachine-starter' include 'spring-statemachine-samples' include 'spring-statemachine-samples:turnstile' include 'spring-statemachine-samples:turnstilereactive' include 'spring-statemachine-samples:showcase' include 'spring-statemachine-samples:cdplayer' include 'spring-statemachine-samples:tasks' include 'spring-statemachine-samples:washer' include 'spring-statemachine-samples:zookeeper' include 'spring-statemachine-samples:persist' include 'spring-statemachine-samples:web' include 'spring-statemachine-samples:scope' include 'spring-statemachine-samples:security' include 'spring-statemachine-samples:eventservice' include 'spring-statemachine-samples:deploy' include 'spring-statemachine-samples:ordershipping' include 'spring-statemachine-samples:datajpa' include 'spring-statemachine-samples:datajpamultipersist' include 'spring-statemachine-samples:datapersist' include 'spring-statemachine-samples:monitoring' include 'spring-statemachine-data' include 'spring-statemachine-data:jpa' include 'spring-statemachine-data:redis' include 'spring-statemachine-data:mongodb' include 'docs' rootProject.children.each { project -> if (project.name == 'spring-statemachine-data') { project.name = 'spring-statemachine-data-common' project.buildFileName = 'spring-statemachine-data.gradle' project.children.each { subproject -> subproject.buildFileName = "spring-statemachine-data-${subproject.name}.gradle" subproject.name = 'spring-statemachine-data-' + subproject.name } } else if (project.name == 'spring-statemachine-recipes') { project.name = 'spring-statemachine-recipes-common' project.buildFileName = 'spring-statemachine-recipes.gradle' } else if (project.name == 'spring-statemachine-samples') { project.name = 'spring-statemachine-samples-common' project.buildFileName = 'spring-statemachine-samples.gradle' project.children.each { subproject -> subproject.buildFileName = "spring-statemachine-samples-${subproject.name}.gradle" subproject.name = 'spring-statemachine-samples-' + subproject.name } } else { project.buildFileName = "${project.name}.gradle" } }