X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=provider%2Fbuild.gradle;h=dfadb06c9ad77d26764da6e5b52d8363873a8373;hb=20ff01b051ebb4c382a7ce792701bfbb53ac0b5f;hp=f617265f17d0095ff7a66e640678509fa4447dee;hpb=fa6c23326ebd418672752b41c21f04ee66ae00a6;p=demos%2Fexample-siren diff --git a/provider/build.gradle b/provider/build.gradle index f617265..dfadb06 100644 --- a/provider/build.gradle +++ b/provider/build.gradle @@ -2,18 +2,25 @@ plugins { id 'org.springframework.boot' version '2.3.4.RELEASE' id 'io.spring.dependency-management' version '1.0.10.RELEASE' id 'java' + id "io.freefair.lombok" version "5.2.1" + id "au.com.dius.pact" version "4.2.0-beta.1" + id "com.wiredforcode.spawn" version "0.8.2" } group = 'io.pactflow.example' -version = '0.0.1-SNAPSHOT' -sourceCompatibility = '14' +version = '0.0.1' +sourceCompatibility = '11' repositories { + mavenLocal() mavenCentral() } dependencies { - implementation 'org.springframework.boot:spring-boot-starter' + implementation 'org.springframework.boot:spring-boot-starter-hateoas' + implementation 'com.jayway.jsonpath:json-path' + implementation 'de.ingogriebsch.hateoas:spring-hateoas-siren:1.0.0-M2' + testImplementation('org.springframework.boot:spring-boot-starter-test') { exclude group: 'org.junit.vintage', module: 'junit-vintage-engine' } @@ -22,3 +29,24 @@ dependencies { test { useJUnitPlatform() } + +task startServer(type: SpawnProcessTask, dependsOn: 'assemble') { + command "java -jar ${projectDir}/build/libs/siren-provider-0.0.1.jar" + ready 'Started SirenProviderApplication' +} + +task stopServer(type: KillProcessTask) + +pact { + serviceProviders { + "Siren Order Provider" { + + startProviderTask = startServer + terminateProviderTask = stopServer + + hasPactWith("Siren Consumer") { + pactSource = file("${projectDir}/../consumer/pacts/Siren Order Provider-Siren Order Service.json") + } + } + } +}