Class: PactBroker::Client::CLI::Broker

Inherits:
CustomThor
  • Object
show all
Includes:
DeploymentCommands, EnvironmentCommands, MatrixCommands, PacticipantCommands, WebhookCommands
Defined in:
lib/pact_broker/client/cli/broker.rb

Constant Summary

Constants included from PacticipantCommands

PacticipantCommands::PACTICIPANT_PARAM_NAMES

Constants included from DeploymentCommands

DeploymentCommands::RECORD_DEPLOYMENT_HELP_URL, DeploymentCommands::RECORD_RELEASE_HELP_URL, DeploymentCommands::RECORD_SUPPORT_ENDED_HELP_URL, DeploymentCommands::RECORD_UNDEPLOYMENT_HELP_URL

Constants included from EnvironmentCommands

EnvironmentCommands::ENVIRONMENT_PARAM_NAMES

Instance Method Summary collapse

Methods included from WebhookCommands

included

Methods included from PacticipantCommands

included

Methods included from MatrixCommands

included

Methods included from DeploymentCommands

included

Methods included from EnvironmentCommands

included

Instance Method Details

#create_version_tagObject



57
58
59
60
61
62
63
64
65
66
67
68
69
70
# File 'lib/pact_broker/client/cli/broker.rb', line 57

def create_version_tag
  require 'pact_broker/client/create_tag'

  validate_credentials
  PactBroker::Client::CreateTag.call(
    options.broker_base_url,
    options.pacticipant,
    options.version,
    tags,
    options.auto_create_version,
    pact_broker_client_options)
rescue PactBroker::Client::Error => e
  raise VersionCreationError.new(e.message)
end

#describe_versionObject



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/pact_broker/client/cli/broker.rb', line 79

def describe_version
  require 'pact_broker/client/versions/describe'

  validate_credentials
  latest = !options.latest.nil? || (options.latest.nil? && options.version.nil?)
  params = {
    pacticipant: options.pacticipant,
    version: options.version,
    latest: latest,
    tag: options.latest != "latest" ? options.latest : nil
  }
  opts = {
    output: options.output
  }
  result = PactBroker::Client::Versions::Describe.call(params, opts, options.broker_base_url, pact_broker_client_options)
  $stdout.puts result.message
  exit(1) unless result.success
end

#generate_uuidObject



102
103
104
105
106
# File 'lib/pact_broker/client/cli/broker.rb', line 102

def generate_uuid
  require 'securerandom'

  puts SecureRandom.uuid
end

#list_latest_pact_versions(*required_but_ignored) ⇒ Object



111
112
113
114
115
116
# File 'lib/pact_broker/client/cli/broker.rb', line 111

def list_latest_pact_versions(*required_but_ignored)
  require 'pact_broker/client/pacts/list_latest_versions'
  result = PactBroker::Client::Pacts::ListLatestVersions.call(options.broker_base_url, options.output, pact_broker_client_options)
  $stdout.puts result.message
  exit(1) unless result.success
end

#publish(*pact_files) ⇒ Object



38
39
40
41
42
43
44
45
46
47
# File 'lib/pact_broker/client/cli/broker.rb', line 38

def publish(*pact_files)
  require 'pact_broker/client/error'
  validate_credentials
  validate_pact_files(pact_files)
  result = publish_pacts(pact_files)
  $stdout.puts result.message
  exit(1) unless result.success
rescue PactBroker::Client::Error => e
  raise PactPublicationError, "#{e.class} - #{e.message}"
end

#versionObject



120
121
122
123
124
# File 'lib/pact_broker/client/cli/broker.rb', line 120

def version
  require 'pact_broker/client/version'

  $stdout.puts PactBroker::Client::VERSION
end