Class: S3Secure::Lifecycle::List

Inherits:
Base show all
Defined in:
lib/s3_secure/lifecycle/list.rb

Constant Summary

Constants inherited from Base

Base::RULE_ID

Instance Method Summary collapse

Methods inherited from CLI::Base

#buckets, #initialize

Methods included from CLI::Say

#say

Methods included from AwsServices

#sts

Methods included from AwsServices::S3

#check_bucket!, #new_s3_regional_client, #region, #region_map, #s3, #s3_client, #s3_regional_client

Constructor Details

This class inherits a constructor from S3Secure::CLI::Base

Instance Method Details

#runObject



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/s3_secure/lifecycle/list.rb', line 3

def run
  presenter = CliFormat::Presenter.new(@options)
  presenter.header = ["Bucket", "Has Lifecycle Rules?"]

  buckets.each do |bucket|
    $stderr.puts "Getting lifecycle policy for bucket #{bucket.color(:green)}"

    show = Show.new(bucket: bucket)
    row = [bucket, show.any?]
    if @options[:lifecycle].nil?
      presenter.rows << row # always show policy
    elsif @options[:lifecycle]
      presenter.rows << row if status # only show if bucket has some encryption rules
    else
      presenter.rows << row unless status # only show if bucket doesnt have any encryption rules
    end
  end

  presenter.show
end