github.com/olli-ai/jx/v2@v2.0.400-0.20210921045218-14731b4dd448/pkg/cmd/opts/expose.go (about) 1 package opts 2 3 import ( 4 "github.com/olli-ai/jx/v2/pkg/expose" 5 "github.com/olli-ai/jx/v2/pkg/kube" 6 "github.com/pkg/errors" 7 ) 8 9 // Expose runs expose controller in the given target namespace 10 func (o *CommonOptions) Expose(devNamespace, targetNamespace, password string) error { 11 certClient, err := o.factory.CreateCertManagerClient() 12 if err != nil { 13 return errors.Wrap(err, "creating cert-manager client") 14 } 15 versionsDir, _, err := o.CloneJXVersionsRepo("", "") 16 if err != nil { 17 return errors.Wrapf(err, "failed to clone the Jenkins X versions repository") 18 } 19 return expose.Expose(o.kubeClient, certClient, devNamespace, targetNamespace, password, o.Helm(), DefaultInstallTimeout, versionsDir) 20 } 21 22 // RunExposecontroller runs exponse controller in the given target dir with the given ingress configuration 23 func (o *CommonOptions) RunExposecontroller(devNamespace, targetNamespace string, ic kube.IngressConfig, services ...string) error { 24 versionsDir, _, err := o.CloneJXVersionsRepo("", "") 25 if err != nil { 26 return errors.Wrapf(err, "failed to clone the Jenkins X versions repository") 27 } 28 return expose.RunExposecontroller(devNamespace, targetNamespace, ic, o.kubeClient, o.Helm(), 29 DefaultInstallTimeout, versionsDir, services...) 30 } 31 32 // CleanExposecontrollerReources cleans expose controller resources 33 func (o *CommonOptions) CleanExposecontrollerReources(ns string) { 34 expose.CleanExposecontrollerReources(o.kubeClient, ns) 35 }