pact_broker 2.83.0 → 2.84.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +19 -0
- data/Dockerfile +1 -1
- data/db/migrations/20210816_create_branches_tables.rb +40 -0
- data/db/migrations/20210831_add_index_to_pact_publications.rb +7 -0
- data/db/migrations/20210908_add_auto_created.rb +24 -0
- data/issue-reproduction/Dockerfile-pact-broker +1 -1
- data/lib/pact_broker/api/contracts/{verifiable_pacts_json_query_schema.rb → pacts_for_verification_json_query_schema.rb} +1 -1
- data/lib/pact_broker/api/contracts/{verifiable_pacts_query_schema.rb → pacts_for_verification_query_string_schema.rb} +1 -1
- data/lib/pact_broker/api/decorators/branch_version_decorator.rb +20 -0
- data/lib/pact_broker/api/decorators/dashboard_decorator.rb +4 -2
- data/lib/pact_broker/api/decorators/embedded_branch_version_decorator.rb +21 -0
- data/lib/pact_broker/api/decorators/embedded_tag_decorator.rb +0 -5
- data/lib/pact_broker/api/decorators/matrix_decorator.rb +11 -2
- data/lib/pact_broker/api/decorators/pacticipant_decorator.rb +8 -0
- data/lib/pact_broker/api/decorators/{verifiable_pacts_query_decorator.rb → pacts_for_verification_query_decorator.rb} +2 -2
- data/lib/pact_broker/api/decorators/version_decorator.rb +1 -1
- data/lib/pact_broker/api/pact_broker_urls.rb +8 -0
- data/lib/pact_broker/api/resources/branch_version.rb +48 -0
- data/lib/pact_broker/api/resources/index.rb +6 -0
- data/lib/pact_broker/api/resources/provider_pacts_for_verification.rb +6 -6
- data/lib/pact_broker/api/resources/version.rb +0 -8
- data/lib/pact_broker/api.rb +1 -0
- data/lib/pact_broker/config/runtime_configuration.rb +12 -0
- data/lib/pact_broker/contracts/service.rb +1 -1
- data/lib/pact_broker/db/data_migrations/create_branches.rb +97 -0
- data/lib/pact_broker/db/data_migrations/set_pacticipant_main_branch.rb +2 -0
- data/lib/pact_broker/db/migrate_data.rb +1 -1
- data/lib/pact_broker/db/models.rb +6 -0
- data/lib/pact_broker/deployments/deployed_version.rb +4 -0
- data/lib/pact_broker/deployments/deployed_version_service.rb +4 -3
- data/lib/pact_broker/deployments/environment.rb +4 -0
- data/lib/pact_broker/deployments/environment_service.rb +13 -8
- data/lib/pact_broker/doc/views/index/pacticipant-branch-version.markdown +14 -0
- data/lib/pact_broker/doc/views/webhooks.markdown +1 -0
- data/lib/pact_broker/domain/index_item.rb +15 -17
- data/lib/pact_broker/domain/pacticipant.rb +11 -0
- data/lib/pact_broker/domain/tag.rb +1 -2
- data/lib/pact_broker/domain/verification.rb +16 -13
- data/lib/pact_broker/domain/version.rb +87 -33
- data/lib/pact_broker/index/service.rb +8 -4
- data/lib/pact_broker/locale/en.yml +1 -0
- data/lib/pact_broker/matrix/quick_row.rb +6 -6
- data/lib/pact_broker/metrics/service.rb +7 -1
- data/lib/pact_broker/pacts/pact_publication.rb +22 -25
- data/lib/pact_broker/pacts/pact_publication_dataset_module.rb +74 -33
- data/lib/pact_broker/pacts/pact_publication_selector_dataset_module.rb +18 -13
- data/lib/pact_broker/pacts/pact_publication_wip_dataset_module.rb +16 -4
- data/lib/pact_broker/pacts/pact_version.rb +11 -0
- data/lib/pact_broker/pacts/pacts_for_verification_repository.rb +3 -3
- data/lib/pact_broker/pacts/selected_pact.rb +2 -2
- data/lib/pact_broker/pacts/selector.rb +98 -33
- data/lib/pact_broker/repositories.rb +5 -0
- data/lib/pact_broker/services.rb +9 -0
- data/lib/pact_broker/test/http_test_data_builder.rb +32 -7
- data/lib/pact_broker/test/test_data_builder.rb +25 -24
- data/lib/pact_broker/ui/view_models/index_item.rb +11 -0
- data/lib/pact_broker/ui/view_models/matrix_branch.rb +39 -0
- data/lib/pact_broker/ui/view_models/matrix_line.rb +11 -16
- data/lib/pact_broker/ui/views/index/show-with-tags.haml +12 -11
- data/lib/pact_broker/ui/views/matrix/show.haml +8 -8
- data/lib/pact_broker/version.rb +1 -1
- data/lib/pact_broker/versions/branch.rb +29 -0
- data/lib/pact_broker/versions/branch_head.rb +45 -0
- data/lib/pact_broker/versions/branch_service.rb +24 -0
- data/lib/pact_broker/versions/branch_version.rb +64 -0
- data/lib/pact_broker/versions/branch_version_repository.rb +34 -0
- data/lib/pact_broker/versions/eager_loaders.rb +0 -42
- data/lib/pact_broker/versions/repository.rb +25 -12
- data/lib/pact_broker/versions/service.rb +3 -22
- data/lib/pact_broker/webhooks/pact_and_verification_parameters.rb +11 -2
- data/lib/sequel/plugins/insert_ignore.rb +4 -0
- data/lib/sequel/plugins/upsert.rb +4 -0
- data/public/javascripts/index.js +129 -34
- data/scaffolding/templates/decorator.rb.erb +3 -1
- data/scaffolding/templates/migration.erb +1 -1
- data/scaffolding/templates/model.erb +2 -2
- data/scaffolding/templates/repository.rb.erb +2 -2
- data/scaffolding/templates/repository_spec.rb.erb +1 -1
- data/scaffolding/templates/resource.erb +2 -2
- data/scaffolding/templates/resource_spec.rb.erb +1 -1
- data/scaffolding/templates/service.rb.erb +3 -3
- data/scaffolding/templates/service_spec.rb.erb +1 -1
- data/script/data/branches.rb +35 -0
- data/script/data/issue-494.rb +25 -0
- data/spec/features/create_branch_version_spec.rb +29 -0
- data/spec/features/create_tag_spec.rb +1 -1
- data/spec/features/create_version_spec.rb +2 -4
- data/spec/features/get_branch_version_spec.rb +12 -0
- data/spec/features/publish_pact_all_in_one_spec.rb +0 -1
- data/spec/features/update_version_spec.rb +0 -55
- data/spec/fixtures/approvals/modifiable_resources.approved.json +3 -0
- data/spec/fixtures/approvals/publish_contract_nothing_exists.approved.json +1 -2
- data/spec/fixtures/approvals/publish_contract_nothing_exists_with_webhook.approved.json +1 -2
- data/spec/fixtures/approvals/publish_contract_verification_already_exists.approved.json +1 -2
- data/spec/fixtures/dashboard.json +4 -2
- data/spec/integration/ui/index_spec.rb +0 -2
- data/spec/integration/ui/matrix_spec.rb +0 -1
- data/spec/lib/pact_broker/api/contracts/{verifiable_pacts_json_query_schema_combinations_spec.rb → pacts_for_verification_json_query_schema_combinations_spec.rb} +6 -6
- data/spec/lib/pact_broker/api/contracts/{verifiable_pacts_json_query_schema_spec.rb → pacts_for_verification_json_query_schema_spec.rb} +3 -3
- data/spec/lib/pact_broker/api/contracts/{verifiable_pacts_query_schema_spec.rb → pacts_for_verification_query_string_schema_spec.rb} +3 -3
- data/spec/lib/pact_broker/api/decorators/dashboard_decorator_spec.rb +7 -7
- data/spec/lib/pact_broker/api/decorators/matrix_decorator_spec.rb +19 -4
- data/spec/lib/pact_broker/api/decorators/{verifiable_pacts_query_decorator_spec.rb → pacts_for_verification_query_decorator_spec.rb} +3 -3
- data/spec/lib/pact_broker/api/decorators/version_decorator_spec.rb +7 -3
- data/spec/lib/pact_broker/contracts/service_spec.rb +24 -3
- data/spec/lib/pact_broker/db/data_migrations/create_branches_spec.rb +57 -0
- data/spec/lib/pact_broker/domain/index_item_spec.rb +1 -1
- data/spec/lib/pact_broker/domain/version_spec.rb +1 -35
- data/spec/lib/pact_broker/metrics/service_spec.rb +4 -1
- data/spec/lib/pact_broker/pacts/pact_publication_dataset_module_spec.rb +109 -10
- data/spec/lib/pact_broker/pacts/pact_publication_selector_dataset_module_spec.rb +3 -2
- data/spec/lib/pact_broker/pacts/pact_publication_spec.rb +5 -5
- data/spec/lib/pact_broker/pacts/repository_find_for_currently_deployed_spec.rb +2 -2
- data/spec/lib/pact_broker/pacts/repository_find_for_currently_supported_releases_spec.rb +2 -2
- data/spec/lib/pact_broker/pacts/selector_spec.rb +45 -3
- data/spec/lib/pact_broker/pacts/verifiable_pact_messages_spec.rb +5 -5
- data/spec/lib/pact_broker/relationships/groupify_spec.rb +0 -5
- data/spec/lib/pact_broker/ui/view_models/index_item_spec.rb +15 -3
- data/spec/lib/pact_broker/verifications/repository_spec.rb +1 -1
- data/spec/lib/pact_broker/versions/branch_service_spec.rb +71 -0
- data/spec/lib/pact_broker/versions/branch_version_repository_spec.rb +81 -0
- data/spec/lib/pact_broker/versions/branch_version_spec.rb +27 -0
- data/spec/lib/pact_broker/versions/repository_spec.rb +91 -6
- data/spec/lib/pact_broker/versions/service_spec.rb +4 -3
- data/spec/lib/pact_broker/webhooks/render_spec.rb +6 -0
- data/spec/lib/sequel/plugins/upsert_spec.rb +11 -5
- data/spec/migrations/44_add_provider_version_to_verification_spec.rb +6 -9
- metadata +42 -15
- data/lib/pact_broker/versions/lazy_loaders.rb +0 -13
@@ -37,7 +37,7 @@ module PactBroker
|
|
37
37
|
|
38
38
|
it "does not update the branch" do
|
39
39
|
subject
|
40
|
-
expect(td.find_version(pacticipant_name, version_number).
|
40
|
+
expect(td.find_version(pacticipant_name, version_number).branch_names).to eq ["foo"]
|
41
41
|
end
|
42
42
|
end
|
43
43
|
|
@@ -77,7 +77,8 @@ module PactBroker
|
|
77
77
|
|
78
78
|
context "when the version was created within the limit" do
|
79
79
|
before do
|
80
|
-
version = td
|
80
|
+
version = td
|
81
|
+
.create_consumer(pacticipant_name)
|
81
82
|
.create_consumer_version(version_number)
|
82
83
|
.and_return(:consumer_version)
|
83
84
|
|
@@ -91,7 +92,7 @@ module PactBroker
|
|
91
92
|
|
92
93
|
it "sets the branch" do
|
93
94
|
subject
|
94
|
-
expect(td.find_version(pacticipant_name, version_number).
|
95
|
+
expect(td.find_version(pacticipant_name, version_number).branch_names).to include "prod"
|
95
96
|
end
|
96
97
|
end
|
97
98
|
end
|
@@ -124,6 +124,12 @@ module PactBroker
|
|
124
124
|
["${pactbroker.azureDevOpsVerificationStatus}", "pending", :pact_with_no_verification, :nil_verification],
|
125
125
|
["${pactbroker.azureDevOpsVerificationStatus}", "succeeded", :pact_with_successful_verification, :nil_verification],
|
126
126
|
["${pactbroker.azureDevOpsVerificationStatus}", "failed", :pact_with_failed_verification, :nil_verification],
|
127
|
+
["${pactbroker.gitlabVerificationStatus}", "success", :pact, :verification],
|
128
|
+
["${pactbroker.gitlabVerificationStatus}", "failed", :pact, :failed_verification],
|
129
|
+
["${pactbroker.gitlabVerificationStatus}", "pending", :nil_pact, :nil_verification],
|
130
|
+
["${pactbroker.gitlabVerificationStatus}", "pending", :pact_with_no_verification, :nil_verification],
|
131
|
+
["${pactbroker.gitlabVerificationStatus}", "success", :pact_with_successful_verification, :nil_verification],
|
132
|
+
["${pactbroker.gitlabVerificationStatus}", "failed", :pact_with_failed_verification, :nil_verification],
|
127
133
|
["${pactbroker.verificationResultUrl}", "", :pact_with_no_verification, :nil_verification],
|
128
134
|
["${pactbroker.verificationResultUrl}", "http://verification", :pact_with_successful_verification, :nil_verification],
|
129
135
|
["${pactbroker.verificationResultUrl}", "http://verification", :pact_with_successful_verification, :verification],
|
@@ -112,7 +112,6 @@ module Sequel
|
|
112
112
|
version = Version.new(
|
113
113
|
number: "1",
|
114
114
|
pacticipant_id: pacticipant.id,
|
115
|
-
branch: "original-branch",
|
116
115
|
build_url: "original-url"
|
117
116
|
).upsert
|
118
117
|
Version.where(id: version.id).update(created_at: yesterday, updated_at: yesterday)
|
@@ -121,7 +120,7 @@ module Sequel
|
|
121
120
|
let(:yesterday) { DateTime.now - 2 }
|
122
121
|
|
123
122
|
subject do
|
124
|
-
Version.new(number: "1", pacticipant_id: pacticipant.id,
|
123
|
+
Version.new(number: "1", pacticipant_id: pacticipant.id, build_url: "new-url").upsert
|
125
124
|
end
|
126
125
|
|
127
126
|
it "does not raise an error" do
|
@@ -129,13 +128,20 @@ module Sequel
|
|
129
128
|
end
|
130
129
|
|
131
130
|
it "sets the values on the object" do
|
132
|
-
expect(subject.
|
131
|
+
expect(subject.build_url).to eq "new-url"
|
133
132
|
end
|
134
133
|
|
135
|
-
|
136
|
-
|
134
|
+
context "when an attribute is not set" do
|
135
|
+
subject do
|
136
|
+
Version.new(number: "1", pacticipant_id: pacticipant.id).upsert
|
137
|
+
end
|
138
|
+
|
139
|
+
it "nils out values that weren't set on the second model" do
|
140
|
+
expect(subject.build_url).to eq nil
|
141
|
+
end
|
137
142
|
end
|
138
143
|
|
144
|
+
|
139
145
|
it "does not insert another row" do
|
140
146
|
expect { subject }.to_not change { Version.count }
|
141
147
|
end
|
@@ -31,29 +31,26 @@ describe "add provider version relationship to verification (migrate 42-44)", mi
|
|
31
31
|
subject { PactBroker::Database.migrate(46) }
|
32
32
|
|
33
33
|
it "creates a version object" do
|
34
|
-
expect { subject }.to change {
|
34
|
+
expect { subject }.to change { database[:versions].count }.by(1)
|
35
35
|
end
|
36
36
|
|
37
37
|
it "sets the foreign key to the new version" do
|
38
38
|
subject
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
it "sets the created_at date of the new version to the created_at of the verification" do
|
43
|
-
subject
|
44
|
-
expect(PactBroker::Domain::Verification.first.provider_version.created_at.to_datetime).to eq now
|
39
|
+
provider_version_id = database[:verifications].order(:id).first[:provider_version_id]
|
40
|
+
expect(database[:versions].where(id: provider_version_id).single_record[:number]).to eq "1.2.3"
|
45
41
|
end
|
46
42
|
|
47
43
|
context "when the version already exists" do
|
48
44
|
let!(:provider_version) { create(:versions, {number: "1.2.3", order: 1, pacticipant_id: provider[:id], created_at: now, updated_at: now}) }
|
49
45
|
|
50
46
|
it "does not create a version object" do
|
51
|
-
expect { subject }.to_not change {
|
47
|
+
expect { subject }.to_not change { database[:versions].count }
|
52
48
|
end
|
53
49
|
|
54
50
|
it "sets the foreign key to the existing version" do
|
55
51
|
subject
|
56
|
-
|
52
|
+
provider_version_id = database[:verifications].order(:id).first[:provider_version_id]
|
53
|
+
expect(database[:versions].where(id: provider_version_id).single_record[:number]).to eq "1.2.3"
|
57
54
|
end
|
58
55
|
end
|
59
56
|
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.
|
4
|
+
version: 2.84.0
|
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: 2021-
|
13
|
+
date: 2021-09-10 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: httparty
|
@@ -578,7 +578,10 @@ files:
|
|
578
578
|
- db/migrations/20210722_add_index_to_triggered_webhooks_webhook_uuid.rb
|
579
579
|
- db/migrations/20210810_set_allow_contract_modification.rb
|
580
580
|
- db/migrations/20210815_add_provider_version_id_index_to_verifications.rb
|
581
|
+
- db/migrations/20210816_create_branches_tables.rb
|
581
582
|
- db/migrations/20210818_add_consumer_version_selectors_to_verification.rb
|
583
|
+
- db/migrations/20210831_add_index_to_pact_publications.rb
|
584
|
+
- db/migrations/20210908_add_auto_created.rb
|
582
585
|
- db/migrations/migration_helper.rb
|
583
586
|
- db/test/backwards_compatibility/.rspec
|
584
587
|
- db/test/backwards_compatibility/Appraisals
|
@@ -646,16 +649,17 @@ files:
|
|
646
649
|
- lib/pact_broker/api/contracts/pacticipant_name_contract.rb
|
647
650
|
- lib/pact_broker/api/contracts/pacticipant_name_validation.rb
|
648
651
|
- lib/pact_broker/api/contracts/pacticipant_schema.rb
|
652
|
+
- lib/pact_broker/api/contracts/pacts_for_verification_json_query_schema.rb
|
653
|
+
- lib/pact_broker/api/contracts/pacts_for_verification_query_string_schema.rb
|
649
654
|
- lib/pact_broker/api/contracts/publish_contracts_schema.rb
|
650
655
|
- lib/pact_broker/api/contracts/put_pact_params_contract.rb
|
651
656
|
- lib/pact_broker/api/contracts/request_validations.rb
|
652
|
-
- lib/pact_broker/api/contracts/verifiable_pacts_json_query_schema.rb
|
653
|
-
- lib/pact_broker/api/contracts/verifiable_pacts_query_schema.rb
|
654
657
|
- lib/pact_broker/api/contracts/verification_contract.rb
|
655
658
|
- lib/pact_broker/api/contracts/webhook_contract.rb
|
656
659
|
- lib/pact_broker/api/decorators.rb
|
657
660
|
- lib/pact_broker/api/decorators/base_decorator.rb
|
658
661
|
- lib/pact_broker/api/decorators/basic_pacticipant_decorator.rb
|
662
|
+
- lib/pact_broker/api/decorators/branch_version_decorator.rb
|
659
663
|
- lib/pact_broker/api/decorators/configuration.rb
|
660
664
|
- lib/pact_broker/api/decorators/dashboard_decorator.rb
|
661
665
|
- lib/pact_broker/api/decorators/dashboard_text_decorator.rb
|
@@ -663,6 +667,7 @@ files:
|
|
663
667
|
- lib/pact_broker/api/decorators/decorator_context_creator.rb
|
664
668
|
- lib/pact_broker/api/decorators/deployed_version_decorator.rb
|
665
669
|
- lib/pact_broker/api/decorators/deployed_versions_decorator.rb
|
670
|
+
- lib/pact_broker/api/decorators/embedded_branch_version_decorator.rb
|
666
671
|
- lib/pact_broker/api/decorators/embedded_label_decorator.rb
|
667
672
|
- lib/pact_broker/api/decorators/embedded_pacticipant_decorator.rb
|
668
673
|
- lib/pact_broker/api/decorators/embedded_tag_decorator.rb
|
@@ -687,6 +692,7 @@ files:
|
|
687
692
|
- lib/pact_broker/api/decorators/pact_webhooks_status_decorator.rb
|
688
693
|
- lib/pact_broker/api/decorators/pacticipant_collection_decorator.rb
|
689
694
|
- lib/pact_broker/api/decorators/pacticipant_decorator.rb
|
695
|
+
- lib/pact_broker/api/decorators/pacts_for_verification_query_decorator.rb
|
690
696
|
- lib/pact_broker/api/decorators/pagination_links.rb
|
691
697
|
- lib/pact_broker/api/decorators/provider_pacts_decorator.rb
|
692
698
|
- lib/pact_broker/api/decorators/publish_contract_decorator.rb
|
@@ -704,7 +710,6 @@ files:
|
|
704
710
|
- lib/pact_broker/api/decorators/triggered_webhooks_decorator.rb
|
705
711
|
- lib/pact_broker/api/decorators/verifiable_pact_decorator.rb
|
706
712
|
- lib/pact_broker/api/decorators/verifiable_pacts_decorator.rb
|
707
|
-
- lib/pact_broker/api/decorators/verifiable_pacts_query_decorator.rb
|
708
713
|
- lib/pact_broker/api/decorators/verification_decorator.rb
|
709
714
|
- lib/pact_broker/api/decorators/verification_summary_decorator.rb
|
710
715
|
- lib/pact_broker/api/decorators/version_decorator.rb
|
@@ -724,6 +729,7 @@ files:
|
|
724
729
|
- lib/pact_broker/api/resources/authorization.rb
|
725
730
|
- lib/pact_broker/api/resources/badge.rb
|
726
731
|
- lib/pact_broker/api/resources/base_resource.rb
|
732
|
+
- lib/pact_broker/api/resources/branch_version.rb
|
727
733
|
- lib/pact_broker/api/resources/can_i_deploy.rb
|
728
734
|
- lib/pact_broker/api/resources/can_i_deploy_badge.rb
|
729
735
|
- lib/pact_broker/api/resources/can_i_deploy_pacticipant_version.rb
|
@@ -819,6 +825,7 @@ files:
|
|
819
825
|
- lib/pact_broker/db/clean.rb
|
820
826
|
- lib/pact_broker/db/clean/selector.rb
|
821
827
|
- lib/pact_broker/db/clean_incremental.rb
|
828
|
+
- lib/pact_broker/db/data_migrations/create_branches.rb
|
822
829
|
- lib/pact_broker/db/data_migrations/delete_deprecated_webhook_executions.rb
|
823
830
|
- lib/pact_broker/db/data_migrations/helpers.rb
|
824
831
|
- lib/pact_broker/db/data_migrations/migrate_webhook_headers.rb
|
@@ -868,6 +875,7 @@ files:
|
|
868
875
|
- lib/pact_broker/doc/views/index/latest-provider-pacts.markdown
|
869
876
|
- lib/pact_broker/doc/views/index/latest-tagged-version.markdown
|
870
877
|
- lib/pact_broker/doc/views/index/latest-version.markdown
|
878
|
+
- lib/pact_broker/doc/views/index/pacticipant-branch-version.markdown
|
871
879
|
- lib/pact_broker/doc/views/index/pacticipant-version-tag.markdown
|
872
880
|
- lib/pact_broker/doc/views/index/pacticipant-version.markdown
|
873
881
|
- lib/pact_broker/doc/views/index/pacticipants.markdown
|
@@ -1027,6 +1035,7 @@ files:
|
|
1027
1035
|
- lib/pact_broker/ui/view_models/clusters.rb
|
1028
1036
|
- lib/pact_broker/ui/view_models/index_item.rb
|
1029
1037
|
- lib/pact_broker/ui/view_models/index_items.rb
|
1038
|
+
- lib/pact_broker/ui/view_models/matrix_branch.rb
|
1030
1039
|
- lib/pact_broker/ui/view_models/matrix_deployed_version.rb
|
1031
1040
|
- lib/pact_broker/ui/view_models/matrix_line.rb
|
1032
1041
|
- lib/pact_broker/ui/view_models/matrix_lines.rb
|
@@ -1055,9 +1064,13 @@ files:
|
|
1055
1064
|
- lib/pact_broker/verifications/summary_for_consumer_version.rb
|
1056
1065
|
- lib/pact_broker/version.rb
|
1057
1066
|
- lib/pact_broker/versions/abbreviate_number.rb
|
1067
|
+
- lib/pact_broker/versions/branch.rb
|
1068
|
+
- lib/pact_broker/versions/branch_head.rb
|
1069
|
+
- lib/pact_broker/versions/branch_service.rb
|
1070
|
+
- lib/pact_broker/versions/branch_version.rb
|
1071
|
+
- lib/pact_broker/versions/branch_version_repository.rb
|
1058
1072
|
- lib/pact_broker/versions/eager_loaders.rb
|
1059
1073
|
- lib/pact_broker/versions/latest_version.rb
|
1060
|
-
- lib/pact_broker/versions/lazy_loaders.rb
|
1061
1074
|
- lib/pact_broker/versions/parse_semantic_version.rb
|
1062
1075
|
- lib/pact_broker/versions/repository.rb
|
1063
1076
|
- lib/pact_broker/versions/sequence.rb
|
@@ -1194,9 +1207,11 @@ files:
|
|
1194
1207
|
- scaffolding/templates/service.rb.erb
|
1195
1208
|
- scaffolding/templates/service_spec.rb.erb
|
1196
1209
|
- script/data/auto-create-things-for-tags.rb
|
1210
|
+
- script/data/branches.rb
|
1197
1211
|
- script/data/contract-published-requiring-verification.rb
|
1198
1212
|
- script/data/environments.rb
|
1199
1213
|
- script/data/expand-currently-deployed.rb
|
1214
|
+
- script/data/issue-494.rb
|
1200
1215
|
- script/db-spec.sh
|
1201
1216
|
- script/demonstrate-version-branches.rb
|
1202
1217
|
- script/dev/rubocop-modified-files.sh
|
@@ -1252,6 +1267,7 @@ files:
|
|
1252
1267
|
- script/webhook-server.ru
|
1253
1268
|
- spec/features/base_equality_only_on_content_that_affects_verification_results_spec.rb
|
1254
1269
|
- spec/features/can_i_deploy_spec.rb
|
1270
|
+
- spec/features/create_branch_version_spec.rb
|
1255
1271
|
- spec/features/create_environment_spec.rb
|
1256
1272
|
- spec/features/create_pacticipant_spec.rb
|
1257
1273
|
- spec/features/create_tag_spec.rb
|
@@ -1271,6 +1287,7 @@ files:
|
|
1271
1287
|
- spec/features/end_support_spec.rb
|
1272
1288
|
- spec/features/execute_unsaved_webhook_spec.rb
|
1273
1289
|
- spec/features/execute_webhook_spec.rb
|
1290
|
+
- spec/features/get_branch_version_spec.rb
|
1274
1291
|
- spec/features/get_can_i_deploy_badge_spec.rb
|
1275
1292
|
- spec/features/get_currently_deployed_versions_for_environment_spec.rb
|
1276
1293
|
- spec/features/get_currently_deployed_versions_for_version_spec.rb
|
@@ -1372,11 +1389,11 @@ files:
|
|
1372
1389
|
- spec/lib/pact/doc/markdown/index_renderer_spec.rb
|
1373
1390
|
- spec/lib/pact_broker/api/contracts/environment_schema_spec.rb
|
1374
1391
|
- spec/lib/pact_broker/api/contracts/pacticipant_schema_spec.rb
|
1392
|
+
- spec/lib/pact_broker/api/contracts/pacts_for_verification_json_query_schema_combinations_spec.rb
|
1393
|
+
- spec/lib/pact_broker/api/contracts/pacts_for_verification_json_query_schema_spec.rb
|
1394
|
+
- spec/lib/pact_broker/api/contracts/pacts_for_verification_query_string_schema_spec.rb
|
1375
1395
|
- spec/lib/pact_broker/api/contracts/publish_contracts_schema_spec.rb
|
1376
1396
|
- spec/lib/pact_broker/api/contracts/put_pact_params_contract_spec.rb
|
1377
|
-
- spec/lib/pact_broker/api/contracts/verifiable_pacts_json_query_schema_combinations_spec.rb
|
1378
|
-
- spec/lib/pact_broker/api/contracts/verifiable_pacts_json_query_schema_spec.rb
|
1379
|
-
- spec/lib/pact_broker/api/contracts/verifiable_pacts_query_schema_spec.rb
|
1380
1397
|
- spec/lib/pact_broker/api/contracts/verification_contract_spec.rb
|
1381
1398
|
- spec/lib/pact_broker/api/contracts/webhook_contract_spec.rb
|
1382
1399
|
- spec/lib/pact_broker/api/decorators/dashboard_decorator_spec.rb
|
@@ -1395,6 +1412,7 @@ files:
|
|
1395
1412
|
- spec/lib/pact_broker/api/decorators/pact_webhooks_status_decorator_spec.rb
|
1396
1413
|
- spec/lib/pact_broker/api/decorators/pacticipant_collection_decorator_spec.rb
|
1397
1414
|
- spec/lib/pact_broker/api/decorators/pacticipant_decorator_spec.rb
|
1415
|
+
- spec/lib/pact_broker/api/decorators/pacts_for_verification_query_decorator_spec.rb
|
1398
1416
|
- spec/lib/pact_broker/api/decorators/provider_pacts_decorator_spec.rb
|
1399
1417
|
- spec/lib/pact_broker/api/decorators/publish_contracts_results_decorator_spec.rb
|
1400
1418
|
- spec/lib/pact_broker/api/decorators/reason_decorator_spec.rb
|
@@ -1406,7 +1424,6 @@ files:
|
|
1406
1424
|
- spec/lib/pact_broker/api/decorators/triggered_webhooks_decorator_spec.rb
|
1407
1425
|
- spec/lib/pact_broker/api/decorators/verifiable_pact_decorator_spec.rb
|
1408
1426
|
- spec/lib/pact_broker/api/decorators/verifiable_pacts_decorator_spec.rb
|
1409
|
-
- spec/lib/pact_broker/api/decorators/verifiable_pacts_query_decorator_spec.rb
|
1410
1427
|
- spec/lib/pact_broker/api/decorators/verification_decorator_spec.rb
|
1411
1428
|
- spec/lib/pact_broker/api/decorators/verification_summary_decorator_spec.rb
|
1412
1429
|
- spec/lib/pact_broker/api/decorators/version_decorator_spec.rb
|
@@ -1467,6 +1484,7 @@ files:
|
|
1467
1484
|
- spec/lib/pact_broker/db/clean_incremental_spec.rb
|
1468
1485
|
- spec/lib/pact_broker/db/clean_old_spec.rb
|
1469
1486
|
- spec/lib/pact_broker/db/clean_spec.rb
|
1487
|
+
- spec/lib/pact_broker/db/data_migrations/create_branches_spec.rb
|
1470
1488
|
- spec/lib/pact_broker/db/data_migrations/migrate_webhook_headers_spec.rb
|
1471
1489
|
- spec/lib/pact_broker/db/data_migrations/set_consumer_ids_for_pact_publications_spec.rb
|
1472
1490
|
- spec/lib/pact_broker/db/data_migrations/set_interactions_counts_spec.rb
|
@@ -1571,6 +1589,9 @@ files:
|
|
1571
1589
|
- spec/lib/pact_broker/verifications/service_spec.rb
|
1572
1590
|
- spec/lib/pact_broker/verifications/summary_for_consumer_version_spec.rb
|
1573
1591
|
- spec/lib/pact_broker/versions/abbreviate_number_spec.rb
|
1592
|
+
- spec/lib/pact_broker/versions/branch_service_spec.rb
|
1593
|
+
- spec/lib/pact_broker/versions/branch_version_repository_spec.rb
|
1594
|
+
- spec/lib/pact_broker/versions/branch_version_spec.rb
|
1574
1595
|
- spec/lib/pact_broker/versions/parse_semantic_version_spec.rb
|
1575
1596
|
- spec/lib/pact_broker/versions/repository_spec.rb
|
1576
1597
|
- spec/lib/pact_broker/versions/service_spec.rb
|
@@ -1714,13 +1735,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1714
1735
|
- !ruby/object:Gem::Version
|
1715
1736
|
version: '0'
|
1716
1737
|
requirements: []
|
1717
|
-
rubygems_version: 3.2.
|
1738
|
+
rubygems_version: 3.2.27
|
1718
1739
|
signing_key:
|
1719
1740
|
specification_version: 4
|
1720
1741
|
summary: See description
|
1721
1742
|
test_files:
|
1722
1743
|
- spec/features/base_equality_only_on_content_that_affects_verification_results_spec.rb
|
1723
1744
|
- spec/features/can_i_deploy_spec.rb
|
1745
|
+
- spec/features/create_branch_version_spec.rb
|
1724
1746
|
- spec/features/create_environment_spec.rb
|
1725
1747
|
- spec/features/create_pacticipant_spec.rb
|
1726
1748
|
- spec/features/create_tag_spec.rb
|
@@ -1740,6 +1762,7 @@ test_files:
|
|
1740
1762
|
- spec/features/end_support_spec.rb
|
1741
1763
|
- spec/features/execute_unsaved_webhook_spec.rb
|
1742
1764
|
- spec/features/execute_webhook_spec.rb
|
1765
|
+
- spec/features/get_branch_version_spec.rb
|
1743
1766
|
- spec/features/get_can_i_deploy_badge_spec.rb
|
1744
1767
|
- spec/features/get_currently_deployed_versions_for_environment_spec.rb
|
1745
1768
|
- spec/features/get_currently_deployed_versions_for_version_spec.rb
|
@@ -1841,11 +1864,11 @@ test_files:
|
|
1841
1864
|
- spec/lib/pact/doc/markdown/index_renderer_spec.rb
|
1842
1865
|
- spec/lib/pact_broker/api/contracts/environment_schema_spec.rb
|
1843
1866
|
- spec/lib/pact_broker/api/contracts/pacticipant_schema_spec.rb
|
1867
|
+
- spec/lib/pact_broker/api/contracts/pacts_for_verification_json_query_schema_combinations_spec.rb
|
1868
|
+
- spec/lib/pact_broker/api/contracts/pacts_for_verification_json_query_schema_spec.rb
|
1869
|
+
- spec/lib/pact_broker/api/contracts/pacts_for_verification_query_string_schema_spec.rb
|
1844
1870
|
- spec/lib/pact_broker/api/contracts/publish_contracts_schema_spec.rb
|
1845
1871
|
- spec/lib/pact_broker/api/contracts/put_pact_params_contract_spec.rb
|
1846
|
-
- spec/lib/pact_broker/api/contracts/verifiable_pacts_json_query_schema_combinations_spec.rb
|
1847
|
-
- spec/lib/pact_broker/api/contracts/verifiable_pacts_json_query_schema_spec.rb
|
1848
|
-
- spec/lib/pact_broker/api/contracts/verifiable_pacts_query_schema_spec.rb
|
1849
1872
|
- spec/lib/pact_broker/api/contracts/verification_contract_spec.rb
|
1850
1873
|
- spec/lib/pact_broker/api/contracts/webhook_contract_spec.rb
|
1851
1874
|
- spec/lib/pact_broker/api/decorators/dashboard_decorator_spec.rb
|
@@ -1864,6 +1887,7 @@ test_files:
|
|
1864
1887
|
- spec/lib/pact_broker/api/decorators/pact_webhooks_status_decorator_spec.rb
|
1865
1888
|
- spec/lib/pact_broker/api/decorators/pacticipant_collection_decorator_spec.rb
|
1866
1889
|
- spec/lib/pact_broker/api/decorators/pacticipant_decorator_spec.rb
|
1890
|
+
- spec/lib/pact_broker/api/decorators/pacts_for_verification_query_decorator_spec.rb
|
1867
1891
|
- spec/lib/pact_broker/api/decorators/provider_pacts_decorator_spec.rb
|
1868
1892
|
- spec/lib/pact_broker/api/decorators/publish_contracts_results_decorator_spec.rb
|
1869
1893
|
- spec/lib/pact_broker/api/decorators/reason_decorator_spec.rb
|
@@ -1875,7 +1899,6 @@ test_files:
|
|
1875
1899
|
- spec/lib/pact_broker/api/decorators/triggered_webhooks_decorator_spec.rb
|
1876
1900
|
- spec/lib/pact_broker/api/decorators/verifiable_pact_decorator_spec.rb
|
1877
1901
|
- spec/lib/pact_broker/api/decorators/verifiable_pacts_decorator_spec.rb
|
1878
|
-
- spec/lib/pact_broker/api/decorators/verifiable_pacts_query_decorator_spec.rb
|
1879
1902
|
- spec/lib/pact_broker/api/decorators/verification_decorator_spec.rb
|
1880
1903
|
- spec/lib/pact_broker/api/decorators/verification_summary_decorator_spec.rb
|
1881
1904
|
- spec/lib/pact_broker/api/decorators/version_decorator_spec.rb
|
@@ -1936,6 +1959,7 @@ test_files:
|
|
1936
1959
|
- spec/lib/pact_broker/db/clean_incremental_spec.rb
|
1937
1960
|
- spec/lib/pact_broker/db/clean_old_spec.rb
|
1938
1961
|
- spec/lib/pact_broker/db/clean_spec.rb
|
1962
|
+
- spec/lib/pact_broker/db/data_migrations/create_branches_spec.rb
|
1939
1963
|
- spec/lib/pact_broker/db/data_migrations/migrate_webhook_headers_spec.rb
|
1940
1964
|
- spec/lib/pact_broker/db/data_migrations/set_consumer_ids_for_pact_publications_spec.rb
|
1941
1965
|
- spec/lib/pact_broker/db/data_migrations/set_interactions_counts_spec.rb
|
@@ -2040,6 +2064,9 @@ test_files:
|
|
2040
2064
|
- spec/lib/pact_broker/verifications/service_spec.rb
|
2041
2065
|
- spec/lib/pact_broker/verifications/summary_for_consumer_version_spec.rb
|
2042
2066
|
- spec/lib/pact_broker/versions/abbreviate_number_spec.rb
|
2067
|
+
- spec/lib/pact_broker/versions/branch_service_spec.rb
|
2068
|
+
- spec/lib/pact_broker/versions/branch_version_repository_spec.rb
|
2069
|
+
- spec/lib/pact_broker/versions/branch_version_spec.rb
|
2043
2070
|
- spec/lib/pact_broker/versions/parse_semantic_version_spec.rb
|
2044
2071
|
- spec/lib/pact_broker/versions/repository_spec.rb
|
2045
2072
|
- spec/lib/pact_broker/versions/service_spec.rb
|
@@ -1,13 +0,0 @@
|
|
1
|
-
module PactBroker
|
2
|
-
module Versions
|
3
|
-
module LazyLoaders
|
4
|
-
LATEST_VERSION_FOR_BRANCH = lambda {
|
5
|
-
self.class
|
6
|
-
.where(branch: branch, pacticipant_id: pacticipant_id)
|
7
|
-
.exclude(branch: nil)
|
8
|
-
.order(Sequel.desc(:order))
|
9
|
-
.limit(1)
|
10
|
-
}
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|