Class: Stax::Cmd::Cloudfront

Inherits:
SubCommand show all
Defined in:
lib/stax/mixin/cloudfront.rb

Constant Summary collapse

COLORS =
{
  Enabled:   :green,
  Disabled:  :red,
  Completed: :green,
}

Instance Method Summary collapse

Methods inherited from SubCommand

#info, stax_info, stax_info_tasks

Instance Method Details

#domainsObject



47
48
49
50
51
# File 'lib/stax/mixin/cloudfront.rb', line 47

def domains
  puts stack_cloudfront_ids.map { |id|
    Aws::Cloudfront.distribution(id).domain_name
  }
end

#invalidationsObject



54
55
56
57
58
59
60
61
62
63
64
# 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

#lsObject



32
33
34
35
36
37
38
39
40
41
42
43
44
# 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

#monitoringObject



69
# File 'lib/stax/mixin/cloudfront.rb', line 69

desc 'monitoring', 'control monitoring subscriptions'