pact_broker-client 1.41.0 → 1.46.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +21 -0
  3. data/CHANGELOG.md +57 -0
  4. data/README.md +69 -48
  5. data/doc/pacts/markdown/Pact Broker Client - Pact Broker.md +79 -102
  6. data/doc/pacts/markdown/Pact Broker Client - Pactflow.md +94 -0
  7. data/doc/pacts/markdown/README.md +1 -0
  8. data/lib/pact_broker/client/backports.rb +9 -0
  9. data/lib/pact_broker/client/base_command.rb +98 -0
  10. data/lib/pact_broker/client/can_i_deploy.rb +40 -5
  11. data/lib/pact_broker/client/cli/broker.rb +18 -160
  12. data/lib/pact_broker/client/cli/custom_thor.rb +12 -16
  13. data/lib/pact_broker/client/cli/deployment_commands.rb +94 -0
  14. data/lib/pact_broker/client/cli/environment_commands.rb +70 -0
  15. data/lib/pact_broker/client/cli/pacticipant_commands.rb +53 -0
  16. data/lib/pact_broker/client/cli/webhook_commands.rb +122 -0
  17. data/lib/pact_broker/client/deployments.rb +4 -0
  18. data/lib/pact_broker/client/deployments/record_deployment.rb +38 -0
  19. data/lib/pact_broker/client/deployments/record_release.rb +99 -0
  20. data/lib/pact_broker/client/deployments/record_support_ended.rb +103 -0
  21. data/lib/pact_broker/client/deployments/record_undeployment.rb +127 -0
  22. data/lib/pact_broker/client/describe_text_formatter.rb +23 -0
  23. data/lib/pact_broker/client/environments.rb +6 -0
  24. data/lib/pact_broker/client/environments/create_environment.rb +31 -0
  25. data/lib/pact_broker/client/environments/delete_environment.rb +27 -0
  26. data/lib/pact_broker/client/environments/describe_environment.rb +26 -0
  27. data/lib/pact_broker/client/environments/environment_command.rb +66 -0
  28. data/lib/pact_broker/client/environments/list_environments.rb +30 -0
  29. data/lib/pact_broker/client/environments/text_formatter.rb +30 -0
  30. data/lib/pact_broker/client/environments/update_environment.rb +31 -0
  31. data/lib/pact_broker/client/generate_display_name.rb +27 -0
  32. data/lib/pact_broker/client/hal/entity.rb +31 -6
  33. data/lib/pact_broker/client/hal/http_client.rb +8 -2
  34. data/lib/pact_broker/client/hal/link.rb +8 -0
  35. data/lib/pact_broker/client/hal_client_methods.rb +1 -3
  36. data/lib/pact_broker/client/matrix/text_formatter.rb +21 -13
  37. data/lib/pact_broker/client/pacticipants.rb +6 -0
  38. data/lib/pact_broker/client/pacticipants/create.rb +24 -34
  39. data/lib/pact_broker/client/pacticipants/describe.rb +33 -0
  40. data/lib/pact_broker/client/pacticipants/list.rb +34 -0
  41. data/lib/pact_broker/client/pacticipants/text_formatter.rb +41 -0
  42. data/lib/pact_broker/client/string_refinements.rb +56 -0
  43. data/lib/pact_broker/client/version.rb +1 -1
  44. data/lib/pact_broker/client/versions.rb +4 -1
  45. data/lib/pact_broker/client/versions/describe.rb +3 -1
  46. data/lib/pact_broker/client/versions/formatter.rb +3 -1
  47. data/lib/pact_broker/client/versions/json_formatter.rb +5 -3
  48. data/lib/pact_broker/client/versions/text_formatter.rb +3 -1
  49. data/lib/pact_broker/client/webhooks/create.rb +14 -8
  50. data/pact-broker-client.gemspec +1 -0
  51. data/script/record-deployments-and-releases.sh +18 -0
  52. data/script/webhook-commands.sh +12 -0
  53. data/spec/fixtures/approvals/can_i_deploy_failure_dry_run.approved.txt +7 -0
  54. data/spec/fixtures/approvals/can_i_deploy_success_dry_run.approved.txt +7 -0
  55. data/spec/fixtures/approvals/describe_environment.approved.txt +7 -0
  56. data/spec/fixtures/approvals/describe_pacticipant.approved.txt +2 -0
  57. data/spec/fixtures/approvals/list_environments.approved.txt +3 -0
  58. data/spec/integration/describe_environment_spec.rb +31 -0
  59. data/spec/lib/pact_broker/client/can_i_deploy_spec.rb +62 -2
  60. data/spec/lib/pact_broker/client/cli/broker_can_i_deploy_spec.rb +17 -4
  61. data/spec/lib/pact_broker/client/cli/broker_publish_spec.rb +1 -1
  62. data/spec/lib/pact_broker/client/cli/broker_run_webhook_commands_spec.rb +7 -5
  63. data/spec/lib/pact_broker/client/deployments/record_deployment_spec.rb +204 -0
  64. data/spec/lib/pact_broker/client/deployments/record_support_ended_spec.rb +208 -0
  65. data/spec/lib/pact_broker/client/deployments/record_undeployment_spec.rb +219 -0
  66. data/spec/lib/pact_broker/client/environments/delete_environment_spec.rb +120 -0
  67. data/spec/lib/pact_broker/client/environments/describe_environment_spec.rb +89 -0
  68. data/spec/lib/pact_broker/client/environments/update_environment_spec.rb +167 -0
  69. data/spec/lib/pact_broker/client/generate_display_name_spec.rb +39 -0
  70. data/spec/lib/pact_broker/client/hal/entity_spec.rb +2 -2
  71. data/spec/lib/pact_broker/client/pacticipants/create_spec.rb +2 -2
  72. data/spec/pacts/pact_broker_client-pact_broker.json +88 -108
  73. data/spec/pacts/pact_broker_client-pactflow.json +118 -0
  74. data/spec/service_providers/create_environment_spec.rb +78 -0
  75. data/spec/service_providers/list_environments_spec.rb +77 -0
  76. data/spec/service_providers/pact_broker_client_matrix_ignore_spec.rb +1 -1
  77. data/spec/service_providers/pact_broker_client_register_repository_spec.rb +2 -2
  78. data/spec/service_providers/pact_helper.rb +15 -10
  79. data/spec/service_providers/pactflow_webhooks_create_spec.rb +86 -0
  80. data/spec/service_providers/pacticipants_create_spec.rb +5 -4
  81. data/spec/service_providers/publish_pacts_spec.rb +3 -1
  82. data/spec/service_providers/record_deployment_spec.rb +14 -32
  83. data/spec/service_providers/record_release_spec.rb +132 -0
  84. data/spec/service_providers/record_undeployment_spec.rb +166 -0
  85. data/spec/service_providers/webhooks_create_spec.rb +1 -1
  86. data/spec/spec_helper.rb +15 -2
  87. data/spec/support/approvals.rb +1 -1
  88. data/spec/support/shared_context.rb +2 -1
  89. data/tasks/pact.rake +21 -1
  90. metadata +82 -7
  91. data/lib/pact_broker/client/versions/record_deployment.rb +0 -109
  92. data/lib/pact_broker/client/versions/record_undeployment.rb +0 -102
  93. data/spec/lib/pact_broker/client/versions/record_deployment_spec.rb +0 -82
