Class: PactBroker::Versions::Service
Constant Summary
Repositories::REPOSITORY_FACTORIES
Constants included
from Services
Services::SERVICE_FACTORIES
Class Method Summary
collapse
-
.create_or_overwrite(pacticipant_name, version_number, version) ⇒ Object
-
.create_or_update(pacticipant_name, version_number, version) ⇒ Object
-
.delete(version) ⇒ Object
-
.find_by_pacticipant_name_and_latest_tag(pacticipant_name, tag) ⇒ Object
-
.find_by_pacticipant_name_and_number(params) ⇒ Object
-
.find_latest_by_pacticipant_name_and_branch_name(pacticipant_name, branch_name) ⇒ Object
-
.find_latest_by_pacticpant_name(params) ⇒ Object
-
.find_latest_version_from_main_branch(pacticipant) ⇒ Object
-
.find_pacticipant_versions_in_reverse_order(pacticipant_name, options, pagination_options = {}, eager_load_associations = []) ⇒ Object
-
.maybe_set_version_branch_from_tag(version, tag_name) ⇒ Object
Methods included from Messages
message, pluralize, validation_message, validation_message_at_index
branch_repository, branch_version_repository, get_repository, integration_repository, label_repository, matrix_repository, pact_repository, pacticipant_repository, register_default_repositories, register_repository, tag_repository, verification_repository, version_repository, webhook_repository
Methods included from Services
badge_service, branch_service, certificate_service, contract_service, deployed_version_service, environment_service, get_service, group_service, index_service, integration_service, label_service, matrix_service, metrics_service, pact_service, pacticipant_service, register_default_services, register_service, released_version_service, tag_service, verification_service, version_service, webhook_service, webhook_trigger_service
Methods included from Logging
included, #log_error, #log_with_tag, #measure_info
Class Method Details
.create_or_overwrite(pacticipant_name, version_number, version) ⇒ Object
33
34
35
36
37
|
# File 'lib/pact_broker/versions/service.rb', line 33
def self.create_or_overwrite(pacticipant_name, version_number, version)
pacticipant = pacticipant_repository.find_by_name_or_create(pacticipant_name)
version = version_repository.create_or_overwrite(pacticipant, version_number, version)
version
end
|
.create_or_update(pacticipant_name, version_number, version) ⇒ Object
39
40
41
42
43
|
# File 'lib/pact_broker/versions/service.rb', line 39
def self.create_or_update(pacticipant_name, version_number, version)
pacticipant = pacticipant_repository.find_by_name_or_create(pacticipant_name)
version = version_repository.create_or_update(pacticipant, version_number, version)
version
end
|
.delete(version) ⇒ Object
49
50
51
52
53
54
55
|
# File 'lib/pact_broker/versions/service.rb', line 49
def self.delete version
tag_repository.delete_by_version_id version.id
webhook_repository.delete_triggered_webhooks_by_version_id version.id
pact_repository.delete_by_version_id version.id
verification_repository.delete_by_provider_version_id version.id
version_repository.delete_by_id version.id
end
|
.find_by_pacticipant_name_and_latest_tag(pacticipant_name, tag) ⇒ Object
21
22
23
|
# File 'lib/pact_broker/versions/service.rb', line 21
def self.find_by_pacticipant_name_and_latest_tag(pacticipant_name, tag)
version_repository.find_by_pacticipant_name_and_latest_tag(pacticipant_name, tag)
end
|
.find_by_pacticipant_name_and_number(params) ⇒ Object
17
18
19
|
# File 'lib/pact_broker/versions/service.rb', line 17
def self.find_by_pacticipant_name_and_number params
version_repository.find_by_pacticipant_name_and_number params.fetch(:pacticipant_name), params.fetch(:pacticipant_version_number)
end
|
.find_latest_by_pacticipant_name_and_branch_name(pacticipant_name, branch_name) ⇒ Object
25
26
27
|
# File 'lib/pact_broker/versions/service.rb', line 25
def self.find_latest_by_pacticipant_name_and_branch_name(pacticipant_name, branch_name)
version_repository.find_latest_by_pacticipant_name_and_branch_name(pacticipant_name, branch_name)
end
|
.find_latest_by_pacticpant_name(params) ⇒ Object
13
14
15
|
# File 'lib/pact_broker/versions/service.rb', line 13
def self.find_latest_by_pacticpant_name params
version_repository.find_latest_by_pacticpant_name params.fetch(:pacticipant_name)
end
|
.find_latest_version_from_main_branch(pacticipant) ⇒ Object
45
46
47
|
# File 'lib/pact_broker/versions/service.rb', line 45
def self.find_latest_version_from_main_branch(pacticipant)
version_repository.find_latest_version_from_main_branch(pacticipant)
end
|
.find_pacticipant_versions_in_reverse_order(pacticipant_name, options, pagination_options = {}, eager_load_associations = []) ⇒ Object
29
30
31
|
# File 'lib/pact_broker/versions/service.rb', line 29
def self.find_pacticipant_versions_in_reverse_order(pacticipant_name, options, = {}, eager_load_associations = [])
version_repository.find_pacticipant_versions_in_reverse_order(pacticipant_name, options, , eager_load_associations)
end
|
.maybe_set_version_branch_from_tag(version, tag_name) ⇒ Object
57
58
59
60
61
62
|
# File 'lib/pact_broker/versions/service.rb', line 57
def self.maybe_set_version_branch_from_tag(version, tag_name)
if use_tag_as_branch?(version) && version.branch_versions.empty?
logger.info "Adding #{version.pacticipant.name} version #{version.number} to branch '#{tag_name}' (from first tag, because use_first_tag_as_branch=true)"
branch_version_repository.add_branch(version, tag_name, auto_created: true)
end
end
|