Commit Graph

153 Commits

Author SHA1 Message Date
Marcin Grzejszczak
0fe31ce3a5 Git Stub Downloader (#596)
when stubsMode is set to LOCAL or REMOTE, and repositoryRoot starts with git:// we can clone the provided git repository, and search for the folder with stubs for the given artifact. So if the git repo has a folder structure of groupid/artifactid/version (where group id is either dot or slash separated), then we will provide a path to that repository for the stub runner to harvest the stubs

- externalized versions
- added more debugging messages
- added ContractProjectUpdater that updates the project containing contracts from SCM. ATM supports only git
- added ResourceResolver that retrieves the ProtocolResolvers. It does it via spring.factories entries containing StubDownloaderBuilder. SDP extends ProtocolResovler.
added StubRunner.properties map, that will contain any properties that will be later used by any StubDownloader implementations
- added PUBLISH_STUBS_TO_SCM env var for Docker, so that publishStubsToScm task gets called
- updated docs

Breaking:

- StubDownloaderBuilder extends ProtocolResovler. By default the ProtocolResolver methods return null.
- stubRunnerOptions.stubRepositoryRoot is a Resource not a String
- generateWireMockClientStubs Gradle task got removed
- if folder with contracts has a subfolder called contracts, we will pick contracts from the subfolder

fixes #580
2018-03-31 09:35:00 +02:00
Marcin Grzejszczak
8a9527b600 Fixed the docs 2018-03-19 16:34:38 +01:00
Marcin Grzejszczak
54cff1f19c Merge branch '1.2.x' 2018-03-19 16:33:29 +01:00
Marcin Grzejszczak
8ad4865fb5 Fixed the docs 2018-03-19 16:33:22 +01:00
Marcin Grzejszczak
60d45b5ad3 Merge branch '1.2.x' 2018-03-19 16:32:15 +01:00
Marcin Grzejszczak
51564ab444 Discouraged users from using spring-cloud-contract-wiremock dependency directly
the preferred option is to use `spring-cloud-starter-stub-runner`

fixes gh-348
2018-03-19 16:31:12 +01:00
Marcin Grzejszczak
8e4360535c Added HttpStatus delegate in the Groovy DSL Response
with this change there are numerous helper methods that should provide a more descriptive DSL for the response status. Instead of a numerical status you can now call a method e.g. instead of 200 call OK()

fixes gh-575
2018-03-15 10:00:45 +01:00
Olga Maciaszek-Sharma
df76404095 Add short tours (#565)
* Fix links to contract-dsl section.
* Add three second tour.
* Add consumer side info in the three second tour.
* Add three-minute tour.
* Generate readme changes.
2018-03-07 15:00:37 -05:00
Marcin Grzejszczak
f6b6b43c9f Merge branch '1.2.x'
also accidentally fixed gh-507
2018-02-16 16:05:54 +01:00
Marcin Grzejszczak
d87e669a23 Adding a mechanism to disable the local vs remote stub location
When fetching stubs / contracts in a CI, shared environment, what might happen is that
both the producer and the consumer reuse the same local Maven repository. Due to this,
the framework, responsible for downloading a stub JAR from remote location,
can't decide which JAR should be picked, local or remote one. That caused
the `"The artifact was found in the local repository but you have explicitly
stated that it should be downloaded from a remote one"` exception
and failed the build.

For such cases we're introducing the property mechanism:

- via `stubrunner.snapshot-check.skip` system property
- via `STUBRUNNER_SNAPSHOT_CHECK_SKIP` environment variable

if either of these values is set to `true`, then the stub downloader will not
verify the origin of the downloaded JAR.

fixes gh-545
2018-02-16 13:35:56 +01:00
buildmaster
ab660f8944 Going back to snapshots 2018-02-09 16:08:53 +00:00
buildmaster
c510a555b7 Update SNAPSHOT to 1.2.3.RELEASE 2018-02-09 15:54:44 +00:00
Marcin Grzejszczak
d80f31b72a Merge branch '1.2.x' 2018-01-25 12:50:49 +01:00
Marcin Grzejszczak
37d7e8cfd3 Docker images (#527)
with this change we're adding generation of 2 docker images - verifier and stub runner
we also added a project `spring-cloud-contract-stub-runner-boot` which contains a far jar with stub runner boot

fixes gh-526, gh-516
2018-01-24 17:07:22 +01:00
Marcin Grzejszczak
65ee88aa23 Merge branch '1.2.x' 2018-01-19 01:18:33 +01:00
Marcin Grzejszczak
b745d9a7e3 YAML contracts (#522)
with this change we allow the users to use YAML to define contracts

fixes gh-300 gh-508
helps with #501
2018-01-19 00:27:15 +01:00
buildmaster
f5561d3f9b Going back to snapshots 2018-01-16 17:20:15 +00:00
buildmaster
19deb01269 Update SNAPSHOT to 1.2.2.RELEASE 2018-01-16 17:09:51 +00:00
Marcin Grzejszczak
748e512f4d Introduces explicit mode of stub downloading (#503)
* Introduces explicit mode of stub downloading

you have to explicitly provide the mode [CLASSPATH, REMOTE, LOCAL] of how you want to fetch and register stubs

fixes gh-287
2018-01-03 08:25:29 +01:00
buildmaster
5b2cc6f258 Going back to snapshots 2017-11-16 18:20:37 +00:00
buildmaster
f9908cefd2 Update SNAPSHOT to 2.0.0.M4 2017-11-16 18:17:31 +00:00
Stefan Eicher
a3144b49d9 typo (#448) 2017-11-13 11:28:44 +01:00
Marcin Grzejszczak
cf2350ff3f Updated readme 2017-09-12 11:42:16 +02:00
Marcin Grzejszczak
bf0159dbc7 Merge branch '1.1.x' 2017-08-31 14:47:05 +02:00
Marcin Grzejszczak
2043548e4d Added missing links 2017-08-31 14:46:58 +02:00
Marcin Grzejszczak
2777b98485 Merge branch '1.1.x' 2017-08-30 16:40:04 +02:00
Marcin Grzejszczak
babd671e32 Rebalanced docs; fixes #403 2017-08-30 16:31:47 +02:00
Marcin Grzejszczak
587a0c37a0 New docs; fixes #395 2017-08-29 09:53:47 +02:00
Marcin Grzejszczak
2a3495f80a Updated docs 2017-07-31 16:28:51 +02:00
Marcin Grzejszczak
4de7d38a51 Added support for referencing file contents in the contract (#360)
without this change, large bodies can't be parsed by the compiler
with this change we allow those bodies to be read from files

fixes #357
2017-07-18 16:26:44 +02:00
Marcin Grzejszczak
0c234e089c Adding option to dump mappings to files (#356)
without this feature we're missing an option to print all mappings registered for servers
with this feature it will be much easier to debug what was registered in which http server stub. The mappings will be dumped to files with name artifactName_registeredPort

fixes #355
2017-07-13 15:30:34 +02:00
Marcin Grzejszczak
da85b3f252 Merge branch '1.1.x' 2017-07-04 13:19:47 +02:00
Dmitri Karpovich
f0f6a26d04 fixed wrong path of the contracts in documentation 2017-07-04 13:19:39 +02:00
Marcin Grzejszczak
6b71bb95fb Merge branch '1.1.x' 2017-07-04 13:17:10 +02:00
Dmitri Karpovich
06a3a5ff2d fixed typo 2017-07-04 13:12:36 +02:00
Marcin Grzejszczak
7890e75328 Merge branch '1.1.x' 2017-06-28 15:04:18 +02:00
Marcin Grzejszczak
36409ac400 Fixing the way queue binding key gets used for rabbit listener
without this change we're very strict in terms of the number of called send methods on the rabbittemplate
with this change we accept that the method could have been called more than once

fixes #332
2017-06-28 11:46:22 +02:00
Marcin Grzejszczak
a58461f1c0 Bumped libs
WireMock to 2.6.0
 Boot to 1.5.5.BUILD-SNAPSHOT
 jopt to 5.0.3
 spock global unroll to 0.5.1
 hoverfly to 0.2.2
 commons3 to 3.6

fixes #317
2017-06-26 11:01:55 +02:00
Marcin Grzejszczak
82fda14b61 Bumped versions 2017-06-20 15:10:16 +02:00
Marcin Grzejszczak
12ce468b6d Removing deprecations 2017-06-19 18:46:02 +02:00
Marcin Grzejszczak
f599a8d745 Updated versions 2017-05-26 20:34:29 +02:00
Marcin Grzejszczak
76de9cec36 Bumped versions after release 2017-05-26 14:57:34 +02:00
Marcin Grzejszczak
3c8b8ac81d Added workshops to the docs 2017-05-26 14:51:32 +02:00
Marcin Grzejszczak
205bced50c Polish 2017-05-10 10:35:18 +02:00
Marcin Grzejszczak
e459763e7c Polish 2017-05-10 10:33:36 +02:00
Marcin Grzejszczak
4c4a18ed22 Bumped versions after release 2017-05-05 12:31:03 +02:00
Marcin Grzejszczak
e9306448f9 Going back to snapshots 2017-05-05 12:23:41 +02:00
Marcin Grzejszczak
bd67bb2f26 Update SNAPSHOT to 1.0.5.RELEASE 2017-05-05 12:12:38 +02:00
Marcin Grzejszczak
5d4da96544 Added missing code 2017-05-04 16:34:03 +02:00
Marcin Grzejszczak
08e6493a57 Merge branch '1.0.x' 2017-04-26 13:44:37 +02:00