diff --git a/README.adoc b/README.adoc index 84644f2332..c236be76fc 100644 --- a/README.adoc +++ b/README.adoc @@ -19,7 +19,6 @@ If you prefer to learn about the project by doing some tutorials, you can check workshops under https://cloud-samples.spring.io/spring-cloud-contract-samples/workshops.html[this link]. - == Project page You can read more about Spring Cloud Contract by going to https://spring.io/projects/spring-cloud-contract[the project page] @@ -208,6 +207,39 @@ IMPORTANT: Remember to set the `Scan Scope` to `All sources` since we apply chec == How to Build Spring Cloud Contract +=== Cloning the repository on Windows + +While cloning this project on Windows, some files in the git repository may exceed the Windows maximum file path limit of 255 characters, which may +result in an incorrectly (probably partially) checked out repository. + +To resolve this issue, you can set the `core.longPaths` attribute to `true` or clone the Spring Cloud Contract repository. + +To set the `core.longPaths` attribute to `true`, you have three options: + +- Change it for all users of the machine (doing so requires administrator privileges): + + +[source,bash] +---- +git config --system core.longPaths true +git clone https://github.com/spring-cloud/spring-cloud-contract.git +---- + +- Change it for the current user (no administrative privileges required): + +[source,bash] +---- +git config --global core.longPaths true +git clone https://github.com/spring-cloud/spring-cloud-contract.git +---- + +- Change for just this repository (administrative privileges depend on where the repository is being cloned to): + +[source,bash] +---- +git clone -c core.longPaths true https://github.com/spring-cloud/spring-cloud-contract.git +---- + IMPORTANT: You need to have all the necessary Groovy plugins installed for your IDE to properly resolve the sources. For example, in Intellij IDEA, having both the Eclipse Groovy Compiler Plugin and the GMavenPlus Intellij diff --git a/docs/src/main/asciidoc/_configprops.adoc b/docs/src/main/asciidoc/_configprops.adoc index 96f6b92343..be24854e0a 100644 --- a/docs/src/main/asciidoc/_configprops.adoc +++ b/docs/src/main/asciidoc/_configprops.adoc @@ -1,46 +1,46 @@ |=== |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.loadbalancer.enabled | true | Whether to enable Stub Runner's Spring Cloud Load Balancer 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.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.loadbalancer.enabled | `true` | Whether to enable Stub Runner's Spring Cloud Load Balancer 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.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 | `[]` | 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.jms.enabled | true | Whether to enable Stub Runner integration with Spring JMS. -|stubrunner.kafka.enabled | true | Whether to enable Stub Runner integration with Spring Kafka. -|stubrunner.kafka.initializer.enabled | true | Whether to allow Stub Runner to take care of polling for messages instead of the KafkaStubMessages component. The latter should be used only on the producer side. +|stubrunner.integration.enabled | `true` | Whether to enable Stub Runner integration with Spring Integration. +|stubrunner.jms.enabled | `true` | Whether to enable Stub Runner integration with Spring JMS. +|stubrunner.kafka.enabled | `true` | Whether to enable Stub Runner integration with Spring Kafka. +|stubrunner.kafka.initializer.enabled | `true` | Whether to allow Stub Runner to take care of polling for messages instead of the KafkaStubMessages component. The latter should be used only on the producer side. |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.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.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.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.reset-mappings-after-each-test | false | -|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 | [] | +|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.reset-mappings-after-each-test | `false` | +|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 | `[]` | |=== \ No newline at end of file diff --git a/docs/src/main/asciidoc/_project-features-contract.adoc b/docs/src/main/asciidoc/_project-features-contract.adoc index 85daf731d5..ca787ffb00 100644 --- a/docs/src/main/asciidoc/_project-features-contract.adoc +++ b/docs/src/main/asciidoc/_project-features-contract.adoc @@ -167,7 +167,7 @@ You can also provide an import to the `contract` function (`import org.springfra [[contract-yml]] === Contract DSL in YML -In order to see a schema of a YAML contract, you can check out the link:yml-schema.html[YML Schema] page. +In order to see a schema of a YAML contract, you can check out the {docs-url}/reference/html/yml-schema.html[YML Schema] page. [[contract-limitations]] === Limitations