Joe Risner
10/12/2023, 10:50 PMcan-i-deploy in CI when a change is made in the contract to an existing field’s data type/expected value. For example:
• Verified contract between consumer (main branch) & provider (main branch) has JSON response body field age as an integer
• Consumer team publishes revised contract (feature-age branch) to update age to be a string. Contract for feature-age branch has status “Unverified” so can-i-deploy check in CI fails for no verified contract w/ provider. Pull request is blocked from merging to main due to failing check.
• Provider team implements change to age field changing it from integer to string in a feature branch and creates a pull request. Pull request can-i-deploy CI check fails verification because latest version of main branch in the consumer still has age as an integer (consumer PR is blocked from merging).
In this situation, neither the provider nor the consumer can merge PRs to implement the data type change to an existing field. I’d like to prevent a consumer from merging to main if a contract is unverified or failing when comparing to its provider(s) main branches. And vice versa for providers. can-i-deploy seems to fit the bill for that as a CI check when adding or removing fields, but when I try to change the data type/expected value for a field, I hit this wall. Any guidance would be appreciated!Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Joe Risner
10/13/2023, 2:54 PM