package helm import ( "fmt" "strings" "os/exec" log "oc-deploy/log_wrapper" ) type HelmRepo struct { Bin string // Chemin vers le binaire Name string Repository string // Url du dépôt ForceUpdate bool Opts string } func (this HelmRepo) AddRepository() (string, error) { helm_bin := this.Bin force_update := "--force-update=false" if this.ForceUpdate { force_update = "--force-update=true" } msg := fmt.Sprintf("%s repo add %s %s %s %s", helm_bin, this.Name, this.Repository, force_update, this.Opts) log.Log().Debug().Msg(msg) cmd := exec.Command(helm_bin, "repo", "add", this.Name, this.Repository, force_update) stdout, err := cmd.CombinedOutput() res := string(stdout) res = strings.TrimSuffix(res, "\n") return res, err } // helm repo remove [NAME] func (this HelmRepo) RemoveRepository() (string, error) { helm_bin := this.Bin msg := fmt.Sprintf("%s repo remove %s", helm_bin, this.Name) log.Log().Debug().Msg(msg) cmd := exec.Command(helm_bin, "repo", "remove", this.Name) stdout, err := cmd.CombinedOutput() res := string(stdout) res = strings.TrimSuffix(res, "\n") return res, err }