@@ -0,0 +1,166 @@
1
+ require 'service_providers/pact_helper'
2
+ require 'pact_broker/client/deployments/record_undeployment'
3
+
4
+ deployment_feature_on = ENV.fetch('PACT_BROKER_FEATURES', '').include?("deployments")
5
+
6
+ RSpec.describe "recording an undeployment", pact: true, skip: !deployment_feature_on do
7
+ include_context "pact broker"
8
+ include PactBrokerPactHelperMethods
9
+
10
+ let(:pacticipant_name) { "Foo" }
11
+ let(:environment_name) { "test" }
12
+ let(:output) { "text" }
13
+ let(:target) { "customer-1" }
14
+ let(:params) do
15
+ {
16
+ pacticipant_name: pacticipant_name,
17
+ environment_name: environment_name,
18
+ target: target
19
+ }
20
+ end
21
+ let(:options) do
22
+ {
23
+ output: output,
24
+ verbose: true
25
+ }
26
+ end
27
+ let(:webmock_base_url) { "http://broker" }
28
+ let(:pact_broker_client_options) { { pact_broker_base_url: webmock_base_url } }
29
+ let(:test_environment_placeholder_path) { "/HAL-REL-PLACEHOLDER-PB-ENVIRONMENT-16926ef3-590f-4e3f-838e-719717aa88c9" }
30
+ let(:currently_deployed_versions_placeholder_path) { "/PLACEHOLDER-ENVIRONMENT-CURRENTLY-DEPLOYED-16926ef3-590f-4e3f-838e-719717aa88c9" }
31
+ let(:deployed_version_placeholder_path) { "/PLACEHOLDER-DEPLOYED-VERSION-ff3adecf-cfc5-4653-a4e3-f1861092f8e0"}
32
+
33
+ subject { PactBroker::Client::Deployments::RecordUndeployment.call(params, options, pact_broker_client_options) }
34
+
35
+ let(:index_body_hash) do
36
+ {
37
+ _links: {
38
+ :'pb:environments' => {
39
+ href: "#{webmock_base_url}/environments"
40
+ }
41
+ }
42
+ }
43
+ end
44
+
45
+ let(:environments_hash) do
46
+ {
47
+ _links: {
48
+ :'pb:environments' => [
49
+ {
50
+ name: "test",
51
+ href: pact_broker.mock_service_base_url + test_environment_placeholder_path
52
+ }
53
+ ]
54
+ }
55
+ }
56
+ end
57
+
58
+ let!(:index_request) do
59
+ stub_request(:get, "http://broker").to_return(status: 200, body: index_body_hash.to_json, headers: { "Content-Type" => "application/hal+json" } )
60
+ end
61
+
62
+ let!(:environments_request) do
63
+ stub_request(:get, "http://broker/environments").to_return(status: 200, body: environments_hash.to_json, headers: { "Content-Type" => "application/hal+json" } )
64
+ end
65
+
66
+ def mock_test_environment
67
+ pact_broker
68
+ .given("an environment with name test and UUID 16926ef3-590f-4e3f-838e-719717aa88c9 exists")
69
+ .upon_receiving("a request for an environment")
70
+ .with(
71
+ method: "GET",
72
+ path: test_environment_placeholder_path,
73
+ headers: get_request_headers
74
+ )
75
+ .will_respond_with(
76
+ status: 200,
77
+ headers: pact_broker_response_headers,
78
+ body: {
79
+ _links: {
80
+ :'pb:currently-deployed-versions' => {
81
+ href: Pact.term( pact_broker.mock_service_base_url + currently_deployed_versions_placeholder_path, /^http.*/)
82
+ }
83
+ }
84
+ }
85
+ )
86
+ end
87
+
88
+ def mock_deployed_versions_search_results
89
+ pact_broker
90
+ .given("an version is deployed to environment with UUID 16926ef3-590f-4e3f-838e-719717aa88c9 with target customer-1")
91
+ .upon_receiving("a request to list the versions deployed to an environment for a pacticipant name and target")
92
+ .with(
93
+ method: "GET",
94
+ path: currently_deployed_versions_placeholder_path,
95
+ query: { pacticipant: pacticipant_name },
96
+ headers: get_request_headers
97
+ )
98
+ .will_respond_with(
99
+ status: 200,
100
+ headers: pact_broker_response_headers,
101
+ body: {
102
+ _embedded: {
103
+ deployedVersions: [
104
+ {
105
+ target: target,
106
+ _links: {
107
+ self: {
108
+ href: Pact.term(pact_broker.mock_service_base_url + deployed_version_placeholder_path, /^http/)
109
+ }
110
+ }
111
+ }
112
+ ]
113
+ }
114
+ }
115
+ )
116
+ end
117
+
118
+ def mock_mark_deployed_version_as_undeployed
119
+ pact_broker
120
+ .given("a currently deployed version exists")
121
+ .upon_receiving("a request to mark a deployed version as not currently deploye")
122
+ .with(
123
+ method: "PATCH",
124
+ path: deployed_version_placeholder_path,
125
+ body: { currentlyDeployed: false },
126
+ headers: patch_request_headers
127
+ )
128
+ .will_respond_with(
129
+ status: 200,
130
+ headers: pact_broker_response_headers,
131
+ body: deployed_version_hash
132
+ )
133
+ end
134
+
135
+ let(:deployed_version_hash) do
136
+ {
137
+ "currentlyDeployed" => false,
138
+ "_embedded" => {
139
+ "version" => {
140
+ "number" => Pact.like("2")
141
+ }
142
+ }
143
+ }
144
+ end
145
+
146
+ context "when the deployment is recorded successfully" do
147
+ before do
148
+ mock_test_environment
149
+ mock_deployed_versions_search_results
150
+ mock_mark_deployed_version_as_undeployed
151
+ end
152
+
153
+ it "returns a success message" do
154
+ expect(subject.success).to be true
155
+ expect(subject.message).to include "Recorded undeployment of Foo version 2 from test environment (target customer-1) in the Pact Broker"
156
+ end
157
+
158
+ context "when the output is json" do
159
+ let(:output) { "json" }
160
+
161
+ it "returns the JSON payload" do
162
+ expect(JSON.parse(subject.message)).to eq [Pact::Reification.from_term(deployed_version_hash)]
163
+ end
164
+ end
165
+ end
166
+ end
@@ -134,7 +134,7 @@ RSpec.describe "creating a webhook", pact: true do
134
134
  context "when an invalid webhook is submitted" do
