|
1 | 1 | # Example Spring Boot project for the Pact workshop
|
2 | 2 |
|
| 3 | +This workshop should take about 2 hours, depending on how deep you want to go into each topic. |
| 4 | + |
3 | 5 | This workshop is setup with a number of steps that can be run through. Each step is in a branch, so to run through a
|
4 | 6 | step of the workshop just check out the branch for that step (i.e. `git checkout step1`).
|
5 | 7 |
|
| 8 | +## Requirements |
| 9 | + |
| 10 | +* JDK 8+ |
| 11 | +* Docker for step 11 |
| 12 | + |
| 13 | +## Workshop outline: |
| 14 | + |
| 15 | +* [step 1: **Simple Consumer calling Provider**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step1#step-1---simple-consumer-calling-provider) |
| 16 | +* [step 2: **Client Tested but integration fails**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step2#step-2---client-tested-but-integration-fails) |
| 17 | +* [step 3: **Pact to the rescue**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step3#step-3---pact-to-the-rescue) |
| 18 | +* [step 4: **Verify the provider**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step4#step-4---verify-the-provider) |
| 19 | +* [step 5: **Back to the client we go**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step5#step-5---back-to-the-client-we-go) |
| 20 | +* [step 6: **Consumer updates contract for missing products**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step6#step-6---consumer-updates-contract-for-missing-products) |
| 21 | +* [step 7: **Adding the missing states**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step7#step-7---adding-the-missing-states) |
| 22 | +* [step 8: **Authorization**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step8#step-8---authorization) |
| 23 | +* [step 9: **Implement authorisation on the provider**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step9#step-9---implement-authorisation-on-the-provider) |
| 24 | +* [step 10: **Request Filters on the Provider**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step10#step-10---request-filters-on-the-provider) |
| 25 | +* [step 11: **Using a Pact Broker**](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step11#step-11---using-a-pact-broker) |
| 26 | + |
| 27 | +_NOTE: Each step is tied to, and must be run within, a git branch, allowing you to progress through each stage incrementally. For example, to move to step 2 run the following: git checkout step2_ |
6 | 28 |
|
7 | 29 | ## Scenario
|
8 | 30 |
|
@@ -57,3 +79,5 @@ We can run the client with `./gradlew consumer:bootRun` - it should fail with th
|
57 | 79 | ```console
|
58 | 80 | Caused by: org.springframework.web.client.ResourceAccessException: I/O error on GET request for "http://localhost:8085/products": Connection refused: connect; nested exception is java.net.ConnectException: Connection refused: connect
|
59 | 81 | ```
|
| 82 | + |
| 83 | +Move on to [step 2](https://github.com/pact-foundation/pact-workshop-jvm-spring/tree/step2#step-2---client-tested-but-integration-fails) |
0 commit comments