MCPcopy Create free account
hub / github.com/devspace-sh/devspace / ExecByContainer

Method ExecByContainer

e2e/kube/kube.go:61–78  ·  view source on GitHub ↗
(labelSelector, containerName, namespace string, command []string)

Source from the content-addressed store, hash-verified

59}
60
61func (k *KubeHelper) ExecByContainer(labelSelector, containerName, namespace string, command []string) (string, error) {
62 targetOptions := targetselector.NewOptionsFromFlags(containerName, labelSelector, nil, namespace, "").
63 WithTimeout(120).
64 WithWaitingStrategy(targetselector.NewUntilNewestRunningWaitingStrategy(time.Second * 2))
65
66 globalTargetSelector := targetselector.NewTargetSelector(targetOptions)
67 container, err := globalTargetSelector.SelectSingleContainer(context.TODO(), k.client, log.Discard)
68 if err != nil {
69 return "", err
70 }
71
72 stdout, stderr, err := k.client.ExecBuffered(context.TODO(), container.Pod, container.Container.Name, command, nil)
73 if err != nil {
74 return "", fmt.Errorf("exec error: %v %s", err, string(stderr))
75 }
76
77 return string(stdout), nil
78}
79
80func (k *KubeHelper) CreateNamespace(name string) (string, error) {
81 name = strings.ToLower(name + "-" + randutil.GenerateRandomString(5))

Callers 4

deploy.goFile · 0.80
inject.goFile · 0.80
replacepods.goFile · 0.80

Calls 8

SelectSingleContainerMethod · 0.95
NewOptionsFromFlagsFunction · 0.92
NewTargetSelectorFunction · 0.92
WithWaitingStrategyMethod · 0.80
WithTimeoutMethod · 0.80
ExecBufferedMethod · 0.65
ErrorfMethod · 0.45

Tested by

no test coverage detected