Thomas K
11/02/2022, 3:42 PMcan-i-deploy
please…
We have one consumer app Foo
that consumes let’s say 2 different providers
We have all our provider verification tests etc in place for only one of those providers.
For the other provider, those verification tests have not been added yet and we only have the consumer side expectations/tests done.
This thus fails in can-i-deploy
step because one of the providers hasnt got any verification tests/results, and we are using the same consumer name pacticipant Foo
in all cases, as its all the same single consumer app.
I can see a way around this would be to use different consumer pacticipant names for our contracts between provider A
and our contracts between provider B
, but is this the correct approach? Shouldn’t we just have one consumer pacticipant? But then what do we do in the situation where we are still waiting on provider tests to be added for a provider?
Thanks.Timothy Jones
11/02/2022, 10:44 PMTimothy Jones
11/02/2022, 10:45 PMThomas K
11/02/2022, 11:32 PMTimothy Jones
11/02/2022, 11:32 PMThomas K
11/02/2022, 11:34 PMTimothy Jones
11/02/2022, 11:34 PMTimothy Jones
11/02/2022, 11:34 PMThomas K
11/02/2022, 11:35 PMTimothy Jones
11/02/2022, 11:35 PMpact-broker can-i-deploy --pacticipant Foo --pacticipant Bar
Thomas K
11/02/2022, 11:35 PMTimothy Jones
11/02/2022, 11:36 PMThomas K
11/02/2022, 11:36 PMTimothy Jones
11/02/2022, 11:36 PMCan I deploy the latest version of Foo with tag “master” and the latest version of Bar with tag “master” together?
$ pact-broker can-i-deploy --pacticipant Foo --latest master \
--pacticipant Bar --latest master
Timothy Jones
11/02/2022, 11:37 PMTimothy Jones
11/02/2022, 11:37 PMdifferent consumer participant names ?This will live for a long time
Timothy Jones
11/02/2022, 11:37 PMTimothy Jones
11/02/2022, 11:37 PMThomas K
11/02/2022, 11:38 PMThomas K
11/02/2022, 11:38 PMTimothy Jones
11/02/2022, 11:39 PMThomas K
11/02/2022, 11:41 PMTimothy Jones
11/02/2022, 11:42 PMThomas K
11/02/2022, 11:43 PMThomas K
11/27/2022, 2:09 PM--to
or --to-environment
still checks against all provider services (even ones not ready for can-i-deploy)
the only command ive gotten working as a temp workaround, but is still less than ideal is
pact-broker can-i-deploy --pacticipant ConsumerApp \
--version "$GIT_COMMIT" \
--pacticipant ProviderService \
--branch main
which checks against the latest version on that main
branch but not the versions in the environments.
I don’t really want to have to refactor and add in legacy tagging just to be able to get the specific versions within environments either. Any ideas here please? 🙏Thomas K
11/28/2022, 2:23 PMpact-broker describe-version -a ProviderService -l $TAG -o json | jq '.number'
to get the needed provider version number, something i cant do without the legacy tagging currently, would be good if we could get provider version based on the new environment
instead (maybe a feature request for future 🙂 )Timothy Jones
11/28/2022, 2:33 PMThomas K
11/28/2022, 2:34 PM