Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

README.md

Digital Ocean Plugin

Overview

The Digital Ocean Plugin integrates RightScale Self-Service with the basic functionality of the Digital Ocean API.

Requirements

  • A general understanding CAT development and definitions
    • Refer to the guide documentation for details SS Guides
  • The admin, ss_designer & ss_end_user roles, in a RightScale account with SelfService enabled. admin is needed to retrieved the RightScale Credential values identified below.
  • The following RightScale Credentials
    • DIGITAL_OCEAN_API_KEY
  • The following packages are also required (See the Installation section for details):

Installation

  1. Be sure your RightScale account has Self-Service enabled
  2. Generate a Digital Ocean API Key
  3. Create a RightScale Credential named DIGITAL_OCEAN_API_KEY with the value of the API Key generated in the previous step
  4. Navigate to the appropriate Self-Service portal
  5. In the Design section, use the Upload CAT interface to complete the following:
    1. Upload each of packages listed in the Requirements Section
    2. Upload the rs_do_plugin.rb file located in this repository

How to Use

The Digital Ocean Plugin has been packaged as plugins/rs_do. In order to use this plugin you must import this plugin into a CAT.

import "plugins/rs_do"

For more information on using packages, please refer to the RightScale online documentation. Importing a Package

Supported Resources

  • droplet

Usage

resource "my_droplet", type: "rs_do.droplet" do
  name join(["rightscale-",last(split(@@deployment.href, "/"))])
  region "nyc1"
  size "s-1vcpu-1gb"
  image "docker"
end

Resources

droplet

Supported Fields

Field Name Required?
name yes
region yes
size yes
image yes
ssh_keys no
backups no
ipv6 no
private_networking no
user_data no
monitoring no
volumes no
tags no

Supported Actions

Action API Implementation Support Level
get Retrieve an existing Droplet by ID supported
list List all Droplets supported
show Retrieve an existing Droplet by ID supported
create Create a new Droplet supported
destroy Delete a Droplet supported

Outputs

  • id
  • name
  • memory
  • vcpus
  • disk
  • locked
  • created_at
  • status
  • features
  • region
  • image
  • size
  • size_slug
  • networks
  • kernel
  • next_backup_window
  • backup_ids
  • snapshot_ids
  • volume_ids
  • tags

Implementation Notes

  • The Digital Ocean Plugin makes no attempt to support non-Digital Ocean resources. (i.e. Allow the passing the RightScale or other resources as arguments to an Digital Ocean resource.)

Examples

Please review digital_ocean_test_cat.rb for a basic example implementation.

License

The Digital Ocean Plugin source code is subject to the MIT license, see the LICENSE file.