135
135
  before do
136
136
  params[:url] = nil
137
- request_body["request"]["url"] = nil
137
+ request_body["request"].delete("url")
138
138
 
139
139
  pact_broker
140
140
  .given("the 'Pricing Service' and 'Condor' already exist in the pact-broker")
data/spec/spec_helper.rb CHANGED
@@ -1,6 +1,5 @@
1
1
  require 'webmock/rspec'
2
-
3
- ENV['PACT_BROKER_FEATURES'] = 'deployments publish_contracts ignore'
2
+ require 'rspec/its'
4
3
 
5
4
  WebMock.disable_net_connect!(allow_localhost: true)
6
5
 
@@ -16,6 +15,7 @@ RSpec.configure do | config |
16
15
  ENV.delete('PACT_BROKER_BASE_URL')
17
16
  ENV.delete('PACT_BROKER_USERNAME')
18
17
  ENV.delete('PACT_BROKER_PASSWORD')
18
+ ENV.delete('PACT_BROKER_TOKEN')
19
19
  end
20
20
 
21
21
  config.after(:all) do
@@ -24,6 +24,19 @@ RSpec.configure do | config |
24
24
 
25
25
  config.filter_run_excluding skip_windows: is_windows, skip_ci: is_ci
26
26
  config.example_status_persistence_file_path = "./spec/examples.txt"
