pact-provider-verifier 1.27.1 → 1.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -0
- data/README.md +11 -11
- data/lib/pact/provider_verifier/app.rb +17 -2
- data/lib/pact/provider_verifier/cli/verify.rb +4 -4
- data/lib/pact/provider_verifier/git.rb +1 -1
- data/lib/pact/provider_verifier/version.rb +1 -1
- metadata +10 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4d1650e2874f85a92584bd114367df7d3df6c86030249c7d754ea05553e336cb
|
|
4
|
+
data.tar.gz: 4ae568f9c7c34942ea6a5245d93d47edbc67d13631535beb35ab8d43c06e55be
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1fbeab699e77f4c6ef85a5b4dfd5ff83165e091dbc3a0f455b363e30cf45f90a25489e65e1d6e7616fd6b698d9022cd97df05a35873a5f248cc8eff934d87fe8
|
|
7
|
+
data.tar.gz: 331ebcaaa81632a537b94af9582b38ab2b0fbec4c937db0835bf8390ed92d08a12ab03888e8f9f8f81a1e3899edc9bfe0f5560118ebc8c619e3832f7ff8ee55e
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
<a name="v1.28.0-1"></a>
|
|
2
|
+
### v1.28.0-1 (2020-01-22)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
#### Features
|
|
6
|
+
|
|
7
|
+
* allow Pact Broker URL and credentials to be set via environment variables ([c257abf](/../../commit/c257abf))
|
|
8
|
+
* ensure output stream is configured to point to the error stream before fetching the pacts so the JSON and XML parsing don't get corrupted ([d816980](/../../commit/d816980))
|
|
9
|
+
* use `lib/pact/provider_verifier/git.rb` to get git sha ([2dd3591](/../../commit/2dd3591))
|
|
10
|
+
|
|
11
|
+
|
|
1
12
|
<a name="v1.27.1-1"></a>
|
|
2
13
|
### v1.27.1-1 (2020-01-16)
|
|
3
14
|
|
data/README.md
CHANGED
|
@@ -45,13 +45,13 @@ Options:
|
|
|
45
45
|
-c, [--provider-states-setup-url=PROVIDER_STATES_SETUP_URL]
|
|
46
46
|
# Base URL to setup the provider states at
|
|
47
47
|
[--pact-broker-base-url=PACT_BROKER_BASE_URL]
|
|
48
|
-
# Base URL of the Pact Broker from which to retrieve the pacts.
|
|
48
|
+
# Base URL of the Pact Broker from which to retrieve the pacts. Can also be set using the environment variable PACT_BROKER_BASE_URL.
|
|
49
49
|
-n, [--broker-username=BROKER_USERNAME]
|
|
50
|
-
# Pact Broker basic auth username
|
|
50
|
+
# Pact Broker basic auth username. Can also be set using the environment variable PACT_BROKER_USERNAME.
|
|
51
51
|
-p, [--broker-password=BROKER_PASSWORD]
|
|
52
|
-
# Pact Broker basic auth password
|
|
52
|
+
# Pact Broker basic auth password. Can also be set using the environment variable PACT_BROKER_PASSWORD.
|
|
53
53
|
-k, [--broker-token=BROKER_TOKEN]
|
|
54
|
-
# Pact Broker bearer token
|
|
54
|
+
# Pact Broker bearer token. Can also be set using the environment variable PACT_BROKER_TOKEN.
|
|
55
55
|
[--provider=PROVIDER]
|
|
56
56
|
[--consumer-version-tag=TAG]
|
|
57
57
|
# Retrieve the latest pacts with this consumer version tag. Used in conjunction with --provider. May be specified multiple times.
|
|
@@ -81,15 +81,15 @@ Options:
|
|
|
81
81
|
# Default: 0
|
|
82
82
|
|
|
83
83
|
Description:
|
|
84
|
-
To verify a pact from a known URL, specify one or more PACT_URL arguments. If the pact
|
|
85
|
-
hosted in a Pact Broker that uses authentication, specify the relevant
|
|
86
|
-
--broker-username/--broker-password or --broker-token fields. To dynamically fetch
|
|
87
|
-
from a Pact Broker based on the provider name, specify the
|
|
88
|
-
--provider and relevant authentication fields.
|
|
84
|
+
To verify a pact from a known URL, specify one or more PACT_URL arguments. If the pact
|
|
85
|
+
is hosted in a Pact Broker that uses authentication, specify the relevant
|
|
86
|
+
--broker-username/--broker-password or --broker-token fields. To dynamically fetch
|
|
87
|
+
pacts from a Pact Broker based on the provider name, specify the
|
|
88
|
+
--pact-broker-base-url, --provider and relevant authentication fields.
|
|
89
89
|
|
|
90
90
|
Selectors: These are specified using JSON strings. The keys are 'tag' (the name of the consumer
|
|
91
|
-
version tag) and 'latest' (true|false). For example '{"tag": "master", "latest":
|
|
92
|
-
For a detailed explanation of selectors, see https://pact.io/selectors
|
|
91
|
+
version tag) and 'latest' (true|false). For example '{"tag": "master", "latest":
|
|
92
|
+
true}'. For a detailed explanation of selectors, see https://pact.io/selectors
|
|
93
93
|
```
|
|
94
94
|
|
|
95
95
|
## Examples
|
|
@@ -50,6 +50,7 @@ module Pact
|
|
|
50
50
|
|
|
51
51
|
|
|
52
52
|
def setup
|
|
53
|
+
configure_output
|
|
53
54
|
print_deprecation_note
|
|
54
55
|
set_environment_variables
|
|
55
56
|
require_rspec_monkeypatch_for_jsonl
|
|
@@ -90,6 +91,14 @@ module Pact
|
|
|
90
91
|
end
|
|
91
92
|
end
|
|
92
93
|
|
|
94
|
+
def configure_output
|
|
95
|
+
if options[:format] && !options[:out]
|
|
96
|
+
# Don't want to mess up the JSON parsing with messages to stdout, so send it to stderr
|
|
97
|
+
require 'pact/configuration'
|
|
98
|
+
Pact.configuration.output_stream = Pact.configuration.error_stream
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
|
|
93
102
|
def configure_reverse_proxy
|
|
94
103
|
provider_base_url = options.provider_base_url
|
|
95
104
|
Rack::ReverseProxy.new do
|
|
@@ -173,18 +182,24 @@ module Pact
|
|
|
173
182
|
Pact.clear_configuration
|
|
174
183
|
Pact.clear_consumer_world
|
|
175
184
|
Pact.clear_provider_world
|
|
185
|
+
configure_output
|
|
176
186
|
configure_service_provider
|
|
177
187
|
end
|
|
178
188
|
|
|
179
189
|
def all_pact_urls
|
|
180
|
-
http_client_options = {
|
|
190
|
+
http_client_options = {
|
|
191
|
+
username: options.broker_username || ENV['PACT_BROKER_USERNAME'],
|
|
192
|
+
password: options.broker_password || ENV['PACT_BROKER_PASSWORD'],
|
|
193
|
+
token: options.broker_token || ENV['PACT_BROKER_TOKEN'],
|
|
194
|
+
verbose: options.verbose
|
|
195
|
+
}
|
|
181
196
|
AggregatePactConfigs.call(
|
|
182
197
|
pact_urls,
|
|
183
198
|
options.provider,
|
|
184
199
|
consumer_version_tags,
|
|
185
200
|
consumer_version_selectors,
|
|
186
201
|
provider_version_tags,
|
|
187
|
-
options.pact_broker_base_url,
|
|
202
|
+
options.pact_broker_base_url || ENV['PACT_BROKER_BASE_URL'],
|
|
188
203
|
http_client_options,
|
|
189
204
|
{ enable_pending: options.enable_pending }
|
|
190
205
|
)
|
|
@@ -25,10 +25,10 @@ module Pact
|
|
|
25
25
|
"\n\n" + SELECTOR_DOCS
|
|
26
26
|
method_option :provider_base_url, aliases: "-h", desc: "Provider host URL", :required => true
|
|
27
27
|
method_option :provider_states_setup_url, aliases: "-c", desc: "Base URL to setup the provider states at", :required => false
|
|
28
|
-
method_option :pact_broker_base_url, desc: "Base URL of the Pact Broker from which to retrieve the pacts.", :required => false
|
|
29
|
-
method_option :broker_username, aliases: "-n", desc: "Pact Broker basic auth username", :required => false
|
|
30
|
-
method_option :broker_password, aliases: "-p", desc: "Pact Broker basic auth password", :required => false
|
|
31
|
-
method_option :broker_token, aliases: "-k", desc: "Pact Broker bearer token", :required => false
|
|
28
|
+
method_option :pact_broker_base_url, desc: "Base URL of the Pact Broker from which to retrieve the pacts. Can also be set using the environment variable PACT_BROKER_BASE_URL.", :required => false
|
|
29
|
+
method_option :broker_username, aliases: "-n", desc: "Pact Broker basic auth username. Can also be set using the environment variable PACT_BROKER_USERNAME.", :required => false
|
|
30
|
+
method_option :broker_password, aliases: "-p", desc: "Pact Broker basic auth password. Can also be set using the environment variable PACT_BROKER_PASSWORD.", :required => false
|
|
31
|
+
method_option :broker_token, aliases: "-k", desc: "Pact Broker bearer token. Can also be set using the environment variable PACT_BROKER_TOKEN.", :required => false
|
|
32
32
|
method_option :provider, required: false
|
|
33
33
|
method_option :consumer_version_tag, type: :array, banner: "TAG", desc: "Retrieve the latest pacts with this consumer version tag. Used in conjunction with --provider. May be specified multiple times.", :required => false
|
|
34
34
|
method_option :consumer_version_selector, type: :array, banner: "SELECTOR", desc: "JSON string specifying a selector that identifies which pacts to verify. May be specified multiple times. See below for further documentation.", :required => false
|
|
@@ -5,7 +5,7 @@ require 'pact/provider_verifier/error'
|
|
|
5
5
|
module Pact
|
|
6
6
|
module ProviderVerifier
|
|
7
7
|
module Git
|
|
8
|
-
COMMAND = 'git
|
|
8
|
+
COMMAND = 'git rev-parse --abbrev-ref HEAD'.freeze
|
|
9
9
|
BRANCH_ENV_VAR_NAMES = %w{BUILDKITE_BRANCH CIRCLE_BRANCH TRAVIS_BRANCH GIT_BRANCH GIT_LOCAL_BRANCH APPVEYOR_REPO_BRANCH CI_COMMIT_REF_NAME}.freeze
|
|
10
10
|
|
|
11
11
|
def self.branch
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pact-provider-verifier
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.28.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Matt Fellows
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2020-01-
|
|
12
|
+
date: 2020-01-22 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: rspec
|
|
@@ -31,14 +31,20 @@ dependencies:
|
|
|
31
31
|
requirements:
|
|
32
32
|
- - "~>"
|
|
33
33
|
- !ruby/object:Gem::Version
|
|
34
|
-
version: '1.
|
|
34
|
+
version: '1.46'
|
|
35
|
+
- - ">="
|
|
36
|
+
- !ruby/object:Gem::Version
|
|
37
|
+
version: 1.46.1
|
|
35
38
|
type: :runtime
|
|
36
39
|
prerelease: false
|
|
37
40
|
version_requirements: !ruby/object:Gem::Requirement
|
|
38
41
|
requirements:
|
|
39
42
|
- - "~>"
|
|
40
43
|
- !ruby/object:Gem::Version
|
|
41
|
-
version: '1.
|
|
44
|
+
version: '1.46'
|
|
45
|
+
- - ">="
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: 1.46.1
|
|
42
48
|
- !ruby/object:Gem::Dependency
|
|
43
49
|
name: pact-message
|
|
44
50
|
requirement: !ruby/object:Gem::Requirement
|