<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/cliaws/cli/ec2.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,133 +1,3 @@
 #!/usr/bin/env ruby
-#
-#  Created on 2008-4-12.
-#  Copyright (c) 2008. All rights reserved.
-
-begin
-  require 'rubygems'
-rescue LoadError
-  # no rubygems to load, so we fail silently
-end
-
-require &quot;main&quot;
-
-$:.unshift File.dirname(__FILE__) + &quot;/../lib&quot;
-require &quot;cliaws&quot;
-
-Main {
-  mode(&quot;list&quot;) do
-    def run
-      instances = Cliaws.ec2.list
-      printf &quot;%-10s %-50s %-12s %s\n&quot;, &quot;ID&quot;, &quot;DNS Name&quot;, &quot;State&quot;, &quot;Groups&quot;
-      printf &quot;-&quot;*120
-      print &quot;\n&quot;
-      instances.each do |instance|
-        printf &quot;%-10s %-50s %-12s %s\n&quot;, instance.instance_id, instance.public_dns_name, instance.state, instance.groups.join(&quot;, &quot;)
-      end
-    end
-  end
-
-  mode(&quot;run&quot;) do
-    argument(&quot;AMI&quot;) do
-      required
-      argument_required
-    end
-
-    option(&quot;count&quot;) do
-      optional
-      default &quot;1&quot;
-      argument_required
-    end
-
-    option(&quot;type&quot;) do
-      optional
-      default &quot;m1.small&quot;
-      argument_required
-    end
-
-    option(&quot;keypair&quot;) do
-      required
-      argument_required
-    end
-
-    option(&quot;group&quot;) do
-      arity -1
-      default &quot;default&quot;
-      argument_required
-    end
-
-    def run
-      instances = Cliaws.ec2.run(params[&quot;AMI&quot;].value, :type =&gt; params[&quot;type&quot;].value, :count =&gt; params[&quot;count&quot;].value, :keypair =&gt; params[&quot;keypair&quot;].value, :groups =&gt; params[&quot;group&quot;].values)
-      result = {&quot;Started&quot; =&gt; instances.map {|i| i.instance_id}}
-      puts result.to_yaml
-    end
-  end
-
-  mode(&quot;terminate&quot;) do
-    argument(&quot;instance_id&quot;) do
-      required
-      arity -2
-      argument_required
-    end
-
-    def run
-      instances = Cliaws.ec2.terminate(params[&quot;instance_id&quot;].values)
-      result = {&quot;Terminating&quot; =&gt; instances.map {|i| i.instance_id}}
-      puts result.to_yaml
-    end
-  end
-
-  mode(&quot;allocate-address&quot;) do
-    def run
-      address = Cliaws.ec2.allocate_address
-      puts &quot;Allocated: #{address}&quot;
-    end
-  end
-
-  mode(&quot;deallocate-address&quot;) do
-    argument(&quot;address&quot;) do
-      required
-      argument_required
-    end
-
-    def run
-      Cliaws.ec2.deallocate_address(params[&quot;address&quot;].value)
-      puts &quot;Deallocated: #{params[&quot;address&quot;].value}&quot;
-    end
-  end
-
-  mode(&quot;associate-address&quot;) do
-    option(&quot;address&quot;) do
-      required
-      argument_required
-    end
-
-    option(&quot;instance&quot;) do
-      required
-      argument_required
-    end
-
-    def run
-      Cliaws.ec2.associate_address(:address =&gt; params[&quot;address&quot;].value, :instance =&gt; params[&quot;instance&quot;].value)
-      puts &quot;Associated:\n  #{params[&quot;instance&quot;].value}: #{params[&quot;address&quot;].value.inspect}&quot;
-    end
-  end
-
-  mode(&quot;disassociate-address&quot;) do
-    argument(&quot;address&quot;) do
-      required
-      argument_required
-    end
-
-    def run
-      Cliaws.ec2.disassociate_address(params[&quot;address&quot;].value)
-      puts &quot;Disassociated: #{params[&quot;address&quot;].value}&quot;
-    end
-  end
-
-  mode(&quot;describe-addresses&quot;) do
-    def run
-      puts Cliaws.ec2.describe_addresses.to_yaml
-    end
-  end
-}
+require &quot;cliaws/cli/ec2&quot;
+Cliaws::Cli::Ec2.start</diff>
      <filename>bin/cliec2</filename>
    </modified>
    <modified>
      <diff>@@ -50,6 +50,8 @@ module Cliaws
     end
 
     class Instance
+      attr_reader :raw_data
+
       def initialize(raw_data)
         @raw_data = raw_data
       end</diff>
      <filename>lib/cliaws/ec2.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>a5615ed2f2f65d14c6dd70a0d507b197d71393a8</id>
    </parent>
  </parents>
  <author>
    <name>Fran&#231;ois Beausoleil</name>
    <email>francois@teksol.info</email>
  </author>
  <url>http://github.com/francois/cliaws/commit/0fd1f0c7aba26d465dd62ccb661a383f6cafeb7a</url>
  <id>0fd1f0c7aba26d465dd62ccb661a383f6cafeb7a</id>
  <committed-date>2009-07-07T16:10:39-07:00</committed-date>
  <authored-date>2009-07-07T16:10:13-07:00</authored-date>
  <message>Implemented cliec2 as a Thor script.</message>
  <tree>1ef65315a2dc66e192fc7cab06559f4e223db641</tree>
  <committer>
    <name>Fran&#231;ois Beausoleil</name>
    <email>francois@teksol.info</email>
  </committer>
</commit>
