class Stax::Cmd::Cloudfront

Constants

COLORS

Public Instance Methods

domains() click to toggle source
# File lib/stax/mixin/cloudfront.rb, line 47
def domains
  puts stack_cloudfront_ids.map { |id|
    Aws::Cloudfront.distribution(id).domain_name
  }
end
invalidations() click to toggle source
# File lib/stax/mixin/cloudfront.rb, line 54
def invalidations
  stack_cloudfront_ids.each do |id|
    debug("Invalidations for distribution #{id}")
    Aws::Cloudfront.invalidations(id).each { |list|
      print_table list.map { |inv|
        i = Aws::Cloudfront.invalidation(id, inv.id)
        [ i.id, color(i.status, COLORS), i.create_time ]
      }
    }
  end
end
ls() click to toggle source
# File lib/stax/mixin/cloudfront.rb, line 32
def ls
  debug("Cloudfront distributions for #{my.stack_name}")
  print_table stack_cloudfront_ids.map { |id|
    d = Aws::Cloudfront.distribution(id)
    [
      d.id,
      d.domain_name,
      d.status,
      color(d.distribution_config.enabled ? :Enabled : :Disabled, COLORS),
      d.last_modified_time,
    ]
  }
end
stack_cloudfront_distributions() click to toggle source
# File lib/stax/mixin/cloudfront.rb, line 22
def stack_cloudfront_distributions
  @_stack_cloudfront_distributions ||= Aws::Cfn.resources_by_type(my.stack_name, 'AWS::CloudFront::Distribution')
end
stack_cloudfront_ids() click to toggle source
# File lib/stax/mixin/cloudfront.rb, line 26
def stack_cloudfront_ids
  stack_cloudfront_distributions.map(&:physical_resource_id)
end