27
+
28
+ def capture(stream)
29
+ begin
30
+ stream = stream.to_s
31
+ eval "$#{stream} = StringIO.new"
32
+ yield
33
+ result = eval("$#{stream}").string
34
+ ensure
35
+ eval("$#{stream} = #{stream.upcase}")
36
+ end
37
+
38
+ result
39
+ end
27
40
  end
28
41
 
29
42
  module Pact
@@ -9,7 +9,7 @@ def print_diff(exception)
9
9
  parts = exception.message.split('"')
10
10
  received_file = parts[1]
11
11
  approved_file = parts[3]
12
- if File.exist?(received_file) && File.exist?(approved_file)
12
+ if File.exist?(received_file) && File.exist?(approved_file) && received_file.end_with?(".json") && approved_file.end_with?(".json")
13
13
  received_hash = JSON.parse(File.read(received_file))
14
14
  approved_hash = JSON.parse(File.read(approved_file))
15
15
  diff = Pact::Matchers.diff(approved_hash, received_hash)
@@ -17,7 +17,8 @@ shared_context "pact broker" do
17
17
  let(:pact_broker_version) { Pact::Term.new(:matcher => /\d+\.\d+\.\d+/, :generate => '1.0.0') }
18
18
  let(:pact_broker_response_headers) { {'Content-Type' => 'application/hal+json;charset=utf-8'} }
19
19
  let(:default_request_headers) { { 'Content-Type' => 'application/json'} }
