rlister / coreos_ami

Ruby gem to discover CoreOS AMIs for AWS.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

coreos_ami

Ruby gem to discover CoreOS AMIs for AWS.

Installation

Add this line to your application's Gemfile:

gem 'coreos_ami'

And then execute:

$ bundle

Or install it yourself as:

$ gem install coreos_ami

Library usage

Get AMI for a given channel and release

require 'coreos_ami'
CoreOS.channel('stable').ami
=> "ami-8297d4ea"

Default region will be set to environment variable AWS_DEFAULT_REGION or AWS_REGION (or us-east-1 if empty). Virtualization type will default to hvm, and release will default to current.

Different channels, releases, and virtualization type may be requested:

CoreOS.channel('beta').ami(release: '522.5.0', virtualization: 'pv')
=> "ami-3ed7a456"

Get list of AMIs

Return a hash of all AMIs for requested channel and release:

CoreOS.channel('stable').amis
=> {"amis"=>[{"name"=>"eu-central-1", "pv"=>"ami-88c1f295", "hvm"=>"ami-8ec1f293"}, {"name"=>"ap-northeast-1", "pv"=>"ami-ea5c46eb", "hvm"=>"ami-e85c46e9"}, {"name"=>"sa-east-1", "pv"=>"ami-2fe95632", "hvm"=>"ami-2de95630"}, {"name"=>"ap-southeast-2", "pv"=>"ami-4fd3a775", "hvm"=>"ami-4dd3a777"}, {"name"=>"ap-southeast-1", "pv"=>"ami-70dcf622", "hvm"=>"ami-72dcf620"}, {"name"=>"us-east-1", "pv"=>"ami-8097d4e8", "hvm"=>"ami-8297d4ea"}, {"name"=>"us-west-2", "pv"=>"ami-f3702bc3", "hvm"=>"ami-f1702bc1"}, {"name"=>"us-west-1", "pv"=>"ami-26b5ad63", "hvm"=>"ami-24b5ad61"}, {"name"=>"eu-west-1", "pv"=>"ami-5b911f2c", "hvm"=>"ami-5d911f2a"}]}

Command-line client

A simple command-line tool is included to perform the same requests, with similar defaults:

$ coreos_ami -c beta -r 522.5.0 -v pv
ami-3ed7a456

Use -a or --all to list all AMIs:

$ coreos_ami -a -c stable
NAME            PV              HVM
eu-central-1    ami-88c1f295    ami-8ec1f293
ap-northeast-1  ami-ea5c46eb    ami-e85c46e9
sa-east-1       ami-2fe95632    ami-2de95630
ap-southeast-2  ami-4fd3a775    ami-4dd3a777
ap-southeast-1  ami-70dcf622    ami-72dcf620
us-east-1       ami-8097d4e8    ami-8297d4ea
us-west-2       ami-f3702bc3    ami-f1702bc1
us-west-1       ami-26b5ad63    ami-24b5ad61
eu-west-1       ami-5b911f2c    ami-5d911f2a

About

Ruby gem to discover CoreOS AMIs for AWS.

License:MIT License


Languages

Language:Ruby 100.0%