Skip to content

Commit d399dfc

Browse files
committed
refactor: use global target selector
1 parent 0f7d957 commit d399dfc

File tree

14 files changed

+124
-47
lines changed

14 files changed

+124
-47
lines changed

cmd/restart.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ func (cmd *RestartCmd) Run(f factory.Factory) error {
178178

179179
func restartContainer(client kubectl.Client, options targetselector.Options, log log.Logger) error {
180180
options = options.WithWait(false)
181-
container, err := targetselector.NewTargetSelector(client).SelectSingleContainer(context.TODO(), options, log)
181+
container, err := targetselector.GlobalTargetSelector.SelectSingleContainer(context.TODO(), client, options, log)
182182
if err != nil {
183183
return errors.Errorf("Error selecting pod: %v", err)
184184
}

e2e/kube/kube.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ func (k *KubeHelper) ExecByImageSelector(imageSelector, namespace string, comman
4444
WithTimeout(120).
4545
WithWaitingStrategy(targetselector.NewUntilNewestRunningWaitingStrategy(time.Second * 2))
4646

47-
container, err := targetselector.NewTargetSelector(k.client).SelectSingleContainer(context.TODO(), targetOptions, log.Discard)
47+
container, err := targetselector.GlobalTargetSelector.SelectSingleContainer(context.TODO(), k.client, targetOptions, log.Discard)
4848
if err != nil {
4949
return "", err
5050
}
@@ -62,7 +62,7 @@ func (k *KubeHelper) ExecByContainer(labelSelector, containerName, namespace str
6262
WithTimeout(120).
6363
WithWaitingStrategy(targetselector.NewUntilNewestRunningWaitingStrategy(time.Second * 2))
6464

65-
container, err := targetselector.NewTargetSelector(k.client).SelectSingleContainer(context.TODO(), targetOptions, log.Discard)
65+
container, err := targetselector.GlobalTargetSelector.SelectSingleContainer(context.TODO(), k.client, targetOptions, log.Discard)
6666
if err != nil {
6767
return "", err
6868
}

pkg/devspace/hook/remote_hook.go

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -93,17 +93,14 @@ func (r *remoteHook) execute(hook *latest.HookConfig, imageSelector []imageselec
9393
wait = true
9494
}
9595

96-
// select the container
97-
targetSelector := targetselector.NewTargetSelector(client)
98-
9996
// build target selector
10097
targetSelectorOptions := targetselector.NewOptionsFromFlags(hook.Container.ContainerName, labelSelector, targetselector.ToStringImageSelector(imageSelector), hook.Container.Namespace, hook.Container.Pod).
10198
WithTimeout(timeout).
10299
WithWait(wait).
103100
WithWaitingStrategy(r.WaitingStrategy)
104101

105102
// select container
106-
podContainer, err := targetSelector.SelectSingleContainer(context.TODO(), targetSelectorOptions, log)
103+
podContainer, err := targetselector.GlobalTargetSelector.SelectSingleContainer(context.TODO(), client, targetSelectorOptions, log)
107104
if err != nil {
108105
if _, ok := err.(*targetselector.NotFoundErr); ok {
109106
return false, nil

pkg/devspace/kubectl/selector/selector.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -71,14 +71,14 @@ type SelectedPodContainer struct {
7171
}
7272

7373
type Selector struct {
74-
ImageSelector []string
75-
LabelSelector string
76-
Pod string
77-
ContainerName string
78-
Namespace string
79-
SkipInitContainers bool
80-
81-
FilterContainer FilterContainer
74+
ImageSelector []string `json:"imageSelector"`
75+
LabelSelector string `json:"labelSelector"`
76+
Pod string `json:"pod"`
77+
ContainerName string `json:"containerName"`
78+
Namespace string `json:"namespace"`
79+
SkipInitContainers bool `json:"skipInitContainers"`
80+
81+
FilterContainer FilterContainer `json:"-"`
8282
}
8383

8484
func (s Selector) String() string {

pkg/devspace/services/attach.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,8 @@ import (
1111

1212
// StartAttach opens a new terminal
1313
func (serviceClient *client) StartAttach(options targetselector.Options, interrupt chan error) error {
14-
targetSelector := targetselector.NewTargetSelector(serviceClient.client)
1514
options = options.WithQuestion("Which pod do you want to attach to?")
16-
17-
container, err := targetSelector.SelectSingleContainer(context.TODO(), options, serviceClient.log)
15+
container, err := targetselector.GlobalTargetSelector.SelectSingleContainer(context.TODO(), serviceClient.client, options, serviceClient.log)
1816
if err != nil {
1917
return err
2018
}

pkg/devspace/services/logs.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,13 @@ func (serviceClient *client) StartLogs(options targetselector.Options, follow bo
1818

1919
// StartLogsWithWriter prints the logs and then attaches to the container with the given stdout and stderr
2020
func (serviceClient *client) StartLogsWithWriter(options targetselector.Options, follow bool, tail int64, wait bool, writer io.Writer) error {
21-
targetSelector := targetselector.NewTargetSelector(serviceClient.client)
2221
options = options.WithWait(wait).
2322
WithContainerFilter(selector.FilterTerminatingContainers)
2423
if wait {
2524
options = options.WithWaitingStrategy(targetselector.NewUntilNotWaitingStrategy(time.Second * 2))
2625
}
2726

28-
container, err := targetSelector.SelectSingleContainer(context.TODO(), options, serviceClient.log)
27+
container, err := targetselector.GlobalTargetSelector.SelectSingleContainer(context.TODO(), serviceClient.client, options, serviceClient.log)
2928
if err != nil {
3029
return err
3130
}

pkg/devspace/services/podreplace/persist.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ func persistPaths(podName string, replacePod *latest.ReplacePod, copiedPod *core
7272
Name: fmt.Sprintf("path-%d-init", i),
7373
Image: container.Image,
7474
Command: []string{"sh"},
75-
Args: []string{"-c", fmt.Sprintf("if [ ! -d \"/devspace-persistence/.devspace/\" ] && [ -d \"%s\" ]; then\n cp --verbose -a %s/. /devspace-persistence/ && mkdir /devspace-persistence/.devspace\n sleep 20\nfi", path.Clean(p.Path), path.Clean(p.Path))},
75+
Args: []string{"-c", fmt.Sprintf("if [ ! -d \"/devspace-persistence/.devspace/\" ] && [ -d \"%s\" ]; then\n echo 'DevSpace is initializing the sync volume...'\n cp -a %s/. /devspace-persistence/ && mkdir /devspace-persistence/.devspace\nfi", path.Clean(p.Path), path.Clean(p.Path))},
7676
VolumeMounts: []corev1.VolumeMount{
7777
{
7878
Name: "devspace-persistence",

pkg/devspace/services/podreplace/replace.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -833,7 +833,7 @@ func findSingleReplacedPod(ctx context.Context, client kubectl.Client, replacePo
833833
WithSkipInitContainers(true)
834834

835835
// get container
836-
selected, err := targetselector.NewTargetSelector(client).SelectSingleContainer(ctx, targetOptions, log)
836+
selected, err := targetselector.GlobalTargetSelector.SelectSingleContainer(ctx, client, targetOptions, log)
837837
if err != nil {
838838
return nil, err
839839
}
@@ -918,7 +918,7 @@ func findSingleReplaceablePodParent(ctx context.Context, client kubectl.Client,
918918
WithWaitingStrategy(targetselector.NewUntilNotTerminatingStrategy(time.Second * 2)).
919919
WithSkipInitContainers(true)
920920

921-
container, err := targetselector.NewTargetSelector(client).SelectSingleContainer(ctx, targetOptions, log)
921+
container, err := targetselector.GlobalTargetSelector.SelectSingleContainer(ctx, client, targetOptions, log)
922922
if err != nil {
923923
return nil, nil, err
924924
}

pkg/devspace/services/port_forwarding.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ func (serviceClient *client) startForwarding(portForwarding *latest.PortForwardi
128128

129129
// start port forwarding
130130
log.Info("Port-Forwarding: Waiting for containers to start...")
131-
pod, err := targetselector.NewTargetSelector(serviceClient.client).SelectSinglePod(context.TODO(), options, log)
131+
pod, err := targetselector.GlobalTargetSelector.SelectSinglePod(context.TODO(), serviceClient.client, options, log)
132132
if err != nil {
133133
return errors.Errorf("%s: %s", message.SelectorErrorPod, err.Error())
134134
} else if pod == nil {

pkg/devspace/services/reverse_port_forwarding.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ func (serviceClient *client) startReversePortForwarding(portForwarding *latest.P
3939
WithSkipInitContainers(true)
4040

4141
log.Info("Reverse-Port-Forwarding: Waiting for containers to start...")
42-
container, err := targetselector.NewTargetSelector(serviceClient.client).SelectSingleContainer(context.TODO(), options, log)
42+
container, err := targetselector.GlobalTargetSelector.SelectSingleContainer(context.TODO(), serviceClient.client, options, log)
4343
if err != nil {
4444
return errors.Errorf("%s: %s", message.SelectorErrorPod, err.Error())
4545
}

0 commit comments

Comments
 (0)