Heya, im setting up pactflow ci/cd in our company ...
# pactflow
k
Heya, im setting up pactflow ci/cd in our company at the moment, and I am following this guide where possible (our pipelines are set up a little different): https://docs.pact.io/pact_nirvana. I have a question about this gold level in the setup guide. When you push the main branch consumer contract, you can set up a webhook to trigger the main pipeline of the provider, and with the right consumer version selectors, you test if the main branch of the provider is compatible with the main + deployed versions of the consumer. However, what if the main branch of the provider is not yet deployed, and your consumer wants/needs to go to production first, then you lack the verification result for this pair right? (pair being: new consumer version + current provider prd version). As the only information you know is that your new consumer version works with the undeployed main version of the provider. So in addition to testing main provider version against all deployed consumer version, wouldnt you also want to test your new consumer against all deployed provider versions? (somehow?)
m
Actually, it’s mentioned in the webhook setup on step 6: https://docs.pact.io/pact_nirvana/step_6 (specifically https://docs.pact.io/pact_nirvana/step_6#add-a-new-provider-verification-job) When a pact changes, you use the
contract_requiring_verification_published
event to trigger a verification webhook. If verifications are required for deployed or release versions, it will fire one webhook for each of the required verifications (e.g. main branch, and each deployed version). If none are required, then no webhook is fired
• Create a separate provider verification CI job that will be called by a webhook.
• This job takes the following parameters (branch and commit allow multiple webhooks to be specified for deployed/released versions in Step 7)
▪︎ the URL of the changed pact
▪︎ the provider branch
◦ the provider commit