provisioner/salt-masterless: nice error even if bad exit status
/cc @rgarcia
This commit is contained in:
parent
758a53b146
commit
4f58b20479
|
@ -99,6 +99,10 @@ func (p *Provisioner) Provision(ui packer.Ui, comm packer.Communicator) error {
|
||||||
ui.Message(fmt.Sprintf("Creating remote directory: %s", p.config.TempConfigDir))
|
ui.Message(fmt.Sprintf("Creating remote directory: %s", p.config.TempConfigDir))
|
||||||
cmd := &packer.RemoteCmd{Command: fmt.Sprintf("mkdir -p %s", p.config.TempConfigDir)}
|
cmd := &packer.RemoteCmd{Command: fmt.Sprintf("mkdir -p %s", p.config.TempConfigDir)}
|
||||||
if err = cmd.StartWithUi(comm, ui); err != nil || cmd.ExitStatus != 0 {
|
if err = cmd.StartWithUi(comm, ui); err != nil || cmd.ExitStatus != 0 {
|
||||||
|
if err == nil {
|
||||||
|
err = fmt.Errorf("Bad exit status: %d", cmd.ExitStatus)
|
||||||
|
}
|
||||||
|
|
||||||
return fmt.Errorf("Error creating remote salt state directory: %s", err)
|
return fmt.Errorf("Error creating remote salt state directory: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -110,12 +114,20 @@ func (p *Provisioner) Provision(ui packer.Ui, comm packer.Communicator) error {
|
||||||
ui.Message(fmt.Sprintf("Moving %s to /srv/salt", p.config.TempConfigDir))
|
ui.Message(fmt.Sprintf("Moving %s to /srv/salt", p.config.TempConfigDir))
|
||||||
cmd = &packer.RemoteCmd{Command: fmt.Sprintf("sudo mv %s /srv/salt", p.config.TempConfigDir)}
|
cmd = &packer.RemoteCmd{Command: fmt.Sprintf("sudo mv %s /srv/salt", p.config.TempConfigDir)}
|
||||||
if err = cmd.StartWithUi(comm, ui); err != nil || cmd.ExitStatus != 0 {
|
if err = cmd.StartWithUi(comm, ui); err != nil || cmd.ExitStatus != 0 {
|
||||||
|
if err == nil {
|
||||||
|
err = fmt.Errorf("Bad exit status: %d", cmd.ExitStatus)
|
||||||
|
}
|
||||||
|
|
||||||
return fmt.Errorf("Unable to move %s to /srv/salt: %d", p.config.TempConfigDir, err)
|
return fmt.Errorf("Unable to move %s to /srv/salt: %d", p.config.TempConfigDir, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
ui.Message("Running highstate")
|
ui.Message("Running highstate")
|
||||||
cmd = &packer.RemoteCmd{Command: "sudo salt-call --local state.highstate -l info"}
|
cmd = &packer.RemoteCmd{Command: "sudo salt-call --local state.highstate -l info"}
|
||||||
if err = cmd.StartWithUi(comm, ui); err != nil || cmd.ExitStatus != 0 {
|
if err = cmd.StartWithUi(comm, ui); err != nil || cmd.ExitStatus != 0 {
|
||||||
|
if err == nil {
|
||||||
|
err = fmt.Errorf("Bad exit status: %d", cmd.ExitStatus)
|
||||||
|
}
|
||||||
|
|
||||||
return fmt.Errorf("Error executing highstate: %s", err)
|
return fmt.Errorf("Error executing highstate: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue