Gustavo Souza
11/10/2022, 6:55 PMTest failed for the following reasons:
Mock server failed with the following mismatches:
0) The following request was expected but not received:
Leon Luu
11/16/2022, 4:32 PMYousaf Nabi (pactflow.io)
Ryan Thomas
11/16/2022, 11:33 PMcan-i-deploy --to-environment <environmentname>
behavior for the api provider is somewhat unexpected when no environment deploys/releases have happened to the environment yet.
In this scenario I would expect that the can-i-deploy
behavior would not select any pacts for verification because none are in that environment. Instead I found that the behavior was selecting all of the pacts.
i.e.
1. Consumer creates first test and uploads pact contract .json (version abcdef1) [from local machine]
2. Provider uploads open api schema (version xzy1) [from local machine]
3. Looking at the pactflow UI we see there are inconsistencies and fix them.
4. Consumer uploads pact contract .json (version abcdef2) [from local machine]
5. Setup proof-of-concept CICD for consumer
5a. Consumer CICD uploads pact contract version (abcdef3)
5b. Consumer CICD calls can-i-deploy --to-environment production
and gets a 'No' response because no api deployment to production has been recorded.
^ This is the behavior I would expect
6. Setup proof-of-concept CICD for provider
6a. Provider CICD uploads open api schema version (xyz2)
6b. Provider CICD calls can-i-deploy --to-environment production
and gets a 'No' response.
The response shows all 3 consumer contracts (abcdef1, abcdef2, abcdef3) despite none of them being in production. And because abcdef1 is not valid is returns a no.
^ I would expect this to select none of the contracts in scenarios where no consumer version has been deployed to production yet.Yousaf Nabi (pactflow.io)
Nicholas Simons
11/18/2022, 10:29 AMJordan Nazemi
11/22/2022, 8:10 PMAlan Zhu
11/25/2022, 2:31 AM{"sections": [
...
{
"facilities": [
{
"id": 433,
"key": "Swimming Pool (2019 format)",
"name": "Swimming Pool"
}
],
"id": 999,
"key": "Top Facilities",
"name": "Top facilities"
},
{
"facilities": [],
"id": 995,
"key": "Meals",
"name": "Price for meals"
},
{
"facilities": [],
"id": 997,
"key": "Languages Spoken",
"name": "Languages spoken"
}
...
]
}
Harald Bittermann
11/25/2022, 10:19 AMMark Wilson
11/25/2022, 2:42 PMpact-broker create-webhook
in the pipeline I don't seem to get a UUID in response. Do you know how I can obtain it?Anton
11/26/2022, 12:18 PMThomas K
11/27/2022, 2:04 PMsumit ghorpade
11/27/2022, 6:39 PMAnton
11/28/2022, 2:03 PMAlan Zhu
11/29/2022, 6:22 AMsumit ghorpade
11/29/2022, 6:44 AMRingo
11/29/2022, 11:58 AMRingo
11/29/2022, 1:34 PMstart
the main mock server. After that, I create
a new mock server from a pact file. The debug output of the main server shows this:
13:29:03 [DEBUG] (18) pact_mock_server_cli::server: Starting mock server with id 49c8834c-661f-4b65-94ce-03d9384bb330
13:29:03 [DEBUG] (18) pact_mock_server::mock_server: Started mock server on 0.0.0.0:51714
13:29:03 [DEBUG] (18) pact_mock_server_cli::server: mock server started on port 51714
13:29:03 [DEBUG] (18) pact_mock_server_cli::server: Result of starting mock server: Ok(true)
13:29:03 [DEBUG] (4) pact_mock_server_cli::server: Result of thread: Ok(true)
When I run ./pact_mock_server_cli list
after that, the list
call hangs. This is the only debug info shown on the main server:
13:29:30 [DEBUG] (11) hyper::proto::h1::io: parsed 3 headers
13:29:30 [DEBUG] (11) hyper::proto::h1::conn: incoming body is empty
13:29:30 [DEBUG] (11) pact_mock_server_cli::server: main_resource -> resource_exists
13:29:30 [DEBUG] (11) pact_mock_server_cli::server: main_resource -> render_response
Am I doing something wrong? Any known issues with this?sumit ghorpade
11/30/2022, 1:21 PMYousaf Nabi (pactflow.io)
Shuying Lin
12/01/2022, 9:34 PMDmitry Munda
12/02/2022, 8:03 AMdeployedOrReleased
and i want to clarify some stuff
• record-deployment
will do same as getting latest from env tag ? like only latest matters in pact verification
• record-release
- all marked matters in verifications until record-support-ended
made for version ?Arpan Agrawal
12/02/2022, 8:08 AMThomas K
12/04/2022, 2:32 PMmockServer
and instead using something like MockK
? I have tried but get PactMismatchesException
saying the request was not receivedsameena syed
12/06/2022, 11:23 AMBasu Silviu
12/06/2022, 1:24 PMdocker run --rm -w ${PWD} -v ${PWD}:${PWD} -e PACT_BROKER_BASE_URL -e PACT_BROKER_USERNAME -e PACT_BROKER_PASSWORD pactfoundation/pact-cli:latest publish ${PWD}/example/pacts --consumer-app-version fake-git-sha-for-demo-$(date +%s) --tag-with-git-branch
fatal: detected dubious ownership in repository at '/home/myuser/workspace/pact-ruby-cli'
To add an exception for this directory, call:
git config --global --add safe.directory /home/myuser/workspace/pact-ruby-cli
PactBroker::Client::Error - Command `git rev-parse --abbrev-ref HEAD` didn't return anything that could be identified as the current branch.
----------
running
git config --global --add safe.directory /home/myuser/workspace/pact-ruby-cli
doesn't fix the err
----------
running
git rev-parse --abbrev-ref HEAD
returns master
Basu Silviu
12/06/2022, 1:24 PMYouri
12/07/2022, 8:09 AMDmitry Munda
12/07/2022, 12:16 PMdeployedOrReleased
and i want to clarify one more stuff
• we deploy FE app( lets say twice a week ) , which has some support time and is marked as released
• we deploy BE ( lets say twice a week )
both FE and BE parts could be consumers and providers
current BE has deployedOrReleased
selectors, so it verifies all FE in the wiled -thats ok 🙂
at which point / how FE part ( marked as released , lets say 2 months ago ) will be verified against upcoming BE part ?Youri
12/08/2022, 11:43 AM