【问题标题】:Publish pacts to a pact broker using maven plugin使用 maven 插件将契约发布到契约代理
【发布时间】:2017-09-28 00:57:17
【问题描述】:

我能够生成一个 pact 文件,然后使用 maven 插件对其进行验证。现在,我正在尝试使用协议代理发布协议。

到目前为止,我所做的是基于以下链接- https://github.com/DiUS/pact-jvm/tree/master/pact-jvm-provider-maven#publishing-pact-files-to-a-pact-broker-version-320

<plugin>
 <groupId>au.com.dius</groupId>
 <artifactId>pact-jvm-provider-maven_2.11</artifactId>
 <version>3.5.5</version>
 <configuration>
   <pactDirectory>target/pacts</pactDirectory> <!-- Defaults to ${project.build.directory}/pacts -->
   <pactBrokerUrl>http://<localIP>:80</pactBrokerUrl>
   <projectVersion>1.0.100</projectVersion> <!-- Defaults to ${project.version} -->
   <trimSnapshot>true</trimSnapshot> <!-- Defaults to false -->
</configuration>
</plugin>

我的问题是如何生成 pactBrokerUrl?这是否涉及使用此处所述的协议代理的 dockerized 图像? https://github.com/DiUS/pact_broker-docker 或者我可以使用 warmuuh 的 Pact Broker Maven 插件吗?

【问题讨论】:

    标签: pact pact-broker pact-jvm


    【解决方案1】:

    您需要按照问题中的链接中的说明将协定代理安装在容器中。 URL 是安装代理的 IP。您还需要使用 maven 插件来标注您的代理网址。

    【讨论】:

    • 它现在可以工作了,我可以看到协议 :) maven 插件中的发布和验证任务都运行成功。是这样吗?我是否还需要执行本节中所说的内容? github.com/DiUS/pact-jvm/tree/master/…
    • 如果您的任务正在运行,并且您在代理中看到验证,那么您可能已经完成了该部分?
    • @TimothyJones :这就是我感到困惑的原因。请参阅上面我编辑的 pom 文件部分。它没有 部分或 部分。
    • 当提供者有多个消费者时,serviceprovider 部分将很有用,因此我们可以在提供者部分中调用每个消费者。 stateChange URL 部分是可选的。
    • 嗨,即使 maven 验证任务(在提供程序中)成功运行 - pactbroker 网页 (localhost:80) 始终显示“上次验证”列为空。这意味着该协议根本没有得到验证,对吧?请问,我该如何解决这个问题?
    【解决方案2】:

    PACT Broker 需要发布消费者生成的 PACT 文件,我已经回答了 PACT Broker 配置信息的其他问题,https://stackoverflow.com/a/62300089/3056361

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多