Anna Nava
01/23/2024, 11:02 AMProvider Service 's gitlab job, or pactVerify selectors (or other alternatives?),
to run the pactVerify for all the past consumer versions (released) and publish results.... but allow it to fail on the released....
PLUS ONLY really prevent my MR to be merged (ie: not allowed to fail) if and only if the `pactVerify`failed for `latest_from_main_branch`or deployed. (but ignore if it failed a past released version of the consumer)
CONTEXT
I have this scenario
• a Consumer Service publishing a pact when it's merged to it's main branch, and this pact is ready in my pact broker to be verified with Provider Service
• then I have the Provider Service gitlab pipeline, to verify against that pact from Consumer Service with selectors latest_from_main_branch + released_or_deloyed
• Also, I am marking each and all versions of the consumer as released (and only one as deployed)
If my Provider Service 's pactVerify finds 10 released versions (with of them been the latest + deployed) it would run 10 times it's verification and publish those 10 results...
(I am still trying to test if the pactVerify fails only 1/10 (eg the very first version of the consumer) would the total result be PASSED or FAILED )Yousaf Nabi (pactflow.io)
Anna Nava
01/23/2024, 11:59 AMpactVerify task to run against all the consumer's released versions (and publish the results so they are available later on for me to use can I deploy
but my provider's pipeline ONLY to prevent to be merged if only the latest fails (but not to prevent the merge if an old version of the consumer failed)Anna Nava
01/23/2024, 11:59 AMAnna Nava
01/23/2024, 12:10 PMpactVerify from the provider's gitlab's pipeline fails 1/10 released consumer versions (eg the very first version of the consumer, but passes all the other 9 ones, including the latest) ... would the total result be PASSED or FAILED ❓ thinkingAnna Nava
01/23/2024, 12:45 PMcan I merge which only checks against the latest version, which would fail only if the verification against the latest consumer fails, and passes otherwise
(and then of course, later on I will run can I deploy on each of the pipelines that actually deploy any given version of the producer and the provider)Matt (pactflow.io / pact-js / pact-go)
if thethe result would befrom the provider’s gitlab’s pipeline fails 1/10 released consumer versions (eg the very first version of the consumer, but passes all the other 9 ones, including the latest) ... would the total result bepactVerifyorPASSEDFAILED
FAILED , unless the pacts are pending (docs.pact.io/pending).Matt (pactflow.io / pact-js / pact-go)
Anna Nava
02/08/2024, 9:45 AMcan-i-merge checking against the latest version of pacts from all consumers
and setup the blocker for deploying with can-i-deploy which would check the deployed version of all consumers of this producer in that given environmentMatt (pactflow.io / pact-js / pact-go)
Anna Nava
02/08/2024, 10:36 AMYousaf Nabi (pactflow.io)
Anna Nava
02/08/2024, 10:42 AMPact Nirvana I am going to quote this in the blogpost that I'll write at the end of our implementation, hope you dodn't mind?Yousaf Nabi (pactflow.io)
Anna Nava
02/08/2024, 10:52 AMMatt (pactflow.io / pact-js / pact-go)