github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/utils/kubectl/kubectl.go (about) 1 package kubectl 2 3 import ( 4 "os/exec" 5 ) 6 7 type Kubectl struct { 8 parameters []string 9 } 10 11 func New(command string) *Kubectl { 12 return &Kubectl{ 13 parameters: []string{command}, 14 } 15 } 16 17 func (k *Kubectl) AddParameter(key, value string) *Kubectl { 18 k.parameters = append(k.parameters, key) 19 k.parameters = append(k.parameters, value) 20 return k 21 } 22 23 func (k *Kubectl) AddFlag(flag string) *Kubectl { 24 k.parameters = append(k.parameters, flag) 25 return k 26 } 27 28 func (k *Kubectl) Build() exec.Cmd { 29 cmd := exec.Command("kubectl", k.parameters...) 30 return *cmd 31 }