builder/digitalocean: use detected env variables for credentials

This commit is contained in:
Jack Pearkes 2013-07-11 11:31:09 +02:00
parent 0fdf9b09c9
commit d701adb3e0
2 changed files with 15 additions and 2 deletions

View File

@ -12,6 +12,7 @@ import (
"github.com/mitchellh/packer/builder/common"
"github.com/mitchellh/packer/packer"
"log"
"os"
"strconv"
"text/template"
"time"
@ -64,6 +65,16 @@ func (b *Builder) Prepare(raws ...interface{}) error {
// Optional configuration with defaults
//
if b.config.APIKey == "" {
// Default to environment variable for api_key, if it exists
b.config.APIKey = os.Getenv("DIGITALOCEAN_API_KEY")
}
if b.config.ClientID == "" {
// Default to environment variable for client_id, if it exists
b.config.ClientID = os.Getenv("DIGITALOCEAN_CLIENT_ID")
}
if b.config.RegionID == 0 {
// Default to Region "New York"
b.config.RegionID = 1

View File

@ -25,11 +25,13 @@ Required:
* `api_key` (string) - The API key to use to access your account. You can
retrieve this on the "API" page visible after logging into your account
on DigitalOcean.
on DigitalOcean. Alternatively, the builder looks for the environment
variable `DIGITALOCEAN_API_KEY`.
* `client_id` (string) - The client ID to use to access your account. You can
find this on the "API" page visible after logging into your account on
DigitalOcean.
DigitalOcean. Alternatively, the builder looks for the environment
variable `DIGITALOCEAN_CLIENT_ID`.
Optional: