Milda
11/06/2024, 4:31 PMLaymui Toh
11/08/2024, 2:38 AM"test:integration": "sam local invoke ProductEventHandler --event ./__tests__/events/update.json",
this is to trigger the event to update to the SNS topics? this is different from running yarn test which is to generate the pact file?
docs.pactflow.io
Example NodeJS AWS SNS Consumer | PactFlow Documentation
Source CodeSravan Kumar
11/15/2024, 6:26 AMRishav Singh
11/19/2024, 1:14 PMAlex Kaufman
11/20/2024, 12:18 AMJegadeesan Ponnusamy
11/26/2024, 8:44 PMRuth
12/03/2024, 7:36 AMcan I deploy
step also shows a missing verification
Computer says no ¯\_(ツ)_/¯
CONSUMER | C.VERSION | PROVIDER | P.VERSION | SUCCESS? | RESULT#
--------------------------------------|---------------------|--------------------------------|---------------------|----------|--------
Ratenkredit-Service-Template | cd4f035... | Partnermanagement-Kontaktdaten | 2024.12.02.10.35.40 | true | 1
Ratenkredit-Service-Template-External | 2024-12-02T18-24-47 | Ratenkredit-Service-Template | ??? | ??? |
Any idea what we are doing wrong?
Happy to give more insides if neededVince Lee
12/03/2024, 11:19 AM${user.mySecretName}
and it comes back with Unknown dynamic variable
. I'm using the new UI.
Update: it works when you create a new webhook, but not when you are editing an existing one.Dustin Iser
12/03/2024, 9:42 PM{
"error": {
"message": "Cannot read properties of undefined (reading 'type')"
}
}
I can't figure out what that means. Any help?Iaroslav Dotsenko
12/06/2024, 11:06 AMKenneth Krause
12/06/2024, 3:25 PMТронь Богдан
12/09/2024, 10:08 PMcan-i-deploy
script when I run it from the Consumer app for the QA environment? What would happen if the Provider QA environment was associated not with a master branch?
So, what I don't really understand is when the Provider publishes verification results, how are they matched to a specific environment?Paolo Laurenti
12/11/2024, 10:21 AMValerio Iachini
12/13/2024, 9:14 AMcan-i-deploy \
--pacticipant ${PACTICIPANT} \
--version ${GIT_COMMIT} \
--to-environment ${ENVIRONMENT} \
--retry-while-unknown 30 \
--retry-interval 10
Thanks!Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
can-i-deploy
step.Matt (pactflow.io / pact-js / pact-go)
can-i-deploy
prevents you deploying something that is unsafe (guards against various scenarios, including gaps in the test “matrix”, race conditions)Milda
12/16/2024, 3:07 PMapplication/x-www-form-urlencoded
request, it was defined as per the OAS3 spec (type: object
, then key-value pairs as properties) and sent as key-value pairs, string format, by the consumer; i.e. "key=value&key2=value2"
.
Issue arose when adding a 2nd request body option for an application/json
. Now, all of a sudden, the contract interaction that worked previously (for x-www-form-urlencoded
) is failing, saying the request body must be an object. A new interaction for the application/json
works (with a json request body), but the old one (form) does not.
Both application/json
and application/x-www-form-urlencoded
are expected to work, as long as one of them is provided for the POST request.
Any ideas on whether this is an error on our end or a bug in the swagger validator?
Relevant bits of code:
Consumer contract relevant part (looks the same when passing and when failing w/ application/json):
"request": {
"method": "post",
"path": "/transfers/create",
"headers": {
"X-Request-Id": "96c21705-fbea-4be0-8e3f-6b9543cad0d7",
"Content-Type": "application/x-www-form-urlencoded"
},
"body": "source_account_id=a66ca63f-e668-47af-8bb9-74363240d781&destination_account_id=22ed17b5-b90c-424e-aa78-d24928b1778e¤cy=USD&amount=150.00&reason=reason&unique_request_id=58e78791-e0e5-012c-2dee-001e52f3c730&request_id=96c21705-fbea-4be0-8e3f-6b9543cad0d7"
},
OAS schema old (worked)
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
request_id:
type: string
description: The request ID used for tracing requests set in the request body
principal_identifier:
$ref: "#/components/schemas/PrincipalIdentifier"
source_account_id:
description: Account UUID of the paying account.
type: string
format: uuid
destination_account_id:
description: Account UUID of the receiving account.
type: string
format: uuid
currency:
description: Three-letter ISO currency code.
type: string
pattern: '^[A-Z]{3}$'
amount:
description: Amount
type: string
format: decimal
pattern: '^(\d+(\.\d{1,3})?)$'
reason:
description: User-generated reason for transfer, freeform text.
type: string
maxLength: 255
unique_request_id:
description: User-generated idempotency key. The value must be 100 characters or fewer.
type: string
maxLength: 100
required:
- source_account_id
- destination_account_id
- currency
- amount
New schema reuses the same schema, just adding an extra content type, i.e.
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: "#/components/schemas/<schema>"
application/json:
schema:
$ref: "#/components/schemas/<schema>"
error:
Request body is incompatible with the request body schema in the spec file: must be object
Ta!Romain Létendart
12/19/2024, 4:38 PMSantosh Kumar
01/13/2025, 9:52 AMPaolo Laurenti
01/14/2025, 10:37 AMHernan Mateika
01/14/2025, 6:17 PMJack Wheatley
01/15/2025, 8:42 PMD
02/03/2025, 8:51 AMsomeProxies array[object] or null
name string or null
enabled boolean
defaultSettlement integer<int32> or null
Allowed values:
1 2 null
My consumer contract contains this
"someProxies ": [
{
"defaultSettlement": null,
"enabled": true,
"name": "My Settlement"
}
However I get this error for the "defaultSettlement"
Response body is incompatible with the response body schema in the spec file: must be equal to one of the allowed values
Can anyone help figure out whats going wrong here?
ps. I am using null, because I cant figure out a way cast to int due to the way the nullable definition is set up.Paul Beigang
02/04/2025, 1:59 PMGabriel Vasconcelos
02/07/2025, 2:46 PMPiyush Sardana
02/08/2025, 9:49 AM-> "Forbidden. Either you are using a read only token for a request that requires a write token (the most likely cause), or you do not have the required permissions.\n"
read 162 bytes
Conn keep-alive
Forbidden. Either you are using a read only token for a request that requires a write token (the most likely cause), or you do not have the required permissions.
publish-pact:
stage: publish_pact
image: pactfoundation/pact-cli:latest
needs:
- build-and-test
script:
- echo "Publishing consumer pacts to Pact Broker"
- >-
pact-broker publish target/pacts
--broker-base-url="${PACTFLOW_HOST_URL}"
--broker-token="${PACTFLOW_IAM_READ_WRITE_TOKEN}"
--consumer-app-version="${CI_COMMIT_SHA}"
--branch="${CI_COMMIT_BRANCH}"
--merge
--verbose
artifacts:
when: always
rules:
- if: $CI_COMMIT_BRANCH
Spencer
02/11/2025, 3:34 PMRishav Singh
02/12/2025, 10:41 AMpublish-provider-contract
operation, I don't see it here ?Matt (pactflow.io / pact-js / pact-go)