github.com/verrazzano/verrazzano@v1.7.0/tools/psr/psrctl/pkg/scenario/stop.go (about) 1 // Copyright (c) 2022, 2023, Oracle and/or its affiliates. 2 // Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 4 package scenario 5 6 import ( 7 "fmt" 8 "github.com/verrazzano/verrazzano/tools/vz/pkg/helpers" 9 10 helmcli "github.com/verrazzano/verrazzano/pkg/helm" 11 ) 12 13 var UninstallFunc = helmcli.Uninstall 14 15 // StopScenarioByID stops a running scenario specified by the scenario ID 16 func (m ScenarioMananger) StopScenarioByID(ID string, vzHelper helpers.VZHelper) error { 17 cm, err := m.getConfigMapByID(ID) 18 if err != nil { 19 return err 20 } 21 sc, err := m.getScenarioFromConfigmap(cm) 22 if err != nil { 23 return err 24 } 25 // Delete Helm releases 26 for _, h := range sc.HelmReleases { 27 if m.Verbose { 28 fmt.Fprintf(vzHelper.GetOutputStream(), "Uninstalling Helm release %s/%s\n", h.Namespace, h.Name) 29 } 30 err := UninstallFunc(m.Log, h.Name, h.Namespace, m.DryRun) 31 if err != nil { 32 return err 33 } 34 } 35 // Delete config map 36 err = m.deleteConfigMap(cm) 37 if err != nil { 38 return err 39 } 40 return nil 41 }