On Mon, Oct 17, 2011 at 04:43:21PM +0200, mfoj...@redhat.com wrote:
> From: Michal Fojtik <mfoj...@redhat.com>
> 
>

ACK-BY: Francesco Vollero <fvoll...@redhat.com>
 
> Signed-off-by: Michal fojtik <mfoj...@redhat.com>
> ---
>  server/config/drivers/openstack.yaml               |    3 +
>  .../drivers/openstack/openstack_driver.rb          |   47 
> ++++++++++++++++++++
>  .../drivers/rackspace/rackspace_driver.rb          |    3 +-
>  3 files changed, 51 insertions(+), 2 deletions(-)
>  create mode 100644 server/config/drivers/openstack.yaml
>  create mode 100644 
> server/lib/deltacloud/drivers/openstack/openstack_driver.rb
> 
> diff --git a/server/config/drivers/openstack.yaml 
> b/server/config/drivers/openstack.yaml
> new file mode 100644
> index 0000000..495b38a
> --- /dev/null
> +++ b/server/config/drivers/openstack.yaml
> @@ -0,0 +1,3 @@
> +---
> +:openstack:
> +  :name: Openstack
> diff --git a/server/lib/deltacloud/drivers/openstack/openstack_driver.rb 
> b/server/lib/deltacloud/drivers/openstack/openstack_driver.rb
> new file mode 100644
> index 0000000..d09edf2
> --- /dev/null
> +++ b/server/lib/deltacloud/drivers/openstack/openstack_driver.rb
> @@ -0,0 +1,47 @@
> +# Licensed to the Apache Software Foundation (ASF) under one or more
> +# contributor license agreements.  See the NOTICE file distributed with
> +# this work for additional information regarding copyright ownership.  The
> +# ASF licenses this file to you under the Apache License, Version 2.0 (the
> +# "License"); you may not use this file except in compliance with the
> +# License.  You may obtain a copy of the License at
> +#
> +#       http://www.apache.org/licenses/LICENSE-2.0
> +#
> +# Unless required by applicable law or agreed to in writing, software
> +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
> +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
> +# License for the specific language governing permissions and limitations
> +# under the License.
> +#
> +
> +require 'deltacloud/drivers/rackspace/rackspace_driver.rb'
> +module Deltacloud
> +  module Drivers
> +    module Openstack
> +      class OpenstackDriver < Rackspace::RackspaceDriver
> +
> +        feature :instances, :user_name
> +        feature :instances, :authentication_password
> +        feature :instances, :user_files
> +
> +        define_instance_states do
> +          start.to( :pending )          .on( :create )
> +          pending.to( :running )        .automatically
> +          running.to( :running )        .on( :reboot )
> +          running.to( :shutting_down )  .on( :stop )
> +          shutting_down.to( :stopped )  .automatically
> +          stopped.to( :finish )         .automatically
> +        end
> +
> +        def new_client(credentials)
> +          safely do
> +            CloudServers::Connection.new(:username => credentials.user, 
> :api_key => credentials.password, :auth_url => api_provider)
> +          end
> +        end
> +
> +        private :new_client
> +      end
> +    end
> +  end
> +end
> +
> diff --git a/server/lib/deltacloud/drivers/rackspace/rackspace_driver.rb 
> b/server/lib/deltacloud/drivers/rackspace/rackspace_driver.rb
> index e7c52d7..5125057 100644
> --- a/server/lib/deltacloud/drivers/rackspace/rackspace_driver.rb
> +++ b/server/lib/deltacloud/drivers/rackspace/rackspace_driver.rb
> @@ -356,8 +356,7 @@ class RackspaceDriver < Deltacloud::BaseDriver
>      return http, request
>    end
>  
> -private
> -
> +  private
>  
>    def new_client(credentials)
>      safely do
> -- 
> 1.7.4.4
> 

Reply via email to