joao diogo Henriques
11/18/2024, 1:07 PM2024-11-16 15:27:57.057292 I [6:puma srv tp 001] PactBroker::Pacts::Service -- Creating new pact publication -- {:consumer_name=>"Gamebeast frontend", :provider_name=>"API", :consumer_version_number=>"a4eac43446d04a8da19b1e87381064ba53ea570d", :pact_version_sha=>"086898c0d6db6c1dd208f5f8b547b7f65612e2aa"}
2024-11-16 15:28:19.429973 I [6:puma srv tp 001] PactBroker::matrix::Service -- Querying matrix -- {:selectors=>[{:pacticipant_name=>"frontend", :pacticipant_version_number=>"a4eac43446d04a8da19b1e87381064ba53ea570d"}], :options=>{:latestby=>"cvp", :limit=>"100", :environment_name=>"dev", :ignore_selectors=>[]}}
WARN: Ignoring unsupported combine AND for path $
WARN: Ignoring unsupported combine AND for path $['created_at']
WARN: Ignoring unsupported combine AND for path $
WARN: Ignoring unsupported combine AND for path $['created_at']
WARN: Ignoring unsupported combine AND for path $
WARN: Ignoring unsupported combine AND for path $
WARN: Ignoring unsupported combine AND for path $
WARN: Ignoring unsupported combine AND for path $['configuration']['variables']
WARN: Ignoring unsupported combine AND for path $['max_requests']
WARN: Ignoring unsupported combine AND for path $
WARN: Ignoring unsupported combine AND for path $[*]['created_at']
WARN: Ignoring unsupported combine AND for path $
Following that i get:
2024-11-16 18:41:43.847979 E [6:puma srv tp 001 logging.rb:58] PactBroker::Errors::ErrorLogger -- Error reference pAzBlPLjhh -- Exception: Sequel::DatabaseError: PG::UndefinedTable: ERROR: relation "pact_publications" does not exist
LINE 1: SELECT "pact_publications".* FROM "pact_publications" INNER ...
^
This leads to an Internal server error when accessing the broker. Restarting the container leads to a series of migrations errors.Stanislav Vodetskyi
11/22/2024, 3:03 AM/matrix
API? It's not documented in HAL browser and the syntax for the parameters is somewhat confusing. Or is this API not considered public?
Context: we need to implement a customized can-i-deploy
cli, basically mirror open-source version with some tweaks related to security (such as automatically retrieving credentials from credential store). We've been using a shell script wrapper, but are now considering to call API directly. We cannot use pb:can-i-deploy-pacticipant-version-to-environment
API because that one doesn't support ignore
parameter.
We can also package an open-source cli and our wrapper in a docker image and use that, but I feel it's cleaner to use the API.Matt (pactflow.io / pact-js / pact-go)
Hi folks, is there a doc on theWe’ve been trying to avoid making it public, because it’s a complicated API. I’ll be honest - I don’t even know how it works. But we do have it documented here: https://smartbear.portal.swaggerhub.com/pactflow/default/pactflow_saas_api#/matrix/get_matrixAPI? It’s not documented in HAL browser and the syntax for the parameters is somewhat confusing. Or is this API not considered public?/matrix
Matt (pactflow.io / pact-js / pact-go)
latestby
is in the API. I think the options are here: https://github.com/pact-foundation/pact_broker/blob/96532124f3a53a499276c69ff2df785b8377588e/lib/pact_broker/matrix/repository.rb#L91Adrien DEVILLERS
11/26/2024, 10:07 AMStanislav Vodetskyi
12/06/2024, 8:58 AMMartin Mineo
12/06/2024, 7:09 PMpact-broker publish 'pacts/Fulfilment_API-Orders_API.json' -b <http://localhost:9292> --consumer-app-version 1.0.0 -v -u packbroker -p packbroker
I’m getting the Unauthorized
error
the whole error in the thread
...
...
<- "POST /contracts/publish HTTP/1.1\r\nAccept: application/hal+json\r\nUser-Agent: Ruby\r\nContent-Type: application/json\r\nAuthorization: [redacted]\r\n"
<- "{\"pacticipantName\":\"Fulfilment_API\",\"pacticipantVersionNumber\":\"1.0.0\",\"tags\":[],\"contracts\":[{\"consumerName\":\"Fulfilment_API\",\"providerName\":\"Orders_API\",\"specification\":\"pact\",\"contentType\":\"application/json\",\"content\":\"eyJjb25zdW1lciI6eyJuYW1lIjoiRnVsZmlsbWVudF9BUEkifSwiaW50ZXJhY3Rpb25zIjpbeyJjb250ZW50cyI6eyJjb250ZW50Ijp7ImlkIjoxfSwiY29udGVudFR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIiwiZW5jb2RlZCI6ZmFsc2V9LCJkZXNjcmlwdGlvbiI6ImFuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhbiBvcmRlciBoYXMgYmVlbiBjcmVhdGVkIiwibWF0Y2hpbmdSdWxlcyI6eyJib2R5Ijp7IiQuaWQiOnsiY29tYmluZSI6IkFORCIsIm1hdGNoZXJzIjpbeyJtYXRjaCI6ImludGVnZXIifV19fX0sInBlbmRpbmciOmZhbHNlLCJ0eXBlIjoiQXN5bmNocm9ub3VzL01lc3NhZ2VzIn1dLCJtZXRhZGF0YSI6eyJwYWN0UnVzdCI6eyJmZmkiOiIwLjQuMjMiLCJtb2RlbHMiOiIxLjIuNSJ9LCJwYWN0U3BlY2lmaWNhdGlvbiI6eyJ2ZXJzaW9uIjoiNC4wIn19LCJwcm92aWRlciI6eyJuYW1lIjoiT3JkZXJzX0FQSSJ9fQ==\"}]}"
-> "HTTP/1.1 401 Unauthorized\r\n"
-> "Content-Type: text/plain\r\n"
-> "WWW-Authenticate: Basic realm=\"Restricted area\"\r\n"
-> "Content-Length: 0\r\n"
-> "\r\n"
reading 0 bytes...
-> ""
read 0 bytes
Conn keep-alive
Do you have any suggestions?Boris Nedelkov
12/10/2024, 10:29 AMАлександр Чепрасов
12/16/2024, 9:49 AMStanislav Vodetskyi
12/17/2024, 10:06 AMGarrett Fitzgerald
12/17/2024, 6:56 PMRan Abitbul
01/06/2025, 6:13 AMJames P
01/08/2025, 11:51 AMAdrien DEVILLERS
01/08/2025, 4:45 PMMiguel Gramacho
01/09/2025, 11:32 AMKyle Shrader
01/09/2025, 9:34 PMHernan Mateika
01/10/2025, 8:23 PMpact-broker
deployed on your AWS account?
It will be really helpful to know how many resources are you setting for pact-broker and postgres db. (If you are using EC2 which instance family type are you using)
and know how many contracts are you handling with those resources
Thanks in advance!Gabriel Vasconcelos
01/15/2025, 3:50 PM'Value is incompatible with the parameter defined in the spec file: must match format "date-time"',
My question is: were there any improvements done then during the parsing? Could this be a bug?
Thanks.Iuri Araujo Ramos
01/15/2025, 7:51 PM{
"error": {
"message": "Cannot read properties of undefined (reading 'type')"
}
}
Could you please assist us in diagnosing and resolving this issue?
Thank you!
FYI: @Luis Eduardo CamiloRuth
01/20/2025, 11:11 AMdocker run --rm \
--env PACT_BROKER_BASE_URL=$PACT_BROKER_BASE_URL \
--env PACT_BROKER_TOKEN=$PACTFLOW_TOKEN_READONLY \
pactfoundation/pact-cli \
broker <task>
unfortunately I cannot find a way to get a list of all the branches.
I found a link to them in the describe-pacticipant
command, but nothing for the CLI.
"pb:branches": {
"href": "<https://europace.pactflow.io/pacticipants/Ratenkredit-Leadtools-Backend/branches>"
},
Anything I missed?Lachlan Newman
01/21/2025, 1:15 AMpact_verifier_cli
to run provider verification. the command for provider verification looks like the following
pact_verifier_cli --broker-url="<http://pact-broker.cougar-lake.ts.net>" --loglevel=info --port=9000 --provider-name="CTC Model Container" --provider-version=9dabe924c0a4be109226c3802584b61350ca8513 --provider-tags=main --provider-branch=main --request-timeout=300000 --enable-pending --include-wip-pacts-since=2023-10-28
however the pact_verifier does actually attempt to verify any pending pacts it just verifies the latest pact ?D
01/22/2025, 8:00 AMYou can add ostruct to your Gemfile or gemspec to silence this warning.
Computer says yes \o/
There are no missing dependencies
I am using version pact-2.4.14-windows-x86_64
Would anyone know anything in regards to this?Tim Vahlbrock
01/23/2025, 2:19 PMThomas Kanne
01/28/2025, 2:22 PMcontract_requiring_verification_published
in the Pact-Broker's webhooks as I am working on multiple environments (main branch, integration, stage, prod). I am using Gitlab trigger tokens which trigger a pipeline only running the pactVerify
job (which is a Gradle talk of my project executing the Java PactProviderTest).
As Gitlab only accepts branches and tags as reference (ref
), I don't know how I can pass the right revision to the ref
as my pactbroker.providerVersionNumber
returns a combination of my Gradle project version + the respective Git short SHA (e.g. 1.0.0-a6d33b7a). My tags in Gitlab are named in format v1.0.0. I was thinking about parsing the version and do string manipulation to reach my desired format, but this seems not be possible within a webhook. Alternatively I thought about setting the providerVersionsTags
and use them to pass to the ref
. But this seems to be a complex (and probably dirty) workaround which I am not even sure about if it would work as expected.
Do you have any idea?Hernan Mateika
01/30/2025, 1:53 PMDominic Plourde
01/30/2025, 4:26 PMDimitris Dranidis
01/31/2025, 10:42 AMproduction
. I did not find anything in the pact-broker CLI or in the Pact-broker API. Is there a way?Paul Beigang
01/31/2025, 12:52 PMVictor Vargas
02/05/2025, 8:01 AMMatt (pactflow.io / pact-js / pact-go)