20
- let(:patch_request_headers) { { 'Content-Type' => 'application/json'} }
20
+ let(:old_patch_request_headers) { { 'Content-Type' => 'application/json'} }
21
+ let(:patch_request_headers) { { 'Content-Type' => 'application/merge-patch+json'} }
21
22
  let(:put_request_headers) { { 'Content-Type' => 'application/json', 'Accept' => 'application/hal+json'} }
22
23
  let(:post_request_headers) { { 'Content-Type' => 'application/json', 'Accept' => 'application/hal+json'} }
23
24
  let(:get_request_headers) { { 'Accept' => 'application/hal+json'} }
data/tasks/pact.rake CHANGED
@@ -14,5 +14,25 @@ PactBroker::Client::PublicationTask.new(:remote) do | task |
14
14
  task.tag = `git rev-parse --abbrev-ref HEAD`.strip
15
15
  task.consumer_version = PactBroker::Client::VERSION
16
16
  task.pact_broker_base_url = "https://test.pact.dius.com.au"
17
- task.pact_broker_basic_auth = {username: ENV.fetch('PACT_BROKER_USERNAME'), password: ENV.fetch('PACT_BROKER_PASSWORD')}
17
+ task.pact_broker_basic_auth = { username: ENV.fetch('PACT_BROKER_USERNAME'), password: ENV.fetch('PACT_BROKER_PASSWORD') }
18
+ end
19
+
20
+ PactBroker::Client::PublicationTask.new(:pactflow) do | task |
21
+ version = ENV.fetch('GITHUB_SHA')
22
+ branch = ENV.fetch('GITHUB_REF').gsub("refs/heads/", "")
23
+ feature = ENV.fetch('TEST_FEATURE', '')
24
+ tag = branch
25
+
26
+ if feature != ''
27
+ version = "#{version}+#{feature}"
28
+ tag = "#{tag}+#{feature}"
29
+ end
30
+
31
+ require 'pact_broker/client/version'
32
+ task.auto_detect_version_properties = false
33
+ task.tags = [tag]
34
+ task.branch = nil
35
+ task.consumer_version = version
36
+ task.pact_broker_base_url = "https://pact-oss.pactflow.io"
37
+ task.pact_broker_token = ENV['PACT_BROKER_TOKEN']
18
38
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pact_broker-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.41.0
4
+ version: 1.46.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Beth Skurrie
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-24 00:00:00.000000000 Z
11
+ date: 2021-06-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -190,6 +190,20 @@ dependencies:
190
190
  - - "<"
191
191
  - !ruby/object:Gem::Version
192
192
  version: 1.0.0
193
+ - !ruby/object:Gem::Dependency
194
+ name: rspec-its
195
+ requirement: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - "~>"
198
+ - !ruby/object:Gem::Version
199
+ version: '1.3'
200
+ type: :development
201
+ prerelease: false
202
+ version_requirements: !ruby/object:Gem::Requirement
203
+ requirements:
204
+ - - "~>"
205
+ - !ruby/object:Gem::Version
206
+ version: '1.3'
193
207
  description: Client for the Pact Broker. Publish, retrieve and query pacts and verification
194
208
  results.
195
209
  email:
@@ -216,6 +230,7 @@ files:
216
230
  - doc/markdown/Pact Broker Client - Pact Broker.md
217
231
  - doc/markdown/README.md
218
232
  - doc/pacts/markdown/Pact Broker Client - Pact Broker.md
233
+ - doc/pacts/markdown/Pact Broker Client - Pactflow.md
219
234
  - doc/pacts/markdown/README.md
220
235
  - example/scripts/README.md
221
236
  - example/scripts/deploy-consumer.sh
@@ -226,18 +241,38 @@ files:
226
241
  - lib/pact_broker/client.rb
227
242
  - lib/pact_broker/client/backports.rb
228
243
  - lib/pact_broker/client/base_client.rb
244
+ - lib/pact_broker/client/base_command.rb
229
245
  - lib/pact_broker/client/can_i_deploy.rb
230
246
  - lib/pact_broker/client/cli/broker.rb
231
247
  - lib/pact_broker/client/cli/can_i_deploy_long_desc.txt
232
248
  - lib/pact_broker/client/cli/create_or_update_webhook_long_desc.txt
233
249
  - lib/pact_broker/client/cli/create_webhook_long_desc.txt
