Appendix A: Common application properties
+Various properties can be specified inside your application.properties file, inside your application.yml file, or as command line switches.
+This appendix provides a list of common Spring Cloud Contract properties and references to the underlying classes that consume them.
| + + | ++Property contributions can come from additional jar files on your classpath, so you should not consider this an exhaustive list. +Also, you can define your own properties. + | +
A.1. Default application properties
+| Name | +Default | +Description | +
|---|---|---|
stubrunner.amqp.enabled |
+false |
+Whether to enable support for Stub Runner and AMQP. |
+
stubrunner.amqp.mockCOnnection |
+true |
+Whether to enable support for Stub Runner and AMQP mocked connection factory. |
+
stubrunner.classifier |
+stubs |
+The classifier to use by default in ivy co-ordinates for a stub. |
+
stubrunner.cloud.consul.enabled |
+true |
+Whether to enable stubs registration in Consul. |
+
stubrunner.cloud.delegate.enabled |
+true |
+Whether to enable DiscoveryClient’s Stub Runner implementation. |
+
stubrunner.cloud.enabled |
+true |
+Whether to enable Spring Cloud support for Stub Runner. |
+
stubrunner.cloud.eureka.enabled |
+true |
+Whether to enable stubs registration in Eureka. |
+
stubrunner.cloud.ribbon.enabled |
+true |
+Whether to enable Stub Runner’s Ribbon integration. |
+
stubrunner.cloud.stubbed.discovery.enabled |
+true |
+Whether Service Discovery should be stubbed for Stub Runner. If set to false, stubs will get registered in real service discovery. |
+
stubrunner.cloud.zookeeper.enabled |
+true |
+Whether to enable stubs registration in Zookeeper. |
+
stubrunner.consumer-name |
++ | You can override the default {@code spring.application.name} of this field by setting a value to this parameter. |
+
stubrunner.delete-stubs-after-test |
+true |
+If set to {@code false} will NOT delete stubs from a temporary folder after running tests. |
+
stubrunner.fail-on-no-stubs |
+true |
+When enabled, this flag will tell stub runner to throw an exception when no stubs / contracts were found. |
+
stubrunner.generate-stubs |
+false |
+When enabled, this flag will tell stub runner to not load the generated stubs, but convert the found contracts at runtime to a stub format and run those stubs. |
+
stubrunner.http-server-stub-configurer |
++ | Configuration for an HTTP server stub. |
+
stubrunner.ids |
+[] |
+The ids of the stubs to run in "ivy" notation ([groupId]:artifactId:[version]:[classifier][:port]). {@code groupId}, {@code classifier}, {@code version} and {@code port} can be optional. |
+
stubrunner.ids-to-service-ids |
++ | Mapping of Ivy notation based ids to serviceIds inside your application. Example "a:b" → "myService" "artifactId" → "myOtherService" |
+
stubrunner.integration.enabled |
+true |
+Whether to enable Stub Runner integration with Spring Integration. |
+
stubrunner.mappings-output-folder |
++ | Dumps the mappings of each HTTP server to the selected folder. |
+
stubrunner.max-port |
+15000 |
+Max value of a port for the automatically started WireMock server. |
+
stubrunner.min-port |
+10000 |
+Min value of a port for the automatically started WireMock server. |
+
stubrunner.password |
++ | Repository password. |
+
stubrunner.properties |
++ | Map of properties that can be passed to custom {@link org.springframework.cloud.contract.stubrunner.StubDownloaderBuilder}. |
+
stubrunner.proxy-host |
++ | Repository proxy host. |
+
stubrunner.proxy-port |
++ | Repository proxy port. |
+
stubrunner.stream.enabled |
+true |
+Whether to enable Stub Runner integration with Spring Cloud Stream. |
+
stubrunner.stubs-mode |
++ | Pick where the stubs should come from. |
+
stubrunner.stubs-per-consumer |
+false |
+Should only stubs for this particular consumer get registered in HTTP server stub. |
+
stubrunner.username |
++ | Repository username. |
+
wiremock.placeholders.enabled |
+true |
+Flag to indicate that http URLs in generated wiremock stubs should be filtered to add or resolve a placeholder for a dynamic port. |
+
wiremock.rest-template-ssl-enabled |
+false |
++ |
wiremock.server.files |
+[] |
++ |
wiremock.server.https-port |
+-1 |
++ |
wiremock.server.https-port-dynamic |
+false |
++ |
wiremock.server.port |
+8080 |
++ |
wiremock.server.port-dynamic |
+false |
++ |
wiremock.server.stubs |
+[] |
++ |
A.2. Additional application properties
+| + + | +
+The following properties can be passed as a system property (e.g. stubrunner.properties.git.branch) or via an environment variable (e.g. STUBRUNNER_PROPERTIES_GIT_BRANCH) or as a property inside stub runner’s annotation or a JUnit Rule / Extension. In the latter case you can pass git.branch property name instead of the stubrunner.properties.git.branch one.
+ |
+
| Name | +Default | +Description | +
|---|---|---|
stubrunner.properties.pactbroker.provider-name-with-group-id |
+false |
+When using the Pact Broker based approach, you can automatically group id to the provider name. |
+
stubrunner.properties.git.branch |
++ | When using the SCM based approach, you can customize the branch name to check out. |
+
stubrunner.properties.git.commit-message |
+Updating project [$project] with stubs |
+When using the SCM based approach, you can customize the commit message for created stubs. The |
+
stubrunner.properties.git.no-of-attempts |
+10 |
+When using the SCM based approach, you can customize number of retries to push the stubs to Git. |
+
stubrunner.properties.git.username |
++ | When using the SCM based approach, you can pass the username to connect to the Git repository. |
+
stubrunner.properties.git.password |
++ | When using the SCM based approach, you can pass the password to connect to the Git repository. |
+
stubrunner.properties.git.wait-between-attempts |
+1000 |
+When using the SCM based approach, you can customize waiting time in ms between trying to push the stubs to Git. |
+
stubrunner.properties.stubs.find-producer |
+false |
+When using the Stubs protocol, you can toggle this flag to search for contracts via the |
+