Sha256: 2950fbbf9ce7193fbc7990dcef7b6d7f6224f84ac446b06ba5aa1f59f4636313

Contents?: true

Size: 1.85 KB

Versions: 1

Compression:

Stored size: 1.85 KB

Contents

# Yao

![Logo](./yao-logo.png)

YAO is a Yet Another OpenStack API Wrapper that rocks!! [![Build Status](https://travis-ci.org/yaocloud/yao.svg)](https://travis-ci.org/yaocloud/yao)

## Installation

Add this line to your application's Gemfile:

```ruby
gem 'yao'
```

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install yao

## Usage

```ruby
require 'yao'

Yao.configure do
  auth_url    "http://keystone.example.local:8080/v2.0/tokens"
  tenant_name "fooproject"
  username    "udzura"
  password    "tonk0tsu-r@men"
end

Yao::Network.list # list up networks...
Yao::Server.list_detail # list up instances...
```

If you want to override some of endpoints by service, you can do:

```ruby
Yao.configure do
  auth_url    "http://endpoint.example.com:12345"
  tenant_name "example"
  username    "udzura"
  password    "XXXXXXXX"
  endpoints   identity: { public: "http://override-endpoint.example.com:35357/v3.0" }
end
```

## Support policy

YAO supports rubies which are supported by Ruby Core Team. Please look into [`.travis.yml`](./.travis.yml) 's directive.

If you want to use YAO's full functionality, e.g Ruby 2.0 or below, please create an issue or a PR first (PR Recommended ;) ).

## Pro tips

You can use a prittier namespace:

```ruby
# Instead of require-ing 'yao'
require 'yao/is_openstack_client'

OpenStack.configure do
  auth_url    "http://keystone.example.local:8080/v2.0/tokens"
  tenant_name "fooproject"
  username    "udzura"
  password    "tonk0tsu-r@men"
  # timeout is optional
  timeout     300
end

OpenStack::Server.list_detail # And let's go on
```

## Contributing

1. Fork it ( https://github.com/yaocloud/yao/fork )
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Pull Request

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
yao-0.3.1 README.md