无法将结果发布给契约经纪人

时间:2019-09-26 11:45:02

标签: post verification provider consumer pact-broker

我正在尝试使用以下命令在localhost:9292的pact broker主机上发布验证结果:

curl -XPOST -H'内容类型:application / json'-d@/home/ec2-user/pact-ruby/example/zoo-app/spec/pacts/zoo_app-animal_service.json $ {verification_url}

在这里,我无法从下面的语法中获取验证网址的值。 BASE_URL =“ http:// localhost:9292”

response_body = $(卷$ {BASE_URL} / pacts / provider / Bar / consumer / Foo / latest) Verification_url = $(echo“ $ {response_body}” | ruby​​ -e“ require'json';放入JSON.parse(ARGF.read)['_ links'] ['pb:publish-verification-results'] ['href' ]“) curl -XPOST -H'内容类型:application / json'-d@script/foo-bar-verification.json $ {verification_url}

目前,我已经在以下网址进行了验证: ../动物服务>规格/服务消费者> rake:pact-verify-at []。

我无法确定如何从上述请求中检索验证网址。我想念的是什么,请帮忙。

谢谢。

1 个答案:

答案 0 :(得分:0)

提供商可以通过两种方式从Pact Broker验证发布的协议。

  1. 在Pact Broker本身上设置了一个Webhook'合同内容已更改',该Webhook通过向其传递${pactbroker.pactUrl}来调用提供商的验证版本。
  2. 经纪人要求您为发布的每个合同分配消费者版本${commit_hash}。在运行提供者验证时,提供者需要指定要验证的使用者版本。然后,经纪人将返回该特定消费者版本的合同的最新版本。