X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=provider%2Fbuild.gradle;h=dfadb06c9ad77d26764da6e5b52d8363873a8373;hb=bbff8e069b37597c062a39384c18f326ee2d0a7c;hp=6e73ef780a4d7896d2da578eda6e8d5264543d03;hpb=64f64ba921589cbdcaeab2bd631e2a298394c7b9;p=demos%2Fexample-siren diff --git a/provider/build.gradle b/provider/build.gradle index 6e73ef7..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' +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") + } + } + } +}