Sha256: 8ace07426ef3aa7e9cd59f34ab99ee27c529dc7d57f9adf683dc153e5b98b82f
Contents?: true
Size: 927 Bytes
Versions: 3
Compression:
Stored size: 927 Bytes
Contents
module S3Secure::Lifecycle class Show < Base RULE_ID = Base::RULE_ID def run if any? say "This S3 bucket has lifecycle rules" else say "This S3 bucket does not have lifecycle rules" end if any? say "Bucket lifecycle details: " pp get_lifecycle(@bucket).to_h end end def any? rules = get_lifecycle_rules(@bucket) !!(rules && !rules.empty?) end def has?(rule_id) rules = get_lifecycle_rules(@bucket) rules && rules.detect { |rule| rule[:id] == rule_id } end def get_lifecycle(bucket) s3.get_bucket_lifecycle_configuration(bucket: bucket) # resp rescue Aws::S3::Errors::NoSuchLifecycleConfiguration end memoize :get_lifecycle # Also used by add and remove def get_lifecycle_rules(bucket) resp = get_lifecycle(bucket) resp.rules.map(&:to_h) if resp end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
s3-secure-0.7.0 | lib/s3_secure/lifecycle/show.rb |
s3-secure-0.6.1 | lib/s3_secure/lifecycle/show.rb |
s3-secure-0.6.0 | lib/s3_secure/lifecycle/show.rb |