Skip to main content

Consumer-Driven Contract Testing CI/CD Workshop (Legacy)

A workshop demonstrating how to set up a CI/CD pipeline for a consumer and provider using Pact, PactFlow and Github Actions.

It uses the PactFlow example-consumer-legacy and example-provider-legacy repositories. These are written in Node, however, extensive node experience will not be required for the workshop.

Goals

  • To understand how Pact and PactFlow fit into the CI/CD pipelines of a consumer and provider.
  • To understand the workflows involved in making changes to both consumer and provider.
  • To understand how Pact + PactFlow stop breaking changes from being deployed to a given environment.
info

This workshop uses the outdated method of publishing and verifying pacts with pseudo branches known as tags.

The recommended workflow uses branches & record-deployment first-class features of Pact/PactFlow and uses features not available with tags .

All of the major Pact client libraries have support, and a full support matrix can be shown here.

If you are not using one of the libraries that currently supported, we would recommend running through the new workshop regardless, as it will showcase advanced features of Pact.

If you are still using tags and need more of a reason to switch, have a read of these posts