Sha256: f91205dd7f3c6b93a1ed99581d4d2fedb736aebc428dcf17a00d45f3c39cef99

Contents?: true

Size: 1.55 KB

Versions: 27

Compression:

Stored size: 1.55 KB

Contents

require "pact_broker/ui/controllers/base_controller"
require "pact_broker/ui/view_models/matrix_lines"
require "pact_broker/matrix/unresolved_selector"
require "pact_broker/matrix/parse_query"
require "pact_broker/logging"
require "pact_broker/api/pact_broker_urls"
require "pact_broker/ui/helpers/matrix_helper"
require "haml"

module PactBroker
  module UI
    module Controllers
      class CanIDeploy < Base

        include PactBroker::Services
        include PactBroker::UI::Helpers::MatrixHelper

        get "/:pacticipant_name/latest-version/:tag/can-i-deploy/to/:environment_tag" do
          # selector and options must be in sync with lib/pact_broker/api/resources/can_i_deploy_pacticipant_version_by_tag_to_tag_badge.rb
          selectors = [ PactBroker::Matrix::UnresolvedSelector.new(pacticipant_name: params[:pacticipant_name], latest: true, tag: params[:tag]) ]
          options = { latestby: "cvp", limit: 100, tag: params[:to] }
          result = matrix_service.find(selectors, options)
          lines = PactBroker::UI::ViewDomain::MatrixLines.new(result, base_url: base_url)
          locals = {
            lines: lines,
            selectors: create_selector_objects(selectors),
            options: create_options_model(options),
            badge_url: badge_url,
            base_url: base_url
          }
          haml :'matrix/show', { locals: locals, layout: :'layouts/main', escape_html: true }
        end

        def badge_url
          u = URI(request.url)
          u.path = u.path + "/badge"
          u.to_s
        end
      end
    end
  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
pact_broker-2.114.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.113.2 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.113.1 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.113.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.112.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.111.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.109.1 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.109.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.108.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.107.1 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.107.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.107.0.beta.1 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.106.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.105.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.104.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.103.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.102.2 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.102.1 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.102.0 lib/pact_broker/ui/controllers/can_i_deploy.rb
pact_broker-2.101.0 lib/pact_broker/ui/controllers/can_i_deploy.rb