pact_broker 2.36.1 → 2.37.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 +15 -0
- data/lib/pact_broker/ui/view_models/index_item.rb +4 -0
- data/lib/pact_broker/ui/views/index/show-with-tags.haml +1 -1
- data/lib/pact_broker/ui/views/index/show.haml +1 -1
- data/lib/pact_broker/version.rb +1 -1
- data/lib/pact_broker/versions/service.rb +1 -0
- data/lib/pact_broker/webhooks/repository.rb +18 -11
- data/spec/lib/pact_broker/versions/service_spec.rb +3 -0
- data/spec/lib/pact_broker/webhooks/repository_spec.rb +35 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f2f3154a77ea59e200285d2ce7771d02f8333c47
|
|
4
|
+
data.tar.gz: 5e9096d23e486f5cd2b370b61b7be1733cfa7876
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f1fefb75e3e0e1a7ffe4008c6a35b580569069d4ac3d48b3848d02f730e7723a22a4b425f2306dabc3697d3cdd4d1ae78f728d84b70615d1805736e3dfb48d2c
|
|
7
|
+
data.tar.gz: 4faa99affeef607ac56cb4feaffd9142fc1351ee101d5eb798f48f8b9d6675814c058d5d00e4af2169ab28b43e511fbda02e717461ae2af6f6e6ef3dc12b48d8
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
<a name="v2.37.0"></a>
|
|
2
|
+
### v2.37.0 (2019-09-02)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
#### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* delete triggered webhook data when deleting pacticipant version ([77265c30](/../../commit/77265c30))
|
|
8
|
+
|
|
9
|
+
* **index with tags**
|
|
10
|
+
* sort pact publication by date, not string (#301) ([e92bde5f](/../../commit/e92bde5f))
|
|
11
|
+
|
|
12
|
+
* **index**
|
|
13
|
+
* sort pact publication by date, not string ([75d35802](/../../commit/75d35802))
|
|
14
|
+
|
|
15
|
+
|
|
1
16
|
<a name="v2.36.1"></a>
|
|
2
17
|
### v2.36.1 (2019-08-30)
|
|
3
18
|
|
|
@@ -131,6 +131,10 @@ module PactBroker
|
|
|
131
131
|
PactBroker::DateHelper.distance_of_time_in_words(date, DateTime.now) + " ago"
|
|
132
132
|
end
|
|
133
133
|
|
|
134
|
+
def publication_date_of_latest_pact_order
|
|
135
|
+
@relationship.latest_pact.created_at.to_time.to_i
|
|
136
|
+
end
|
|
137
|
+
|
|
134
138
|
def verification_status
|
|
135
139
|
case @relationship.verification_status
|
|
136
140
|
when :success then "success"
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
- index_item.provider_version_latest_tag_names.each do | tag_name |
|
|
68
68
|
.tag.label.label-primary
|
|
69
69
|
= escape_html(tag_name)
|
|
70
|
-
%td
|
|
70
|
+
%td{"data-text": index_item.publication_date_of_latest_pact_order}
|
|
71
71
|
= index_item.publication_date_of_latest_pact.gsub("about ", "")
|
|
72
72
|
%td{ class: index_item.webhook_status }
|
|
73
73
|
- if index_item.show_webhook_status?
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
%a{ href: index_item.provider_group_url }
|
|
43
43
|
= escape_html(index_item.provider_name)
|
|
44
44
|
%td
|
|
45
|
-
%td
|
|
45
|
+
%td{"data-text": index_item.publication_date_of_latest_pact_order}
|
|
46
46
|
= index_item.publication_date_of_latest_pact
|
|
47
47
|
%td{class: index_item.webhook_status}
|
|
48
48
|
%a{ href: index_item.webhook_url }
|
data/lib/pact_broker/version.rb
CHANGED
|
@@ -21,6 +21,7 @@ module PactBroker
|
|
|
21
21
|
|
|
22
22
|
def self.delete version
|
|
23
23
|
tag_repository.delete_by_version_id version.id
|
|
24
|
+
webhook_repository.delete_triggered_webhooks_by_version_id version.id
|
|
24
25
|
pact_repository.delete_by_version_id version.id
|
|
25
26
|
verification_repository.delete_by_provider_version_id version.id
|
|
26
27
|
version_repository.delete_by_id version.id
|
|
@@ -99,13 +99,6 @@ module PactBroker
|
|
|
99
99
|
.collect(&:to_domain)
|
|
100
100
|
end
|
|
101
101
|
|
|
102
|
-
# TODO delete
|
|
103
|
-
def find_by_consumer_and_provider_existing_at consumer, provider, date_time
|
|
104
|
-
Webhook.where(consumer_id: consumer.id, provider_id: provider.id)
|
|
105
|
-
.where(Sequel.lit("created_at < ?", date_time))
|
|
106
|
-
.collect(&:to_domain)
|
|
107
|
-
end
|
|
108
|
-
|
|
109
102
|
def create_triggered_webhook trigger_uuid, webhook, pact, verification, trigger_type
|
|
110
103
|
db_webhook = Webhook.where(uuid: webhook.uuid).single_record
|
|
111
104
|
TriggeredWebhook.create(
|
|
@@ -157,15 +150,22 @@ module PactBroker
|
|
|
157
150
|
|
|
158
151
|
def delete_triggered_webhooks_by_webhook_uuid uuid
|
|
159
152
|
triggered_webhook_ids = TriggeredWebhook.where(webhook: Webhook.where(uuid: uuid)).select_for_subquery(:id)
|
|
160
|
-
|
|
153
|
+
delete_triggered_webhooks_and_executions(triggered_webhook_ids)
|
|
161
154
|
DeprecatedExecution.where(webhook_id: Webhook.where(uuid: uuid).select_for_subquery(:id)).delete
|
|
162
|
-
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
def delete_triggered_webhooks_by_version_id version_id
|
|
158
|
+
delete_triggered_webhooks_by_pact_publication_ids(PactBroker::Pacts::PactPublication.where(consumer_version_id: version_id).select_for_subquery(:id))
|
|
159
|
+
delete_triggered_webhooks_by_verification_ids(PactBroker::Domain::Verification.where(provider_version_id: version_id).select_for_subquery(:id))
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
def delete_triggered_webhooks_by_verification_ids verification_ids
|
|
163
|
+
delete_triggered_webhooks_and_executions(TriggeredWebhook.where(verification_id: verification_ids).select_for_subquery(:id))
|
|
163
164
|
end
|
|
164
165
|
|
|
165
166
|
def delete_triggered_webhooks_by_pact_publication_ids pact_publication_ids
|
|
166
167
|
triggered_webhook_ids = TriggeredWebhook.where(pact_publication_id: pact_publication_ids).select_for_subquery(:id)
|
|
167
|
-
|
|
168
|
-
TriggeredWebhook.where(id: triggered_webhook_ids).delete
|
|
168
|
+
delete_triggered_webhooks_and_executions(triggered_webhook_ids)
|
|
169
169
|
DeprecatedExecution.where(pact_publication_id: pact_publication_ids).delete
|
|
170
170
|
end
|
|
171
171
|
|
|
@@ -203,6 +203,13 @@ module PactBroker
|
|
|
203
203
|
def fail_retrying_triggered_webhooks
|
|
204
204
|
TriggeredWebhook.retrying.update(status: TriggeredWebhook::STATUS_FAILURE)
|
|
205
205
|
end
|
|
206
|
+
|
|
207
|
+
private
|
|
208
|
+
|
|
209
|
+
def delete_triggered_webhooks_and_executions triggered_webhook_ids
|
|
210
|
+
Execution.where(triggered_webhook_id: triggered_webhook_ids).delete
|
|
211
|
+
TriggeredWebhook.where(id: triggered_webhook_ids).delete
|
|
212
|
+
end
|
|
206
213
|
end
|
|
207
214
|
end
|
|
208
215
|
end
|
|
@@ -730,6 +730,41 @@ module PactBroker
|
|
|
730
730
|
}.by(-1)
|
|
731
731
|
end
|
|
732
732
|
end
|
|
733
|
+
|
|
734
|
+
describe "delete_triggered_webhooks_by_version_id" do
|
|
735
|
+
subject { Repository.new.delete_triggered_webhooks_by_version_id(version.id) }
|
|
736
|
+
|
|
737
|
+
context "when deleting a triggered webhook by consumer version" do
|
|
738
|
+
let!(:version) do
|
|
739
|
+
td
|
|
740
|
+
.create_pact_with_hierarchy
|
|
741
|
+
.create_webhook
|
|
742
|
+
.create_triggered_webhook
|
|
743
|
+
.create_webhook_execution
|
|
744
|
+
.and_return(:consumer_version)
|
|
745
|
+
end
|
|
746
|
+
|
|
747
|
+
it "deletes the webhooks belonging to the consumer version" do
|
|
748
|
+
expect { subject }.to change{ TriggeredWebhook.count }.by (-1)
|
|
749
|
+
end
|
|
750
|
+
end
|
|
751
|
+
|
|
752
|
+
context "when deleting a triggered webhook by provider version" do
|
|
753
|
+
let!(:version) do
|
|
754
|
+
td
|
|
755
|
+
.create_pact_with_hierarchy
|
|
756
|
+
.create_verification(provider_version: "1")
|
|
757
|
+
.create_provider_webhook(event_names: ['provider_verification_published'])
|
|
758
|
+
.create_triggered_webhook
|
|
759
|
+
.create_webhook_execution
|
|
760
|
+
.and_return(:provider_version)
|
|
761
|
+
end
|
|
762
|
+
|
|
763
|
+
it "deletes the webhooks belonging to the consumer version" do
|
|
764
|
+
expect { subject }.to change{ TriggeredWebhook.count }.by (-1)
|
|
765
|
+
end
|
|
766
|
+
end
|
|
767
|
+
end
|
|
733
768
|
end
|
|
734
769
|
end
|
|
735
770
|
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.37.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: 2019-
|
|
13
|
+
date: 2019-09-02 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: httparty
|