From b679f615361ae87f77d132cd249e030931fbf2a4 Mon Sep 17 00:00:00 2001 From: DamianBis Date: Mon, 27 Apr 2020 18:48:19 +1000 Subject: [PATCH] Update to make NoExitOnFailure work correctly. (#9119) if NoExitOnFailure is true then ignore the error returned from salt. --- provisioner/salt-masterless/provisioner.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/provisioner/salt-masterless/provisioner.go b/provisioner/salt-masterless/provisioner.go index 06983cd10..a4c3f0336 100644 --- a/provisioner/salt-masterless/provisioner.go +++ b/provisioner/salt-masterless/provisioner.go @@ -347,7 +347,7 @@ func (p *Provisioner) Provision(ctx context.Context, ui packer.Ui, comm packer.C ui.Message(fmt.Sprintf("Running: salt-call --local %s", p.config.CmdArgs)) cmd := &packer.RemoteCmd{Command: p.sudo(fmt.Sprintf("%s --local %s", filepath.Join(p.config.SaltBinDir, "salt-call"), p.config.CmdArgs))} - if err = cmd.RunWithUi(ctx, comm, ui); err != nil || cmd.ExitStatus() != 0 { + if err = cmd.RunWithUi(ctx, comm, ui); (err != nil || cmd.ExitStatus() != 0) && !p.config.NoExitOnFailure { if err == nil { err = fmt.Errorf("Bad exit status: %d", cmd.ExitStatus()) }