234
250
  - lib/pact_broker/client/cli/custom_thor.rb
251
+ - lib/pact_broker/client/cli/deployment_commands.rb
252
+ - lib/pact_broker/client/cli/environment_commands.rb
253
+ - lib/pact_broker/client/cli/pacticipant_commands.rb
235
254
  - lib/pact_broker/client/cli/record_deployment_long_desc.txt
236
255
  - lib/pact_broker/client/cli/version_selector_options_parser.rb
256
+ - lib/pact_broker/client/cli/webhook_commands.rb
237
257
  - lib/pact_broker/client/colorize_notices.rb
238
258
  - lib/pact_broker/client/command_result.rb
239
259
  - lib/pact_broker/client/create_tag.rb
260
+ - lib/pact_broker/client/deployments.rb
261
+ - lib/pact_broker/client/deployments/record_deployment.rb
262
+ - lib/pact_broker/client/deployments/record_release.rb
263
+ - lib/pact_broker/client/deployments/record_support_ended.rb
264
+ - lib/pact_broker/client/deployments/record_undeployment.rb
265
+ - lib/pact_broker/client/describe_text_formatter.rb
266
+ - lib/pact_broker/client/environments.rb
267
+ - lib/pact_broker/client/environments/create_environment.rb
268
+ - lib/pact_broker/client/environments/delete_environment.rb
269
+ - lib/pact_broker/client/environments/describe_environment.rb
270
+ - lib/pact_broker/client/environments/environment_command.rb
271
+ - lib/pact_broker/client/environments/list_environments.rb
272
+ - lib/pact_broker/client/environments/text_formatter.rb
273
+ - lib/pact_broker/client/environments/update_environment.rb
240
274
  - lib/pact_broker/client/error.rb
275
+ - lib/pact_broker/client/generate_display_name.rb
241
276
  - lib/pact_broker/client/git.rb
242
277
  - lib/pact_broker/client/hal.rb
243
278
  - lib/pact_broker/client/hal/authorization_header_redactor.rb
@@ -260,11 +295,15 @@ files:
260
295
  - lib/pact_broker/client/pact_hash.rb
261
296
  - lib/pact_broker/client/pacticipants.rb
262
297
  - lib/pact_broker/client/pacticipants/create.rb
298
+ - lib/pact_broker/client/pacticipants/describe.rb
299
+ - lib/pact_broker/client/pacticipants/list.rb
300
+ - lib/pact_broker/client/pacticipants/text_formatter.rb
263
301
  - lib/pact_broker/client/pacts.rb
264
302
  - lib/pact_broker/client/pacts/list_latest_versions.rb
265
303
  - lib/pact_broker/client/publish_pacts.rb
266
304
  - lib/pact_broker/client/publish_pacts_the_old_way.rb
267
305
  - lib/pact_broker/client/retry.rb
306
+ - lib/pact_broker/client/string_refinements.rb
268
307
  - lib/pact_broker/client/tasks.rb
269
308
  - lib/pact_broker/client/tasks/publication_task.rb
270
309
  - lib/pact_broker/client/version.rb
@@ -272,8 +311,6 @@ files:
272
311
  - lib/pact_broker/client/versions/describe.rb
273
312
  - lib/pact_broker/client/versions/formatter.rb
274
313
  - lib/pact_broker/client/versions/json_formatter.rb
275
- - lib/pact_broker/client/versions/record_deployment.rb
276
- - lib/pact_broker/client/versions/record_undeployment.rb
277
314
  - lib/pact_broker/client/versions/text_formatter.rb
278
315
  - lib/pact_broker/client/webhooks/create.rb
279
316
  - lib/pact_broker/client/webhooks/test.rb
@@ -284,13 +321,21 @@ files:
284
321
  - script/generate-cli-usage.sh
285
322
  - script/publish-pact.sh
286
323
  - script/record-deployment.sh
324
+ - script/record-deployments-and-releases.sh
287
325
  - script/record-undeployment.sh
288
326
  - script/release.sh
289
327
  - script/trigger-release.sh
328
+ - script/webhook-commands.sh
329
+ - spec/fixtures/approvals/can_i_deploy_failure_dry_run.approved.txt
290
330
  - spec/fixtures/approvals/can_i_deploy_ignore.approved.txt
