Невозможно опубликовать статус «Последний подтвержденный» в PACT Broker - PullRequest
0 голосов
/ 21 сентября 2018

Для контрактных тестов микросервисов я использую PACT с Gradle 4.4, и вот мой build.gradle:

buildscript {
  repositories {
    mavenCentral()
 }
 dependencies {
     classpath 'au.com.dius:pact-jvm-provider-gradle_2.12:3.5.22'
  }
}

apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'eclipse'
apply plugin: "au.com.dius.pact"


pact {

 serviceProviders {

    // You can define as many as you need, but each must have a unique name
    UserService {

        // All the provider properties are optional, and have sensible defaults (shown below)
        protocol = 'http'
        host = 'localhost'
        port = 8111
        project.version = "2.0.1"
        hasPactsFromPactBroker('http://10.100.198.200:8113')

        }
}            
  pact {
  publish {
  version = "2.0.1"
  pactDirectory = 'pacts' // defaults to $buildDir/pacts
        pactBrokerUrl = 'http://10.100.198.200:8113'

 }
 }
}

Хотя я могу публиковать файлы пактов в брокере и видеть графики зависимостей,«Last Verified» отображается пустым после запуска метода pactVerify.Я увидел некоторую документацию вокруг pact.verifier.publishResults = true и попытался передать ее как параметр gradle, но получил сообщение об ошибке:

FAILURE: сборка завершилась с исключением.

  • Что пошло не так: ваш проект неверно сконфигурирован, в сборке ожидалась конфигурация "pact", но вместо этого он получил String со значением ''.Убедитесь, что нет свойства, которое переопределяет 'pact'.

команда gradle, которую я запускаю:

      ./gradlew test pactPublish 
      ./gradlew pactVerify -Ppact.verifier.publishResults=true

Пожалуйста, дайте мне знать, что я пропустил, пакт.verifyier.publishResults не принимается

1 Ответ

0 голосов
/ 28 сентября 2018

Во-первых, ваша конфигурация Gradle неверна.Должен быть только один pact блок.У вас есть два.Удалите внутренний блок с блоком publish (но оставьте блок publish :-D).

Если это не решит вашу проблему, посмотрите на https://github.com/DiUS/pact-jvm/issues/738 ипосмотрите, поможет ли какое-либо из изменений в комментариях.

...