Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jimmycuadra/lita-digitalocean
A Lita handler for managing DigitalOcean services.
https://github.com/jimmycuadra/lita-digitalocean
chatops devops digitalocean lita lita-handler ruby
Last synced: 21 days ago
JSON representation
A Lita handler for managing DigitalOcean services.
- Host: GitHub
- URL: https://github.com/jimmycuadra/lita-digitalocean
- Owner: jimmycuadra
- License: mit
- Created: 2014-04-11T02:50:59.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2014-10-23T16:30:09.000Z (about 10 years ago)
- Last Synced: 2024-11-18T01:39:08.091Z (about 1 month ago)
- Topics: chatops, devops, digitalocean, lita, lita-handler, ruby
- Language: Ruby
- Size: 328 KB
- Stars: 25
- Watchers: 3
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-digitalocean - lita-digitalocean - Lita handler for managing DigitalOcean services. (Community OSS projects)
README
# lita-digitalocean
[![Build Status](https://travis-ci.org/jimmycuadra/lita-digitalocean.png?branch=master)](https://travis-ci.org/jimmycuadra/lita-digitalocean)
[![Code Climate](https://codeclimate.com/github/jimmycuadra/lita-digitalocean.png)](https://codeclimate.com/github/jimmycuadra/lita-digitalocean)
[![Coverage Status](https://coveralls.io/repos/jimmycuadra/lita-digitalocean/badge.png)](https://coveralls.io/r/jimmycuadra/lita-digitalocean)**lita-digitalocean** is a handler plugin for [Lita](https://www.lita.io/) that manages [DigitalOcean](https://www.digitalocean.com/) services.
## Installation
Add lita-digitalocean to your Lita instance's Gemfile:
``` ruby
gem "lita-digitalocean"
```## Configuration
### Required attributes
* `client_id` (String) - The client ID for the account to manage.
* `api_key` (String) - The API key for the account to manage.### Example
``` ruby
Lita.configure do |config|
config.handlers.digitalocean.client_id = "BdCsMEJYPv2tu7xQtLRB3"
config.handlers.digitalocean.api_key = "3df020a0441731e5ca47243b5515cbb7"
end
```## Usage
To use any of the DigitalOcean commands, the user sending the message must be in the `:digitalocean_admins` authorization group.
### Domain commands
To create a new DNS record set:
```
Lita: do domains create NAME IP
```To delete a DNS record set:
```
Lita: do domains delete DOMAIN_NAME_OR_ID
```To list all DNS record sets:
```
Lita: do domains list
```To show the details of a DNS record set:
```
Lita: do domains show DOMAIN_NAME_OR_ID
```### Domain record commands
To create a new DNS record:
```
Lita: do domain records create DOMAIN_NAME_OR_ID TYPE DATA [--name NAME] [--priority PRIORITY] [--port PORT] [--weight WEIGHT]
```To delete a DNS record:
```
Lita: do domain records delete DOMAIN_NAME_OR_ID DOMAIN_RECORD_ID
```To edit a DNS record:
```
Lita: do domain records edit DOMAIN_NAME_OR_ID DOMAIN_RECORD_ID TYPE DATA [--name NAME] [--priority PRIORITY] [--port PORT] [--weight WEIGHT]
```To list all DNS records for a DNS record set:
```
Lita: do domain records list DOMAIN_NAME_OR_ID
```To show the details of a DNS record:
```
Lita: do domain records show DOMAIN_NAME_OR_ID DOMAIN_RECORD_ID
```### Droplet commands
To create a droplet:
```
Lita: do droplets create HOSTNAME SIZE_ID_OR_SLUG IMAGE_ID_OR_SLUG REGION_ID_OR_SLUG [--ssh-key-ids SSH_KEY_IDS] [--private-networking] [--backups-enabled]
```To delete a droplet, optionally writing zeroes to the disk first:
```
Lita: do droplets delete ID [--scrub]
```To list all droplets:
```
Lita: do droplets list
```To reset the root password for a droplet:
```
Lita: do droplets password reset ID
```To power cycle a droplet:
```
Lita: do droplets power cycle ID
```To power off a droplet:
```
Lita: do droplets power off ID
```To power on a droplet:
```
Lita: do droplets power on ID
```To reboot a droplet:
```
Lita: do droplets reboot ID
```To rebuild a droplet:
```
Lita: do droplets rebuild ID IMAGE_ID
```To resize a droplet's disk:
```
Lita: do droplets resize ID SIZE_ID_OR_SLUG
```To restore a droplet from an image:
```
Lita: do droplets restore ID IMAGE_ID
```To show the details of a droplet:
```
Lita: do droplets show ID
```To shut down a droplet:
```
Lita: do droplets shutdown ID
```To take a snapshot of a droplet, optionally naming the snapshot:
```
Lita: do droplets snapshot ID [NAME]
```### Image commands
To delete an image:
```
Lita: do images delete ID_OR_SLUG
```To list all possible images:
```
Lita: do images list
```To list only global images:
```
Lita: do images list global
```To list only your own images:
```
Lita: do images list my_images
```To show the details of an image:
```
Lita: do images show ID_OR_SLUG
```### Region commands
To list all the possible regions:
```
Lita: do regions list
```### SSH key commands
To add a new SSH key and get back its ID:
```
Lita: do ssh keys add NAME PUBLIC_KEY
```To delete an SSH key by its ID:
```
Lita: do ssh keys delete ID
```To edit the name and/or public key of an existing SSH key:
```
Lita: do ssh keys edit ID [--name NAME] [--public-key PUBLIC_KEY]
```To list the names and IDs of all SSH keys:
```
Lita: do ssh keys list
```To show the name and public key of an SSH key by ID:
```
Lita: do ssh keys show ID
```### Size commands
To list all the possible image sizes:
```
Lita: do sizes list
```## License
[MIT](http://opensource.org/licenses/MIT)