Class: AwsCli::CLI::EC2::Instances
- Inherits:
-
Thor
- Object
- Thor
- AwsCli::CLI::EC2::Instances
- Defined in:
- lib/awscli/cli/ec2/instances.rb
Instance Method Summary collapse
- #console_output ⇒ Object
- #create ⇒ Object
- #create_centos ⇒ Object
- #create_ubuntu ⇒ Object
- #describe_instance ⇒ Object
- #diatt ⇒ Object
- #dins ⇒ Object
- #list ⇒ Object
- #list_all ⇒ Object
- #list_regions ⇒ Object
- #list_sizes ⇒ Object
- #miatt ⇒ Object
- #reboot ⇒ Object
- #riatt ⇒ Object
- #start ⇒ Object
- #stop ⇒ Object
- #terminate ⇒ Object
- #terminate_all ⇒ Object
Instance Method Details
#console_output ⇒ Object
295 296 297 298 |
# File 'lib/awscli/cli/ec2/instances.rb', line 295 def console_output create_ec2_object @ec2.get_console_output [:instance_id] end |
#create ⇒ Object
192 193 194 195 |
# File 'lib/awscli/cli/ec2/instances.rb', line 192 def create create_ec2_object @ec2.create_instance end |
#create_centos ⇒ Object
204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 |
# File 'lib/awscli/cli/ec2/instances.rb', line 204 def create_centos create_ec2_object centos_amis = { 'us-east-1' => 'ami-a96b01c0', #Virginia 'us-west-1' => 'ami-51351b14', #Northern California 'us-west-2' => 'ami-bd58c98d', #Oregon 'eu-west-1' => 'ami-050b1b71', #Ireland 'ap-southeast-1' => 'ami-23682671', #Singapore 'ap-southeast-2' => 'ami-ffcd5ec5', #Sydney 'ap-northeast-1' => 'ami-3fe8603e', #Tokyo 'sa-east-1' => 'ami-e2cd68ff', #Sao Paulo } @ec2.create_instance :image_id => centos_amis[[:region]], :block_device_mapping => %w(/dev/sda=:100:true::), :groups => [:groups], :flavor_id => [:flavor_id], :key_name => [:key_name], :tags => [:tags], :count => [:count], :wait_for => [:wait_for] end |
#create_ubuntu ⇒ Object
233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 |
# File 'lib/awscli/cli/ec2/instances.rb', line 233 def create_ubuntu create_ec2_object ubuntu_amis = { 'us-east-1' => 'ami-9b85eef2', #Virginia 'us-west-1' => 'ami-9b2d03de', #Northern California 'us-west-2' => 'ami-77be2f47', #Oregon 'eu-west-1' => 'ami-f5736381', #Ireland 'ap-southeast-1' => 'ami-085b155a', #Singapore 'ap-southeast-2' => 'ami-37c0530d', #Sydney 'ap-northeast-1' => 'ami-57109956', #Tokyo 'sa-east-1' => 'ami-a4fb5eb9', #Sao Paulo } @ec2.create_instance :image_id => ubuntu_amis[[:region]], :block_device_mapping => %w(/dev/sda1=:100:true::), :groups => [:groups], :flavor_id => [:flavor_id], :key_name => [:key_name], :tags => [:tags], :count => [:count], :wait_for => [:wait_for] end |
#describe_instance ⇒ Object
35 36 37 38 |
# File 'lib/awscli/cli/ec2/instances.rb', line 35 def describe_instance create_ec2_object @ec2.describe_instance() end |
#diatt ⇒ Object
62 63 64 65 |
# File 'lib/awscli/cli/ec2/instances.rb', line 62 def diatt create_ec2_object @ec2.describe_instance_attribute([:id], [:attr]) end |
#dins ⇒ Object
115 116 117 118 |
# File 'lib/awscli/cli/ec2/instances.rb', line 115 def dins create_ec2_object @ec2.describe_instance_status [:instance_id] end |
#list ⇒ Object
26 27 28 29 30 31 |
# File 'lib/awscli/cli/ec2/instances.rb', line 26 def list puts "Listing Instances for region: #{[:region]}" create_ec2_object # puts parent_options #access awscli/cli/ec2.rb class options @ec2.list_instances end |
#list_all ⇒ Object
41 42 43 44 45 46 47 |
# File 'lib/awscli/cli/ec2/instances.rb', line 41 def list_all Awscli::Instances::REGIONS.each do |region| puts "Listing instances for region: #{region}" ec2 = Awscli::EC2::EC2.new(Awscli::Connection.new.request_ec2 region) ec2.list_instances end end |
#list_regions ⇒ Object
16 17 18 |
# File 'lib/awscli/cli/ec2/instances.rb', line 16 def list_regions puts Awscli::Instances::REGIONS end |
#list_sizes ⇒ Object
11 12 13 |
# File 'lib/awscli/cli/ec2/instances.rb', line 11 def list_sizes puts Awscli::Instances::INSTANCE_SIZES end |
#miatt ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/awscli/cli/ec2/instances.rb', line 81 def miatt create_ec2_object opts = Marshal.load(Marshal.dump()) #create a copy of options, as original options hash cannot be modified opts.reject!{ |k| k == 'id' } #remove id from opts abort "Please pass an attribute by setting respective option" unless opts abort "You can only pass one attribute at a time" if opts.size != 1 opts.each do |k,v| puts "calling modify_instance_attribute with: #{[:id]}, #{k}, #{opts[k]}" @ec2.modify_instance_attribute([:id], k, opts[k]) end end |
#reboot ⇒ Object
136 137 138 139 |
# File 'lib/awscli/cli/ec2/instances.rb', line 136 def reboot create_ec2_object @ec2.reboot_instance [:instance_id] end |
#riatt ⇒ Object
98 99 100 |
# File 'lib/awscli/cli/ec2/instances.rb', line 98 def riatt puts "Not yet Implemented" end |
#start ⇒ Object
261 262 263 264 |
# File 'lib/awscli/cli/ec2/instances.rb', line 261 def start create_ec2_object @ec2.start_instance [:instance_id] end |
#stop ⇒ Object
271 272 273 274 |
# File 'lib/awscli/cli/ec2/instances.rb', line 271 def stop create_ec2_object @ec2.stop_instance [:instance_id] end |
#terminate ⇒ Object
281 282 283 284 |
# File 'lib/awscli/cli/ec2/instances.rb', line 281 def terminate create_ec2_object @ec2.terminate_instance [:instance_id] end |
#terminate_all ⇒ Object
288 289 290 291 |
# File 'lib/awscli/cli/ec2/instances.rb', line 288 def terminate_all create_ec2_object @ec2.terminate_instances [:delete_volumes] end |