Class: Stax::Aws::Codepipeline

Inherits:
Sdk
  • Object
show all
Defined in:
lib/stax/aws/codepipeline.rb

Constant Summary

Constants inherited from Sdk

Sdk::RETRY_LIMIT

Class Method Summary collapse

Methods inherited from Sdk

paginate

Class Method Details

.clientObject



9
10
11
# File 'lib/stax/aws/codepipeline.rb', line 9

def client
  @_client ||= ::Aws::CodePipeline::Client.new
end

.execution(name, id) ⇒ Object



30
31
32
# File 'lib/stax/aws/codepipeline.rb', line 30

def execution(name, id)
  client.get_pipeline_execution(pipeline_name: name, pipeline_execution_id: id).pipeline_execution
end

.executions(name, num = nil) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/stax/aws/codepipeline.rb', line 17

def executions(name, num = nil)
  opt = {pipeline_name: name, max_results: num}
  token = nil
  summaries = []
  loop do
    s = client.list_pipeline_executions(opt.merge(next_token: token))
    summaries += s.pipeline_execution_summaries
    break if (token = s.next_token).nil?
    break if summaries.count >= num
  end
  summaries.first(num)
end

.stages(name) ⇒ Object



13
14
15
# File 'lib/stax/aws/codepipeline.rb', line 13

def stages(name)
  client.get_pipeline(name: name).pipeline.stages
end

.start(name) ⇒ Object



38
39
40
# File 'lib/stax/aws/codepipeline.rb', line 38

def start(name)
  client.start_pipeline_execution(name: name).pipeline_execution_id
end

.state(name) ⇒ Object



34
35
36
# File 'lib/stax/aws/codepipeline.rb', line 34

def state(name)
  client.get_pipeline_state(name: name)
end