Merge pull request #6217 from bacongobbler/implement-cleanup

fix(test): restore --cleanup
pull/6219/head
Matthew Fisher 5 years ago committed by GitHub
commit d69139afa5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -116,7 +116,9 @@ func (cfg *Configuration) deleteHookByPolicy(h *release.Hook, policy release.Hoo
return errors.Wrapf(err, "unable to build kubernetes object for deleting hook %s", h.Path)
}
_, errs := cfg.KubeClient.Delete(resources)
return errors.New(joinErrors(errs))
if len(errs) > 0 {
return errors.New(joinErrors(errs))
}
}
return nil
}

@ -17,6 +17,9 @@ limitations under the License.
package action
import (
"bytes"
"fmt"
"strings"
"time"
"github.com/pkg/errors"
@ -58,5 +61,23 @@ func (r *ReleaseTesting) Run(name string) error {
return err
}
if r.Cleanup {
var manifestsToDelete strings.Builder
for _, h := range rel.Hooks {
for _, e := range h.Events {
if e == release.HookTest {
fmt.Fprintf(&manifestsToDelete, "\n---\n%s", h.Manifest)
}
}
}
hooks, err := r.cfg.KubeClient.Build(bytes.NewBufferString(manifestsToDelete.String()))
if err != nil {
return fmt.Errorf("unable to build test hooks: %v", err)
}
if _, errs := r.cfg.KubeClient.Delete(hooks); errs != nil {
return fmt.Errorf("unable to delete test hooks: %v", joinErrors(errs))
}
}
return r.cfg.Releases.Update(rel)
}

Loading…
Cancel
Save