Awesome
Foreman DigitalOcean Plugin
foreman-digitalocean
enables provisioning and managing of DigitalOcean droplets in Foreman, all of that under the GPL v3+ license.
- Website: TheForeman.org
- ServerFault tag: Foreman
- Issues: foreman-digitalocean Redmine
- Wiki: Foreman wiki
- Community and support: #theforeman for general support, #theforeman-dev for development chat in Freenode
- Mailing lists:
Installation
Please see the Foreman manual for appropriate instructions:
Red Hat, CentOS, Fedora, Scientific Linux (rpm)
Set up the repo as explained in the link above, then run
# yum install ruby193-rubygem-foreman_digitalocean
Debian, Ubuntu (deb)
Set up the repo as explained in the link above, then run
# apt-get install ruby-foreman-digitalocean
Bundle (gem)
Add the following to bundler.d/Gemfile.local.rb in your Foreman installation directory (/usr/share/foreman by default)
$ gem 'foreman_digitalocean'
Then run bundle install
from the same directory
To verify that the installation was successful, go to Foreman, top bar Administer > About and check 'foreman_digitalocean' shows up in the System Status menu under the Plugins tab.
Compatibility
Foreman Version | Plugin Version |
---|---|
<= 1.7.x | ~> 0.1.x |
>= 1.8.0 | ~> 0.2.x |
>= 1.11.0 | ~> 1.x |
>= 1.13.0 | ~> 1.1 |
Configuration
Go to Infrastructure > Compute Resources and click on "New Compute Resource".
Choose the DigitalOcean provider, and fill in all the fields. You need an API token with read and write access, which can be created at the DigitalOcean API section. It will be encrypted in the database.
That's it. You're now ready to create and manage droplets in your new DigitalOcean compute resource.
You should see something like this in the Compute Resource page:
How to contribute?
Generally, follow the Foreman guidelines. For code-related contributions, fork this project and send a pull request with all changes. Some things to keep in mind:
- Follow the rules about commit message style and create a Redmine issue. Doing this right will help reviewers to get your contribution merged faster.
- Rubocop will analyze your code, you can run it locally with
rake rubocop
. - All of our pull requests run the full test suite in our Jenkins CI system. Please include tests in your pull requests for any additions or changes in functionality
Latest code
You can get the nightly branch of the plugin by specifying your Gemfile in this way:
gem 'foreman_digitalocean', :git => "https://github.com/theforeman/foreman-digitalocean.git"
License
This project started as a pull request from Tommy McNeely (TJM). It is licensed as GPLv3 since it is a Foreman plugin.
See LICENSE for more details.