pact_broker 2.27.2 → 2.27.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.travis.yml +1 -1
- data/CHANGELOG.md +32 -0
- data/DEVELOPER_SETUP.md +1 -0
- data/example/config.ru +1 -1
- data/lib/pact_broker.rb +1 -0
- data/lib/pact_broker/api.rb +1 -0
- data/lib/pact_broker/api/decorators/pact_version_decorator.rb +0 -5
- data/lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb +46 -0
- data/lib/pact_broker/api/renderers/html_pact_renderer.rb +1 -1
- data/lib/pact_broker/api/resources/error_handler.rb +1 -0
- data/lib/pact_broker/api/resources/index.rb +6 -0
- data/lib/pact_broker/api/resources/tagged_pact_versions.rb +38 -0
- data/lib/pact_broker/app.rb +12 -6
- data/lib/pact_broker/certificates/service.rb +1 -0
- data/lib/pact_broker/configuration.rb +11 -16
- data/lib/pact_broker/db/log_quietener.rb +38 -0
- data/lib/pact_broker/doc/views/index/tagged-pact-versions.markdown +7 -0
- data/lib/pact_broker/logging.rb +25 -20
- data/lib/pact_broker/logging/default_formatter.rb +16 -0
- data/lib/pact_broker/matrix/deployment_status_summary.rb +3 -1
- data/lib/pact_broker/pacticipants/service.rb +1 -1
- data/lib/pact_broker/pacts/all_pact_publications.rb +1 -1
- data/lib/pact_broker/pacts/repository.rb +18 -4
- data/lib/pact_broker/pacts/service.rb +4 -0
- data/lib/pact_broker/ui/views/index/show-with-tags.haml +34 -33
- data/lib/pact_broker/ui/views/index/show.haml +28 -27
- data/lib/pact_broker/ui/views/layouts/main.haml +2 -2
- data/lib/pact_broker/ui/views/matrix/show.haml +126 -127
- data/lib/pact_broker/verifications/service.rb +3 -1
- data/lib/pact_broker/version.rb +1 -1
- data/lib/pact_broker/versions/repository.rb +3 -1
- data/lib/pact_broker/webhooks/job.rb +1 -0
- data/pact_broker.gemspec +1 -0
- data/script/db-spec.sh +2 -0
- data/spec/features/delete_tagged_pact_versions_spec.rb +28 -0
- data/spec/features/get_tagged_pact_versions_spec.rb +26 -0
- data/spec/integration/ui/index_spec.rb +2 -2
- data/spec/lib/pact_broker/api/decorators/pact_version_decorator_spec.rb +0 -3
- data/spec/lib/pact_broker/api/decorators/tagged_pact_versions_decorator_spec.rb +79 -0
- data/spec/lib/pact_broker/api/renderers/html_pact_renderer_spec.rb +5 -6
- data/spec/lib/pact_broker/api/resources/error_handler_spec.rb +7 -1
- data/spec/lib/pact_broker/api/resources/tagged_pact_versions_spec.rb +88 -0
- data/spec/lib/pact_broker/badges/service_spec.rb +3 -2
- data/spec/lib/pact_broker/certificates/service_spec.rb +8 -3
- data/spec/lib/pact_broker/db/log_quietener_spec.rb +42 -0
- data/spec/lib/pact_broker/domain/webhook_request_spec.rb +17 -12
- data/spec/lib/pact_broker/domain/webhook_spec.rb +7 -2
- data/spec/lib/pact_broker/matrix/deployment_status_summary_spec.rb +8 -1
- data/spec/lib/pact_broker/pacticipants/service_spec.rb +5 -3
- data/spec/lib/pact_broker/pacts/repository_spec.rb +44 -3
- data/spec/lib/pact_broker/verifications/service_spec.rb +6 -2
- data/spec/lib/pact_broker/webhooks/job_spec.rb +2 -0
- data/spec/lib/pact_broker/webhooks/service_spec.rb +6 -1
- data/spec/spec_helper.rb +13 -13
- data/spec/support/database.rb +5 -0
- data/spec/support/fixture_pact.rb +34 -0
- data/spec/support/logging.rb +5 -0
- data/spec/support/shared_context.rb +10 -0
- data/tasks/development.rake +12 -3
- metadata +40 -3
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'pact_broker/db/log_quietener'
|
2
|
+
|
3
|
+
module PactBroker
|
4
|
+
module DB
|
5
|
+
describe Logger do
|
6
|
+
let(:logs) { StringIO.new }
|
7
|
+
let(:wrapped_logger) { ::Logger.new(logs) }
|
8
|
+
|
9
|
+
subject { LogQuietener.new(wrapped_logger) }
|
10
|
+
|
11
|
+
describe "error" do
|
12
|
+
context "when the error is for a table or view that does not exist" do
|
13
|
+
before do
|
14
|
+
subject.error("PG::UndefinedTable - some error")
|
15
|
+
end
|
16
|
+
|
17
|
+
it "logs the message at debug level" do
|
18
|
+
expect(logs.string).to include "DEBUG -- :"
|
19
|
+
end
|
20
|
+
|
21
|
+
it "appends a friendly message so people don't freak out" do
|
22
|
+
expect(logs.string).to include "PG::UndefinedTable - some error Don't panic."
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
context "when the error is NOT for a table or view that does not exist" do
|
27
|
+
before do
|
28
|
+
subject.error("foo bar")
|
29
|
+
end
|
30
|
+
|
31
|
+
it "logs the message at error level" do
|
32
|
+
expect(logs.string).to include "ERROR -- :"
|
33
|
+
end
|
34
|
+
|
35
|
+
it "does not appends a friendly message so people will correctly panic" do
|
36
|
+
expect(logs.string).to_not include "Don't panic."
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -11,6 +11,7 @@ module PactBroker
|
|
11
11
|
let(:headers) { {'Content-Type' => 'text/plain', 'Authorization' => 'foo'} }
|
12
12
|
let(:body) { 'reqbody' }
|
13
13
|
let(:logs) { StringIO.new }
|
14
|
+
let(:logger) { double('logger').as_null_object }
|
14
15
|
let(:execution_logger) { Logger.new(logs) }
|
15
16
|
let(:options) { {failure_log_message: 'oops', show_response: show_response} }
|
16
17
|
let(:show_response) { true }
|
@@ -85,6 +86,12 @@ module PactBroker
|
|
85
86
|
to_return(:status => 200, :body => "respbod", :headers => {'Content-Type' => 'text/foo, blah'})
|
86
87
|
end
|
87
88
|
|
89
|
+
before do
|
90
|
+
allow(WebhookRequest).to receive(:logger).and_return(logger)
|
91
|
+
allow(WebhookRequest.logger).to receive(:info)
|
92
|
+
allow(WebhookRequest.logger).to receive(:debug)
|
93
|
+
end
|
94
|
+
|
88
95
|
let(:request_body) { 'reqbody' }
|
89
96
|
|
90
97
|
it "executes the configured request" do
|
@@ -93,20 +100,18 @@ module PactBroker
|
|
93
100
|
end
|
94
101
|
|
95
102
|
it "logs the request" do
|
96
|
-
|
97
|
-
|
98
|
-
expect(
|
99
|
-
expect(PactBroker.logger).to receive(:debug).with(/.*text\/plain/)
|
100
|
-
expect(PactBroker.logger).to receive(:debug).with(/.*reqbody/)
|
103
|
+
expect(logger).to receive(:info).with(/POST.*example/)
|
104
|
+
expect(logger).to receive(:debug).with(/.*text\/plain/)
|
105
|
+
expect(logger).to receive(:debug).with(/.*reqbody/)
|
101
106
|
execute
|
102
107
|
end
|
103
108
|
|
104
109
|
it "logs the response" do
|
105
|
-
allow(
|
106
|
-
allow(
|
107
|
-
expect(
|
108
|
-
expect(
|
109
|
-
expect(
|
110
|
+
allow(logger).to receive(:info)
|
111
|
+
allow(logger).to receive(:debug)
|
112
|
+
expect(logger).to receive(:info).with(/response.*200/)
|
113
|
+
expect(logger).to receive(:debug).with(/text\/foo/)
|
114
|
+
expect(logger).to receive(:debug).with(/respbod/)
|
110
115
|
execute
|
111
116
|
end
|
112
117
|
|
@@ -301,11 +306,11 @@ module PactBroker
|
|
301
306
|
|
302
307
|
before do
|
303
308
|
allow(Net::HTTP).to receive(:start).and_raise(WebhookTestError.new("blah"))
|
304
|
-
allow(
|
309
|
+
allow(logger).to receive(:error)
|
305
310
|
end
|
306
311
|
|
307
312
|
it "logs the error" do
|
308
|
-
expect(
|
313
|
+
expect(logger).to receive(:error).with(/Error.*WebhookTestError.*blah/)
|
309
314
|
execute
|
310
315
|
end
|
311
316
|
|
@@ -11,6 +11,11 @@ module PactBroker
|
|
11
11
|
let(:options) { double('options') }
|
12
12
|
let(:pact) { double('pact') }
|
13
13
|
let(:verification) { double('verification') }
|
14
|
+
let(:logger) { double('logger').as_null_object }
|
15
|
+
|
16
|
+
before do
|
17
|
+
allow(webhook).to receive(:logger).and_return(logger)
|
18
|
+
end
|
14
19
|
|
15
20
|
subject(:webhook) { Webhook.new(request: request_template, consumer: consumer, provider: provider) }
|
16
21
|
|
@@ -59,8 +64,8 @@ module PactBroker
|
|
59
64
|
end
|
60
65
|
|
61
66
|
it "logs before and after" do
|
62
|
-
allow(
|
63
|
-
expect(
|
67
|
+
allow(logger).to receive(:info)
|
68
|
+
expect(logger).to receive(:info).with(/Executing/)
|
64
69
|
execute
|
65
70
|
end
|
66
71
|
end
|
@@ -6,6 +6,13 @@ require 'pact_broker/matrix/integration'
|
|
6
6
|
module PactBroker
|
7
7
|
module Matrix
|
8
8
|
describe DeploymentStatusSummary do
|
9
|
+
|
10
|
+
before do
|
11
|
+
allow(subject).to receive(:logger).and_return(logger)
|
12
|
+
end
|
13
|
+
|
14
|
+
let(:logger) { double('logger').as_null_object }
|
15
|
+
|
9
16
|
describe ".call" do
|
10
17
|
let(:rows) { [row_1, row_2] }
|
11
18
|
let(:row_1) do
|
@@ -106,7 +113,7 @@ module PactBroker
|
|
106
113
|
its(:reasons) { is_expected.to eq ["There is no verified pact between Foo (unresolved version) and Baz (4ee06460f10e8207ad904fa9fa6c4842e462ab59)"] }
|
107
114
|
|
108
115
|
it "logs a warning" do
|
109
|
-
expect(
|
116
|
+
expect(logger).to receive(:warn).with(/Could not find the resolved version/)
|
110
117
|
subject.reasons
|
111
118
|
end
|
112
119
|
end
|
@@ -4,11 +4,14 @@ require 'pact_broker/domain/tag'
|
|
4
4
|
require 'pact_broker/domain/pact'
|
5
5
|
|
6
6
|
module PactBroker
|
7
|
-
|
8
7
|
module Pacticipants
|
9
8
|
describe Service do
|
9
|
+
before do
|
10
|
+
allow(Service).to receive(:logger).and_return(logger)
|
11
|
+
end
|
10
12
|
|
11
13
|
let(:td) { TestDataBuilder.new }
|
14
|
+
let(:logger) { double('logger').as_null_object }
|
12
15
|
|
13
16
|
subject{ Service }
|
14
17
|
|
@@ -106,8 +109,7 @@ module PactBroker
|
|
106
109
|
end
|
107
110
|
|
108
111
|
it "logs the names" do
|
109
|
-
|
110
|
-
expect(PactBroker.logger).to receive(:info).with(/pacticipant_name.*Fred, Mary/)
|
112
|
+
expect(logger).to receive(:info).with(/pacticipant_name.*Fred, Mary/)
|
111
113
|
subject.find_potential_duplicate_pacticipants pacticipant_name
|
112
114
|
end
|
113
115
|
end
|
@@ -277,17 +277,58 @@ module PactBroker
|
|
277
277
|
.create_pact
|
278
278
|
end
|
279
279
|
|
280
|
-
subject { Repository.new.find_all_pact_versions_between
|
280
|
+
subject { Repository.new.find_all_pact_versions_between(consumer_name, :and => provider_name) }
|
281
281
|
|
282
282
|
it "returns the pacts between the specified consumer and provider" do
|
283
283
|
expect(subject.size).to eq 2
|
284
284
|
expect(subject.first.consumer.name).to eq consumer_name
|
285
285
|
expect(subject.first.provider.name).to eq provider_name
|
286
286
|
expect(subject.first.consumer_version.number).to eq "2.3.4"
|
287
|
-
expect(subject.first.consumer_version.tags.
|
288
|
-
expect(subject.first.consumer_version.tags.last.name).to eq "prod"
|
287
|
+
expect(subject.first.consumer_version.tags.count).to eq 2
|
289
288
|
end
|
290
289
|
|
290
|
+
context "with a tag" do
|
291
|
+
subject { Repository.new.find_all_pact_versions_between(consumer_name, :and => provider_name, tag: "prod") }
|
292
|
+
|
293
|
+
it "returns the pacts between the specified consumer and provider with the given tag" do
|
294
|
+
expect(subject.size).to eq 1
|
295
|
+
expect(subject.first.consumer_version.number).to eq "2.3.4"
|
296
|
+
end
|
297
|
+
end
|
298
|
+
end
|
299
|
+
|
300
|
+
describe "#delete_all_pact_versions_between" do
|
301
|
+
|
302
|
+
before do
|
303
|
+
TestDataBuilder.new
|
304
|
+
.create_consumer(consumer_name)
|
305
|
+
.create_consumer_version("1.2.3")
|
306
|
+
.create_provider(provider_name)
|
307
|
+
.create_pact
|
308
|
+
.create_webhook
|
309
|
+
.create_triggered_webhook
|
310
|
+
.create_webhook_execution
|
311
|
+
.create_consumer_version("2.3.4")
|
312
|
+
.create_consumer_version_tag("prod")
|
313
|
+
.create_consumer_version_tag("branch")
|
314
|
+
.create_pact
|
315
|
+
.create_provider("Another Provider")
|
316
|
+
.create_pact
|
317
|
+
end
|
318
|
+
|
319
|
+
subject { Repository.new.delete_all_pact_versions_between(consumer_name, :and => provider_name) }
|
320
|
+
|
321
|
+
it "deletes the pacts between the specified consumer and provider" do
|
322
|
+
expect { subject }.to change { PactPublication.count }.by(-2)
|
323
|
+
end
|
324
|
+
|
325
|
+
context "with a tag" do
|
326
|
+
subject { Repository.new.delete_all_pact_versions_between(consumer_name, :and => provider_name, tag: "prod") }
|
327
|
+
|
328
|
+
it "deletes the pacts between the specified consumer and provider with the given tag" do
|
329
|
+
expect { subject }.to change { PactPublication.count }.by(-1)
|
330
|
+
end
|
331
|
+
end
|
291
332
|
end
|
292
333
|
|
293
334
|
describe "#find_latest_pact_versions_for_provider" do
|
@@ -5,6 +5,11 @@ module PactBroker
|
|
5
5
|
|
6
6
|
module Verifications
|
7
7
|
describe Service do
|
8
|
+
before do
|
9
|
+
allow(Service).to receive(:logger).and_return(logger)
|
10
|
+
end
|
11
|
+
|
12
|
+
let(:logger) { double('logger').as_null_object }
|
8
13
|
|
9
14
|
subject { PactBroker::Verifications::Service }
|
10
15
|
|
@@ -18,8 +23,7 @@ module PactBroker
|
|
18
23
|
let(:create_verification) { subject.create 3, params, pact }
|
19
24
|
|
20
25
|
it "logs the creation" do
|
21
|
-
|
22
|
-
expect(PactBroker.logger).to receive(:info).with(/.*verification.*3.*success/)
|
26
|
+
expect(logger).to receive(:info).with(/.*verification.*3.*success/)
|
23
27
|
create_verification
|
24
28
|
end
|
25
29
|
|
@@ -9,11 +9,13 @@ module PactBroker
|
|
9
9
|
allow(PactBroker::Webhooks::Service).to receive(:execute_triggered_webhook_now).and_return(result)
|
10
10
|
allow(PactBroker::Webhooks::Service).to receive(:update_triggered_webhook_status)
|
11
11
|
allow(PactBroker::Webhooks::TriggeredWebhook).to receive(:find).and_return(triggered_webhook)
|
12
|
+
allow(Job).to receive(:logger).and_return(logger)
|
12
13
|
end
|
13
14
|
|
14
15
|
let(:triggered_webhook) { instance_double("PactBroker::Webhooks::TriggeredWebhook", webhook_uuid: '1234', id: 1) }
|
15
16
|
let(:result) { instance_double("PactBroker::Domain::WebhookExecutionResult", success?: success)}
|
16
17
|
let(:success) { true }
|
18
|
+
let(:logger) { double('logger').as_null_object }
|
17
19
|
|
18
20
|
subject { Job.new.perform(triggered_webhook: triggered_webhook) }
|
19
21
|
|
@@ -9,7 +9,12 @@ module PactBroker
|
|
9
9
|
|
10
10
|
module Webhooks
|
11
11
|
describe Service do
|
12
|
+
before do
|
13
|
+
allow(Service).to receive(:logger).and_return(logger)
|
14
|
+
end
|
15
|
+
|
12
16
|
let(:td) { TestDataBuilder.new }
|
17
|
+
let(:logger) { double('logger').as_null_object }
|
13
18
|
|
14
19
|
describe ".delete_by_uuid" do
|
15
20
|
before do
|
@@ -66,7 +71,7 @@ module PactBroker
|
|
66
71
|
end
|
67
72
|
|
68
73
|
it "logs that no webhook was found" do
|
69
|
-
expect(
|
74
|
+
expect(logger).to receive(:debug).with(/No webhook found/)
|
70
75
|
subject
|
71
76
|
end
|
72
77
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,17 +1,12 @@
|
|
1
|
-
require 'simplecov'
|
2
|
-
SimpleCov.start
|
3
|
-
|
4
|
-
ENV['RACK_ENV'] = 'test'
|
5
|
-
RACK_ENV = 'test'
|
6
|
-
|
7
1
|
$: << File.expand_path("../../", __FILE__)
|
8
2
|
|
9
|
-
|
10
|
-
|
11
|
-
require '
|
12
|
-
|
13
|
-
PactBroker::DB.connection = PactBroker::Database.database = DB::PACT_BROKER_DB
|
3
|
+
RACK_ENV = ENV['RACK_ENV'] = 'test'
|
4
|
+
|
5
|
+
require 'simplecov'
|
6
|
+
SimpleCov.start
|
14
7
|
|
8
|
+
require 'support/logging'
|
9
|
+
require 'support/database'
|
15
10
|
require 'rack/test'
|
16
11
|
require 'pact_broker/api'
|
17
12
|
require 'rspec/its'
|
@@ -19,10 +14,10 @@ require 'rspec/pact/matchers'
|
|
19
14
|
require 'sucker_punch/testing/inline'
|
20
15
|
require 'webmock/rspec'
|
21
16
|
|
22
|
-
WebMock.disable_net_connect!(allow_localhost: true)
|
23
|
-
|
24
17
|
Dir.glob("./spec/support/**/*.rb") { |file| require file }
|
25
18
|
|
19
|
+
WebMock.disable_net_connect!(allow_localhost: true)
|
20
|
+
|
26
21
|
I18n.config.enforce_available_locales = false
|
27
22
|
|
28
23
|
RSpec.configure do | config |
|
@@ -33,7 +28,12 @@ RSpec.configure do | config |
|
|
33
28
|
PactBroker::Badges::Service.clear_cache
|
34
29
|
end
|
35
30
|
|
31
|
+
config.after :suite do
|
32
|
+
Pact::Fixture.check_fixtures
|
33
|
+
end
|
34
|
+
|
36
35
|
config.include Rack::Test::Methods
|
36
|
+
config.include Pact::Fixture
|
37
37
|
|
38
38
|
config.mock_with :rspec do |mocks|
|
39
39
|
mocks.verify_partial_doubles = true
|
@@ -0,0 +1,5 @@
|
|
1
|
+
require 'db'
|
2
|
+
require 'tasks/database'
|
3
|
+
require 'pact_broker/db'
|
4
|
+
raise "Wrong environment!!! Don't run this script!! ENV['RACK_ENV'] is #{ENV['RACK_ENV']} and RACK_ENV is #{RACK_ENV}" if ENV['RACK_ENV'] != 'test' || RACK_ENV != 'test'
|
5
|
+
PactBroker::DB.connection = PactBroker::Database.database = DB::PACT_BROKER_DB
|
@@ -0,0 +1,34 @@
|
|
1
|
+
module Pact
|
2
|
+
module Fixture
|
3
|
+
|
4
|
+
def self.fixtures
|
5
|
+
@@fixtures ||= []
|
6
|
+
end
|
7
|
+
|
8
|
+
def self.clear_fixtures
|
9
|
+
@@fixtures = []
|
10
|
+
end
|
11
|
+
|
12
|
+
def register_fixture name
|
13
|
+
source = caller.first
|
14
|
+
thing = yield
|
15
|
+
Fixture.fixtures << OpenStruct.new(name: name, thing: thing, source: source)
|
16
|
+
thing
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.check_fixtures
|
20
|
+
fixtures.group_by(&:name).each do | name, fixture_group |
|
21
|
+
if fixture_group.size == 1
|
22
|
+
puts "WARN: Nothing to compare #{name} to."
|
23
|
+
else
|
24
|
+
if fixture_group.collect(&:thing).uniq.length != 1
|
25
|
+
desc = fixture_group.collect do | fixture |
|
26
|
+
"#{fixture.thing} from #{fixture.source}\n"
|
27
|
+
end.join("\n")
|
28
|
+
raise "These fixtures don't match #{fixture_group.first.name}:\n #{desc}"
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
RSpec.shared_context "stubbed services" do
|
2
|
+
|
3
|
+
let(:pact_service) { class_double("PactBroker::Pacts::Service").as_stubbed_const }
|
4
|
+
let(:pacticipant_service) { class_double("PactBroker::Pacticipants::Service").as_stubbed_const }
|
5
|
+
|
6
|
+
before do
|
7
|
+
allow_any_instance_of(described_class).to receive(:pact_service).and_return(pact_service)
|
8
|
+
allow_any_instance_of(described_class).to receive(:pacticipant_service).and_return(pacticipant_service)
|
9
|
+
end
|
10
|
+
end
|
data/tasks/development.rake
CHANGED
@@ -1,10 +1,19 @@
|
|
1
1
|
|
2
|
+
desc 'Set up a dev instance of the Pact Broker'
|
2
3
|
task 'pact_broker:dev:setup' do
|
4
|
+
puts "Copying example directory"
|
3
5
|
FileUtils.cp_r 'example', 'dev'
|
4
6
|
gemfile_contents = File.read('dev/Gemfile')
|
7
|
+
|
8
|
+
|
9
|
+
puts "Changing source of pact_broker gem from rubygems.org to local file system"
|
5
10
|
new_gemfile_contents = gemfile_contents.gsub(/^.*gem.*pact_broker.*$/, "gem 'pact_broker', path: '../'")
|
6
11
|
File.open('dev/Gemfile', "w") { |file| file << new_gemfile_contents }
|
7
|
-
|
8
|
-
|
9
|
-
|
12
|
+
|
13
|
+
Dir.chdir("dev") do
|
14
|
+
Bundler.with_clean_env do
|
15
|
+
puts "Executing bundle install"
|
16
|
+
puts `bundle install`
|
17
|
+
end
|
18
|
+
end
|
10
19
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pact_broker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.27.
|
4
|
+
version: 2.27.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bethany Skurrie
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2018-
|
13
|
+
date: 2018-11-01 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: httparty
|
@@ -282,6 +282,20 @@ dependencies:
|
|
282
282
|
- - "~>"
|
283
283
|
- !ruby/object:Gem::Version
|
284
284
|
version: '1.5'
|
285
|
+
- !ruby/object:Gem::Dependency
|
286
|
+
name: semantic_logger
|
287
|
+
requirement: !ruby/object:Gem::Requirement
|
288
|
+
requirements:
|
289
|
+
- - "~>"
|
290
|
+
- !ruby/object:Gem::Version
|
291
|
+
version: '4.3'
|
292
|
+
type: :runtime
|
293
|
+
prerelease: false
|
294
|
+
version_requirements: !ruby/object:Gem::Requirement
|
295
|
+
requirements:
|
296
|
+
- - "~>"
|
297
|
+
- !ruby/object:Gem::Version
|
298
|
+
version: '4.3'
|
285
299
|
- !ruby/object:Gem::Dependency
|
286
300
|
name: pact
|
287
301
|
requirement: !ruby/object:Gem::Requirement
|
@@ -727,6 +741,7 @@ files:
|
|
727
741
|
- lib/pact_broker/api/decorators/relationships_csv_decorator.rb
|
728
742
|
- lib/pact_broker/api/decorators/representable_pact.rb
|
729
743
|
- lib/pact_broker/api/decorators/tag_decorator.rb
|
744
|
+
- lib/pact_broker/api/decorators/tagged_pact_versions_decorator.rb
|
730
745
|
- lib/pact_broker/api/decorators/timestamps.rb
|
731
746
|
- lib/pact_broker/api/decorators/triggered_webhook_decorator.rb
|
732
747
|
- lib/pact_broker/api/decorators/triggered_webhooks_decorator.rb
|
@@ -776,6 +791,7 @@ files:
|
|
776
791
|
- lib/pact_broker/api/resources/provider_pacts.rb
|
777
792
|
- lib/pact_broker/api/resources/relationships.rb
|
778
793
|
- lib/pact_broker/api/resources/tag.rb
|
794
|
+
- lib/pact_broker/api/resources/tagged_pact_versions.rb
|
779
795
|
- lib/pact_broker/api/resources/triggered_webhook_logs.rb
|
780
796
|
- lib/pact_broker/api/resources/verification.rb
|
781
797
|
- lib/pact_broker/api/resources/verification_triggered_webhooks.rb
|
@@ -803,6 +819,7 @@ files:
|
|
803
819
|
- lib/pact_broker/db/clean.rb
|
804
820
|
- lib/pact_broker/db/data_migrations/set_consumer_ids_for_pact_publications.rb
|
805
821
|
- lib/pact_broker/db/data_migrations/set_pacticipant_ids_for_verifications.rb
|
822
|
+
- lib/pact_broker/db/log_quietener.rb
|
806
823
|
- lib/pact_broker/db/migrate.rb
|
807
824
|
- lib/pact_broker/db/migrate_data.rb
|
808
825
|
- lib/pact_broker/db/validate_encoding.rb
|
@@ -824,6 +841,7 @@ files:
|
|
824
841
|
- lib/pact_broker/doc/views/index/provider-pacts.markdown
|
825
842
|
- lib/pact_broker/doc/views/index/publish-pact.markdown
|
826
843
|
- lib/pact_broker/doc/views/index/self.markdown
|
844
|
+
- lib/pact_broker/doc/views/index/tagged-pact-versions.markdown
|
827
845
|
- lib/pact_broker/doc/views/integrations.markdown
|
828
846
|
- lib/pact_broker/doc/views/layouts/main.haml
|
829
847
|
- lib/pact_broker/doc/views/not_found.markdown
|
@@ -862,6 +880,7 @@ files:
|
|
862
880
|
- lib/pact_broker/labels/service.rb
|
863
881
|
- lib/pact_broker/locale/en.yml
|
864
882
|
- lib/pact_broker/logging.rb
|
883
|
+
- lib/pact_broker/logging/default_formatter.rb
|
865
884
|
- lib/pact_broker/matrix/aggregated_row.rb
|
866
885
|
- lib/pact_broker/matrix/deployment_status_summary.rb
|
867
886
|
- lib/pact_broker/matrix/head_row.rb
|
@@ -1035,6 +1054,7 @@ files:
|
|
1035
1054
|
- spec/features/create_webhook_spec.rb
|
1036
1055
|
- spec/features/delete_label_spec.rb
|
1037
1056
|
- spec/features/delete_pact_spec.rb
|
1057
|
+
- spec/features/delete_tagged_pact_versions_spec.rb
|
1038
1058
|
- spec/features/delete_version_spec.rb
|
1039
1059
|
- spec/features/delete_webhook_spec.rb
|
1040
1060
|
- spec/features/edit_webhook_spec.rb
|
@@ -1057,6 +1077,7 @@ files:
|
|
1057
1077
|
- spec/features/get_pacticipants_by_label_spec.rb
|
1058
1078
|
- spec/features/get_previous_distinct_version.rb
|
1059
1079
|
- spec/features/get_provider_pacts_spec.rb
|
1080
|
+
- spec/features/get_tagged_pact_versions_spec.rb
|
1060
1081
|
- spec/features/get_triggered_webhooks_for_pact_spec.rb
|
1061
1082
|
- spec/features/get_triggered_webhooks_for_verification_spec.rb
|
1062
1083
|
- spec/features/get_verifications_for_consumer_version_spec.rb
|
@@ -1120,6 +1141,7 @@ files:
|
|
1120
1141
|
- spec/lib/pact_broker/api/decorators/relationships_csv_decorator_spec.rb
|
1121
1142
|
- spec/lib/pact_broker/api/decorators/representable_pact_spec.rb
|
1122
1143
|
- spec/lib/pact_broker/api/decorators/tag_decorator_spec.rb
|
1144
|
+
- spec/lib/pact_broker/api/decorators/tagged_pact_versions_decorator_spec.rb
|
1123
1145
|
- spec/lib/pact_broker/api/decorators/triggered_webhook_decorator_spec.rb
|
1124
1146
|
- spec/lib/pact_broker/api/decorators/triggered_webhooks_decorator_spec.rb
|
1125
1147
|
- spec/lib/pact_broker/api/decorators/verification_decorator_spec.rb
|
@@ -1151,6 +1173,7 @@ files:
|
|
1151
1173
|
- spec/lib/pact_broker/api/resources/pending_provider_pacts_spec.rb
|
1152
1174
|
- spec/lib/pact_broker/api/resources/provider_pacts_spec.rb
|
1153
1175
|
- spec/lib/pact_broker/api/resources/tag_spec.rb
|
1176
|
+
- spec/lib/pact_broker/api/resources/tagged_pact_versions_spec.rb
|
1154
1177
|
- spec/lib/pact_broker/api/resources/triggered_webhook_logs_spec.rb
|
1155
1178
|
- spec/lib/pact_broker/api/resources/verification_triggered_webhooks_spec.rb
|
1156
1179
|
- spec/lib/pact_broker/api/resources/verifications_spec.rb
|
@@ -1168,6 +1191,7 @@ files:
|
|
1168
1191
|
- spec/lib/pact_broker/configuration_spec.rb
|
1169
1192
|
- spec/lib/pact_broker/db/clean_spec.rb
|
1170
1193
|
- spec/lib/pact_broker/db/data_migrations/set_consumer_ids_for_pact_publications_spec.rb
|
1194
|
+
- spec/lib/pact_broker/db/log_quietener_spec.rb
|
1171
1195
|
- spec/lib/pact_broker/db/validate_encoding_spec.rb
|
1172
1196
|
- spec/lib/pact_broker/diagnostic/resources/dependencies_spec.rb
|
1173
1197
|
- spec/lib/pact_broker/diagnostic/resources/heartbeat_spec.rb
|
@@ -1255,18 +1279,22 @@ files:
|
|
1255
1279
|
- spec/service_consumers/provider_states_for_pact_broker_client.rb
|
1256
1280
|
- spec/service_consumers/provider_states_for_pact_ruby.rb
|
1257
1281
|
- spec/spec_helper.rb
|
1282
|
+
- spec/support/database.rb
|
1258
1283
|
- spec/support/database_cleaner.rb
|
1259
1284
|
- spec/support/fixture_helpers.rb
|
1285
|
+
- spec/support/fixture_pact.rb
|
1260
1286
|
- spec/support/foo-bar.json
|
1261
1287
|
- spec/support/generated_index.md
|
1262
1288
|
- spec/support/generated_markdown.md
|
1263
1289
|
- spec/support/interaction_view_model.json
|
1264
1290
|
- spec/support/interaction_view_model_with_terms.json
|
1291
|
+
- spec/support/logging.rb
|
1265
1292
|
- spec/support/markdown_pact.json
|
1266
1293
|
- spec/support/markdown_pact_with_markdown_chars_in_names.json
|
1267
1294
|
- spec/support/migration_helpers.rb
|
1268
1295
|
- spec/support/rspec_match_hash.rb
|
1269
1296
|
- spec/support/rspec_matchers.rb
|
1297
|
+
- spec/support/shared_context.rb
|
1270
1298
|
- spec/support/shared_examples_for_responses.rb
|
1271
1299
|
- spec/support/ssl_webhook_server.rb
|
1272
1300
|
- spec/support/test_data_builder.rb
|
@@ -1338,7 +1366,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1338
1366
|
version: '0'
|
1339
1367
|
requirements: []
|
1340
1368
|
rubyforge_project:
|
1341
|
-
rubygems_version: 2.
|
1369
|
+
rubygems_version: 2.6.11
|
1342
1370
|
signing_key:
|
1343
1371
|
specification_version: 4
|
1344
1372
|
summary: See description
|
@@ -1348,6 +1376,7 @@ test_files:
|
|
1348
1376
|
- spec/features/create_webhook_spec.rb
|
1349
1377
|
- spec/features/delete_label_spec.rb
|
1350
1378
|
- spec/features/delete_pact_spec.rb
|
1379
|
+
- spec/features/delete_tagged_pact_versions_spec.rb
|
1351
1380
|
- spec/features/delete_version_spec.rb
|
1352
1381
|
- spec/features/delete_webhook_spec.rb
|
1353
1382
|
- spec/features/edit_webhook_spec.rb
|
@@ -1370,6 +1399,7 @@ test_files:
|
|
1370
1399
|
- spec/features/get_pacticipants_by_label_spec.rb
|
1371
1400
|
- spec/features/get_previous_distinct_version.rb
|
1372
1401
|
- spec/features/get_provider_pacts_spec.rb
|
1402
|
+
- spec/features/get_tagged_pact_versions_spec.rb
|
1373
1403
|
- spec/features/get_triggered_webhooks_for_pact_spec.rb
|
1374
1404
|
- spec/features/get_triggered_webhooks_for_verification_spec.rb
|
1375
1405
|
- spec/features/get_verifications_for_consumer_version_spec.rb
|
@@ -1433,6 +1463,7 @@ test_files:
|
|
1433
1463
|
- spec/lib/pact_broker/api/decorators/relationships_csv_decorator_spec.rb
|
1434
1464
|
- spec/lib/pact_broker/api/decorators/representable_pact_spec.rb
|
1435
1465
|
- spec/lib/pact_broker/api/decorators/tag_decorator_spec.rb
|
1466
|
+
- spec/lib/pact_broker/api/decorators/tagged_pact_versions_decorator_spec.rb
|
1436
1467
|
- spec/lib/pact_broker/api/decorators/triggered_webhook_decorator_spec.rb
|
1437
1468
|
- spec/lib/pact_broker/api/decorators/triggered_webhooks_decorator_spec.rb
|
1438
1469
|
- spec/lib/pact_broker/api/decorators/verification_decorator_spec.rb
|
@@ -1464,6 +1495,7 @@ test_files:
|
|
1464
1495
|
- spec/lib/pact_broker/api/resources/pending_provider_pacts_spec.rb
|
1465
1496
|
- spec/lib/pact_broker/api/resources/provider_pacts_spec.rb
|
1466
1497
|
- spec/lib/pact_broker/api/resources/tag_spec.rb
|
1498
|
+
- spec/lib/pact_broker/api/resources/tagged_pact_versions_spec.rb
|
1467
1499
|
- spec/lib/pact_broker/api/resources/triggered_webhook_logs_spec.rb
|
1468
1500
|
- spec/lib/pact_broker/api/resources/verification_triggered_webhooks_spec.rb
|
1469
1501
|
- spec/lib/pact_broker/api/resources/verifications_spec.rb
|
@@ -1481,6 +1513,7 @@ test_files:
|
|
1481
1513
|
- spec/lib/pact_broker/configuration_spec.rb
|
1482
1514
|
- spec/lib/pact_broker/db/clean_spec.rb
|
1483
1515
|
- spec/lib/pact_broker/db/data_migrations/set_consumer_ids_for_pact_publications_spec.rb
|
1516
|
+
- spec/lib/pact_broker/db/log_quietener_spec.rb
|
1484
1517
|
- spec/lib/pact_broker/db/validate_encoding_spec.rb
|
1485
1518
|
- spec/lib/pact_broker/diagnostic/resources/dependencies_spec.rb
|
1486
1519
|
- spec/lib/pact_broker/diagnostic/resources/heartbeat_spec.rb
|
@@ -1568,18 +1601,22 @@ test_files:
|
|
1568
1601
|
- spec/service_consumers/provider_states_for_pact_broker_client.rb
|
1569
1602
|
- spec/service_consumers/provider_states_for_pact_ruby.rb
|
1570
1603
|
- spec/spec_helper.rb
|
1604
|
+
- spec/support/database.rb
|
1571
1605
|
- spec/support/database_cleaner.rb
|
1572
1606
|
- spec/support/fixture_helpers.rb
|
1607
|
+
- spec/support/fixture_pact.rb
|
1573
1608
|
- spec/support/foo-bar.json
|
1574
1609
|
- spec/support/generated_index.md
|
1575
1610
|
- spec/support/generated_markdown.md
|
1576
1611
|
- spec/support/interaction_view_model.json
|
1577
1612
|
- spec/support/interaction_view_model_with_terms.json
|
1613
|
+
- spec/support/logging.rb
|
1578
1614
|
- spec/support/markdown_pact.json
|
1579
1615
|
- spec/support/markdown_pact_with_markdown_chars_in_names.json
|
1580
1616
|
- spec/support/migration_helpers.rb
|
1581
1617
|
- spec/support/rspec_match_hash.rb
|
1582
1618
|
- spec/support/rspec_matchers.rb
|
1619
|
+
- spec/support/shared_context.rb
|
1583
1620
|
- spec/support/shared_examples_for_responses.rb
|
1584
1621
|
- spec/support/ssl_webhook_server.rb
|
1585
1622
|
- spec/support/test_data_builder.rb
|