Sha256: 0df5351608bf9e1f7037fea1680181cf0bf82738da429bf9ec668cf3a4f39ca2
Contents?: true
Size: 1.67 KB
Versions: 28
Compression:
Stored size: 1.67 KB
Contents
require "pact_broker/api/resources/base_resource" require "pact_broker/api/decorators/versions_decorator" require "pact_broker/string_refinements" module PactBroker module Api module Resources class CurrentlySupportedVersionsForEnvironment < BaseResource using PactBroker::StringRefinements def content_types_accepted [["application/json", :from_json]] end def content_types_provided [["application/hal+json", :to_json]] end def allowed_methods ["GET", "OPTIONS"] end def resource_exists? !!environment end def to_json decorator_class(decorator_name).new(released_versions).to_json(decorator_options(title: title)) end def policy_name :'deployments::environment' end def policy_record environment end def decorator_name :released_versions_decorator end private def environment @environment ||= environment_service.find(environment_uuid) end def released_versions @released_versions ||= released_version_service.find_currently_supported_versions_for_environment(environment, query_params) end def environment_uuid identifier_from_path[:environment_uuid] end def query_params { pacticipant_name: request.query["pacticipant"], pacticipant_version_number: request.query["version"] }.compact end def title "Currently supported versions in #{environment.display_name}" end end end end end
Version data entries
28 entries across 28 versions & 1 rubygems