Sha256: 731351f0c20478e716d426bb5318991a9c3f0aa3264b9edf24601f0385e3874f
Contents?: true
Size: 1.45 KB
Versions: 40
Compression:
Stored size: 1.45 KB
Contents
require "rack/utils" require "pact_broker/matrix/unresolved_selector" module PactBroker module Matrix class ParseCanIDeployQuery # rubocop: disable Metrics/CyclomaticComplexity def self.call params selector = PactBroker::Matrix::UnresolvedSelector.new options = { latestby: "cvp" } if params[:pacticipant].is_a?(String) selector.pacticipant_name = params[:pacticipant] end if params[:version].is_a?(String) selector.pacticipant_version_number = params[:version] end if params[:to].is_a?(String) options[:tag] = params[:to] options[:latest] = true end if params[:environment].is_a?(String) options[:environment_name] = params[:environment] end if params[:ignore].is_a?(Array) options[:ignore_selectors] = params[:ignore].collect do | param | if param.is_a?(String) PactBroker::Matrix::UnresolvedSelector.new(pacticipant_name: param) elsif param.is_a?(Hash) && param.key?(:pacticipant) PactBroker::Matrix::UnresolvedSelector.new({ pacticipant_name: param[:pacticipant], pacticipant_version_number: param[:version] }.compact) end end.compact else options[:ignore_selectors] = [] end return [selector], options end # rubocop: enable Metrics/CyclomaticComplexity end end end
Version data entries
40 entries across 40 versions & 1 rubygems