diff --git a/CHANGELOG.md b/CHANGELOG.md index 60b1780d7..bd8d067cf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,11 @@ BUG FIXES: * core: default user variable values don't need to be strings. [GH-456] * builder/amazon-chroot: Fix errors with waitin for state change. [GH-459] +* builder/digitalocean: Use proper error message JSON key (DO API change). * communicator/ssh: SCP uploads now work properly when directories contain symlinks. [GH-449] +* provisioner/chef-solo: Data bags and roles path are now properly + populated when set. [GH-470] ## 0.3.8 (September 22, 2013) diff --git a/builder/digitalocean/api.go b/builder/digitalocean/api.go index 5abc12faa..7e09595cc 100644 --- a/builder/digitalocean/api.go +++ b/builder/digitalocean/api.go @@ -227,7 +227,7 @@ func NewRequest(d DigitalOceanClient, path string, params url.Values) (map[strin } if status == "ERROR" { - status = decodedResponse["error_message"].(string) + status = decodedResponse["message"].(string) } lastErr = errors.New(fmt.Sprintf("Received error from DigitalOcean (%d): %s", diff --git a/provisioner/chef-solo/provisioner.go b/provisioner/chef-solo/provisioner.go index ddfc605fb..a22b18e30 100644 --- a/provisioner/chef-solo/provisioner.go +++ b/provisioner/chef-solo/provisioner.go @@ -212,7 +212,7 @@ func (p *Provisioner) Provision(ui packer.Ui, comm packer.Communicator) error { rolesPath := "" if p.config.RolesPath != "" { - rolesPath := fmt.Sprintf("%s/roles", p.config.StagingDir) + rolesPath = fmt.Sprintf("%s/roles", p.config.StagingDir) if err := p.uploadDirectory(ui, comm, rolesPath, p.config.RolesPath); err != nil { return fmt.Errorf("Error uploading roles: %s", err) } @@ -220,7 +220,7 @@ func (p *Provisioner) Provision(ui packer.Ui, comm packer.Communicator) error { dataBagsPath := "" if p.config.DataBagsPath != "" { - dataBagsPath := fmt.Sprintf("%s/data_bags", p.config.StagingDir) + dataBagsPath = fmt.Sprintf("%s/data_bags", p.config.StagingDir) if err := p.uploadDirectory(ui, comm, dataBagsPath, p.config.DataBagsPath); err != nil { return fmt.Errorf("Error uploading data bags: %s", err) } diff --git a/scripts/build.sh b/scripts/build.sh index 8ba8d3d4f..d8243eac7 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -92,3 +92,6 @@ for PLUGIN in $(find ./plugin -mindepth 1 -maxdepth 1 -type d); do done waitAll + +# Reset signal trapping to avoid "Terminated: 15" at the end +trap - SIGINT SIGTERM EXIT diff --git a/website/source/docs/builders/digitalocean.html.markdown b/website/source/docs/builders/digitalocean.html.markdown index 1c11d2d3b..b4793a8dd 100644 --- a/website/source/docs/builders/digitalocean.html.markdown +++ b/website/source/docs/builders/digitalocean.html.markdown @@ -35,11 +35,6 @@ Required: Optional: -* `event_delay` (string) - The delay, as a duration string, before checking - the status of an event. DigitalOcean's current API has consistency issues - where events take time to appear after being created. This defaults to "5s" - and generally shouldn't have to be changed. - * `image_id` (int) - The ID of the base image to use. This is the image that will be used to launch a new droplet and provision it. Defaults to "284203", which happens to be "Ubuntu 12.04 x64 Server."