331
+ - spec/fixtures/approvals/can_i_deploy_success_dry_run.approved.txt
332
+ - spec/fixtures/approvals/describe_environment.approved.txt
333
+ - spec/fixtures/approvals/describe_pacticipant.approved.txt
334
+ - spec/fixtures/approvals/list_environments.approved.txt
291
335
  - spec/fixtures/foo-bar.json
292
336
  - spec/integration/can_i_deploy_spec.rb
293
337
  - spec/integration/create_version_tag_spec.rb
338
+ - spec/integration/describe_environment_spec.rb
294
339
  - spec/lib/pact_broker/client/base_client_spec.rb
295
340
  - spec/lib/pact_broker/client/can_i_deploy_spec.rb
296
341
  - spec/lib/pact_broker/client/cli/broker_can_i_deploy_spec.rb
@@ -300,6 +345,13 @@ files:
300
345
  - spec/lib/pact_broker/client/cli/broker_run_webhook_commands_spec.rb
301
346
  - spec/lib/pact_broker/client/cli/custom_thor_spec.rb
302
347
  - spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
348
+ - spec/lib/pact_broker/client/deployments/record_deployment_spec.rb
349
+ - spec/lib/pact_broker/client/deployments/record_support_ended_spec.rb
350
+ - spec/lib/pact_broker/client/deployments/record_undeployment_spec.rb
351
+ - spec/lib/pact_broker/client/environments/delete_environment_spec.rb
352
+ - spec/lib/pact_broker/client/environments/describe_environment_spec.rb
353
+ - spec/lib/pact_broker/client/environments/update_environment_spec.rb
354
+ - spec/lib/pact_broker/client/generate_display_name_spec.rb
303
355
  - spec/lib/pact_broker/client/git_spec.rb
304
356
  - spec/lib/pact_broker/client/hal/authorization_header_redactor_spec.rb
305
357
  - spec/lib/pact_broker/client/hal/entity_spec.rb
@@ -316,11 +368,13 @@ files:
316
368
  - spec/lib/pact_broker/client/retry_spec.rb
317
369
  - spec/lib/pact_broker/client/tasks/publication_task_spec.rb
318
370
  - spec/lib/pact_broker/client/versions/describe_spec.rb
319
- - spec/lib/pact_broker/client/versions/record_deployment_spec.rb
320
371
  - spec/lib/pact_broker/client/versions_spec.rb
321
372
  - spec/lib/pact_broker/client/webhooks/create_spec.rb
322
373
  - spec/pacts/pact_broker_client-pact_broker.json
374
+ - spec/pacts/pact_broker_client-pactflow.json
375
+ - spec/service_providers/create_environment_spec.rb
323
376
  - spec/service_providers/extra_goodies_spec.rb
377
+ - spec/service_providers/list_environments_spec.rb
324
378
  - spec/service_providers/list_latest_pact_versions_spec.rb.bak
325
379
  - spec/service_providers/pact_broker_client_create_version_spec.rb
326
380
  - spec/service_providers/pact_broker_client_matrix_ignore_spec.rb
@@ -333,9 +387,12 @@ files:
333
387
  - spec/service_providers/pact_broker_client_tags_spec.rb
334
388
  - spec/service_providers/pact_broker_client_versions_spec.rb
335
389
  - spec/service_providers/pact_helper.rb
390
+ - spec/service_providers/pactflow_webhooks_create_spec.rb
336
391
  - spec/service_providers/pacticipants_create_spec.rb
337
392
  - spec/service_providers/publish_pacts_spec.rb
338
393
  - spec/service_providers/record_deployment_spec.rb
394
+ - spec/service_providers/record_release_spec.rb
395
+ - spec/service_providers/record_undeployment_spec.rb
339
396
  - spec/service_providers/webhooks_create_spec.rb
340
397
  - spec/spec_helper.rb
341
398
  - spec/support/approvals.rb
@@ -370,15 +427,21 @@ required_rubygems_version: !ruby/object:Gem::Requirement
370
427
  - !ruby/object:Gem::Version
371
428
  version: '0'
372
429
  requirements: []
373
- rubygems_version: 3.2.17
430
+ rubygems_version: 3.2.21
374
431
  signing_key:
375
432
  specification_version: 4
376
433
  summary: See description
377
434
  test_files:
435
+ - spec/fixtures/approvals/can_i_deploy_failure_dry_run.approved.txt
378
436
  - spec/fixtures/approvals/can_i_deploy_ignore.approved.txt
437
+ - spec/fixtures/approvals/can_i_deploy_success_dry_run.approved.txt
438
+ - spec/fixtures/approvals/describe_environment.approved.txt
439
+ - spec/fixtures/approvals/describe_pacticipant.approved.txt
440
+ - spec/fixtures/approvals/list_environments.approved.txt
379
441
  - spec/fixtures/foo-bar.json
380
442
  - spec/integration/can_i_deploy_spec.rb
381
443
  - spec/integration/create_version_tag_spec.rb
444
+ - spec/integration/describe_environment_spec.rb
382
445
  - spec/lib/pact_broker/client/base_client_spec.rb
383
446
  - spec/lib/pact_broker/client/can_i_deploy_spec.rb
384
447
  - spec/lib/pact_broker/client/cli/broker_can_i_deploy_spec.rb
@@ -388,6 +451,13 @@ test_files:
388
451
  - spec/lib/pact_broker/client/cli/broker_run_webhook_commands_spec.rb
389
452
  - spec/lib/pact_broker/client/cli/custom_thor_spec.rb
390
453
  - spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
454
+ - spec/lib/pact_broker/client/deployments/record_deployment_spec.rb
455
+ - spec/lib/pact_broker/client/deployments/record_support_ended_spec.rb
456
+ - spec/lib/pact_broker/client/deployments/record_undeployment_spec.rb
457
+ - spec/lib/pact_broker/client/environments/delete_environment_spec.rb
458
+ - spec/lib/pact_broker/client/environments/describe_environment_spec.rb
459
+ - spec/lib/pact_broker/client/environments/update_environment_spec.rb
460
+ - spec/lib/pact_broker/client/generate_display_name_spec.rb
391
461
  - spec/lib/pact_broker/client/git_spec.rb
392
462
  - spec/lib/pact_broker/client/hal/authorization_header_redactor_spec.rb
393
463
  - spec/lib/pact_broker/client/hal/entity_spec.rb
@@ -404,11 +474,13 @@ test_files:
404
474
  - spec/lib/pact_broker/client/retry_spec.rb
405
475
  - spec/lib/pact_broker/client/tasks/publication_task_spec.rb
406
476
  - spec/lib/pact_broker/client/versions/describe_spec.rb
407
- - spec/lib/pact_broker/client/versions/record_deployment_spec.rb
408
477
  - spec/lib/pact_broker/client/versions_spec.rb
409
478
  - spec/lib/pact_broker/client/webhooks/create_spec.rb
410
479
  - spec/pacts/pact_broker_client-pact_broker.json
480
+ - spec/pacts/pact_broker_client-pactflow.json
481
+ - spec/service_providers/create_environment_spec.rb
411
482
  - spec/service_providers/extra_goodies_spec.rb
483
+ - spec/service_providers/list_environments_spec.rb
412
484
  - spec/service_providers/list_latest_pact_versions_spec.rb.bak
413
485
  - spec/service_providers/pact_broker_client_create_version_spec.rb
414
486
  - spec/service_providers/pact_broker_client_matrix_ignore_spec.rb
@@ -421,9 +493,12 @@ test_files:
421
493
  - spec/service_providers/pact_broker_client_tags_spec.rb
422
494
  - spec/service_providers/pact_broker_client_versions_spec.rb
423
495
  - spec/service_providers/pact_helper.rb
496
+ - spec/service_providers/pactflow_webhooks_create_spec.rb
424
497
  - spec/service_providers/pacticipants_create_spec.rb
425
498
  - spec/service_providers/publish_pacts_spec.rb
426
499
  - spec/service_providers/record_deployment_spec.rb
500
+ - spec/service_providers/record_release_spec.rb
501
+ - spec/service_providers/record_undeployment_spec.rb
427
502
  - spec/service_providers/webhooks_create_spec.rb
428
503
  - spec/spec_helper.rb
429
504
  - spec/support/approvals.rb