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
- #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
288 289 290 291 |
# File 'lib/awscli/cli/ec2/instances.rb', line 288 def console_output create_ec2_object @ec2.get_console_output [:instance_id] end |
#create ⇒ Object
185 186 187 188 |
# File 'lib/awscli/cli/ec2/instances.rb', line 185 def create create_ec2_object @ec2.create_instance end |
#create_centos ⇒ Object
197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 |
# File 'lib/awscli/cli/ec2/instances.rb', line 197 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
226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 |
# File 'lib/awscli/cli/ec2/instances.rb', line 226 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 |
#diatt ⇒ Object
55 56 57 58 |
# File 'lib/awscli/cli/ec2/instances.rb', line 55 def diatt create_ec2_object @ec2.describe_instance_attribute([:id], [:attr]) end |
#dins ⇒ Object
108 109 110 111 |
# File 'lib/awscli/cli/ec2/instances.rb', line 108 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
34 35 36 37 38 39 40 |
# File 'lib/awscli/cli/ec2/instances.rb', line 34 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
74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/awscli/cli/ec2/instances.rb', line 74 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
129 130 131 132 |
# File 'lib/awscli/cli/ec2/instances.rb', line 129 def reboot create_ec2_object @ec2.reboot_instance [:instance_id] end |
#riatt ⇒ Object
91 92 93 |
# File 'lib/awscli/cli/ec2/instances.rb', line 91 def riatt puts "Not yet Implemented" end |
#start ⇒ Object
254 255 256 257 |
# File 'lib/awscli/cli/ec2/instances.rb', line 254 def start create_ec2_object @ec2.start_instance [:instance_id] end |
#stop ⇒ Object
264 265 266 267 |
# File 'lib/awscli/cli/ec2/instances.rb', line 264 def stop create_ec2_object @ec2.stop_instance [:instance_id] end |
#terminate ⇒ Object
274 275 276 277 |
# File 'lib/awscli/cli/ec2/instances.rb', line 274 def terminate create_ec2_object @ec2.terminate_instance [:instance_id] end |
#terminate_all ⇒ Object
281 282 283 284 |
# File 'lib/awscli/cli/ec2/instances.rb', line 281 def terminate_all create_ec2_object @ec2.terminate_instances [:delete_volumes] end |