Consumer-Driven Contract Testing CI/CD Workshop

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

It uses the API Hub for Contract Testing example-consumer and example-provider repositories. These are written in Node; however, extensive node experience will not be required for the workshop.

Goals

  • To understand how Pact and API Hub for Contract Testing 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 + API Hub for Contract Testing stop breaking changes from being deployed to a given environment.

Important

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

This workflow uses branches & record-deployment first-class features of Pact/API Hub for Contract Testing 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, you can follow previous method of publishing and verifying pacts using tags via our ci/cd legacy workshop.

We would recommend running this 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

Publication date: