Class: CodeBuild

Inherits:
Mapper show all
Defined in:
lib/aws_recon/collectors/codebuild.rb

Overview

Collect CodeBuild resources

Constant Summary

Constants inherited from Mapper

Mapper::SINGLE_REGION_SERVICES

Instance Method Summary collapse

Methods inherited from Mapper

#initialize

Constructor Details

This class inherits a constructor from Mapper

Instance Method Details

#collectObject

Returns an array of resources.

TODO: group projects in chucks to minimize batch_get calls



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/aws_recon/collectors/codebuild.rb', line 12

def collect
  resources = []

  #
  # list_projects
  #
  @client.list_projects.each_with_index do |response, page|
    log(response.context.operation_name, page)

    # batch_get_projects
    response.projects.each do |project_name|
      @client.batch_get_projects({ names: [project_name] }).projects.each do |project|
        struct = OpenStruct.new(project.to_h)
        struct.type = 'project'

        resources.push(struct.to_h)
      end
    end
  end

  resources
end