Skip to content

Commit

Permalink
Move randomPorts and errOut as PushParameters
Browse files Browse the repository at this point in the history
  • Loading branch information
feloy committed Jul 4, 2022
1 parent c9c3e78 commit 3e51559
Show file tree
Hide file tree
Showing 8 changed files with 16 additions and 31 deletions.
4 changes: 3 additions & 1 deletion pkg/dev/dev.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ func (o *DevClient) Start(
klog.V(4).Infoln("Creating new adapter")
adapter, err := adapters.NewComponentAdapter(
o.kubernetesClient, o.prefClient, o.portForwardClient,
devfileObj.GetMetadataName(), path, "app", devfileObj, platformContext, randomPorts, errOut)
devfileObj.GetMetadataName(), path, "app", devfileObj, platformContext)
if err != nil {
return err
}
Expand All @@ -73,6 +73,8 @@ func (o *DevClient) Start(
Debug: debug,
DevfileBuildCmd: buildCommand,
DevfileRunCmd: runCommand,
RandomPorts: randomPorts,
ErrOut: errOut,
}

klog.V(4).Infoln("Creating inner-loop resources for the component")
Expand Down
4 changes: 4 additions & 0 deletions pkg/devfile/adapters/common/types.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package common

import (
"io"

devfilev1 "github.com/devfile/api/v2/pkg/apis/workspaces/v1alpha2"
devfileParser "github.com/devfile/library/pkg/devfile/parser"

Expand Down Expand Up @@ -31,6 +33,8 @@ type PushParameters struct {
Debug bool // Runs the component in debug mode
DebugPort int // Port used for remote debugging
RunModeChanged bool // It determines if run mode is changed from run to debug or vice versa
RandomPorts bool // True to forward containers ports on local random ports
ErrOut io.Writer // Writer to output forwarded port information
}

// SyncParameters is a struct containing the parameters to be used when syncing a devfile component
Expand Down
13 changes: 3 additions & 10 deletions pkg/devfile/adapters/helper.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package adapters

import (
"errors"
"io"

devfileParser "github.com/devfile/library/pkg/devfile/parser"
"github.com/redhat-developer/odo/pkg/devfile/adapters/common"
Expand All @@ -22,8 +21,6 @@ func NewComponentAdapter(
appName string,
devObj devfileParser.DevfileObj,
platformContext interface{},
randomPorts bool,
errOut io.Writer,
) (common.ComponentAdapter, error) {

adapterContext := common.AdapterContext{
Expand All @@ -37,7 +34,7 @@ func NewComponentAdapter(
if !ok {
return nil, errors.New("error retrieving context for Kubernetes")
}
return createKubernetesAdapter(adapterContext, kubernetesClient, prefClient, portForwardClient, kc.Namespace, randomPorts, errOut)
return createKubernetesAdapter(adapterContext, kubernetesClient, prefClient, portForwardClient, kc.Namespace)

}

Expand All @@ -47,25 +44,21 @@ func createKubernetesAdapter(
prefClient preference.Client,
portForwardClient portForward.Client,
namespace string,
randomPorts bool,
errOut io.Writer,
) (common.ComponentAdapter, error) {
if namespace != "" {
kubernetesClient.SetNamespace(namespace)
}
return newKubernetesAdapter(adapterContext, kubernetesClient, prefClient, portForwardClient, randomPorts, errOut)
return newKubernetesAdapter(adapterContext, kubernetesClient, prefClient, portForwardClient)
}

func newKubernetesAdapter(
adapterContext common.AdapterContext,
client kclient.ClientInterface,
prefClient preference.Client,
portForwardClient portForward.Client,
randomPorts bool,
errOut io.Writer,
) (common.ComponentAdapter, error) {
// Feed the common metadata to the platform-specific adapter
kubernetesAdapter := kubernetes.New(adapterContext, client, prefClient, portForwardClient, randomPorts, errOut)
kubernetesAdapter := kubernetes.New(adapterContext, client, prefClient, portForwardClient)

return kubernetesAdapter, nil
}
3 changes: 1 addition & 2 deletions pkg/devfile/adapters/helper_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package adapters

import (
"os"
"reflect"
"testing"

Expand Down Expand Up @@ -50,7 +49,7 @@ func TestNewPlatformAdapter(t *testing.T) {
Devfile: devObj,
}
fkclient, _ := kclient.FakeNew()
adapter, err := newKubernetesAdapter(adapterContext, fkclient, nil, nil, false, os.Stdout)
adapter, err := newKubernetesAdapter(adapterContext, fkclient, nil, nil)
if err != nil {
t.Errorf("unexpected error: '%v'", err)
}
Expand Down
5 changes: 1 addition & 4 deletions pkg/devfile/adapters/kubernetes/adapter.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package kubernetes

import (
"fmt"
"io"

"github.com/redhat-developer/odo/pkg/kclient"
"github.com/redhat-developer/odo/pkg/portForward"
Expand All @@ -29,11 +28,9 @@ func New(
client kclient.ClientInterface,
prefClient preference.Client,
portForwardClient portForward.Client,
randomPorts bool,
errOut io.Writer,
) Adapter {

compAdapter := component.New(adapterContext, client, prefClient, portForwardClient, randomPorts, errOut)
compAdapter := component.New(adapterContext, client, prefClient, portForwardClient)

return Adapter{
componentAdapter: &compAdapter,
Expand Down
9 changes: 1 addition & 8 deletions pkg/devfile/adapters/kubernetes/component/adapter.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,17 +43,13 @@ func New(
kubeClient kclient.ClientInterface,
prefClient preference.Client,
portForwardClient portForward.Client,
randomPorts bool,
errOut io.Writer,
) Adapter {
return Adapter{
kubeClient: kubeClient,
prefClient: prefClient,
portForwardClient: portForwardClient,
AdapterContext: adapterContext,
logger: machineoutput.NewMachineEventLoggingClient(),
randomPorts: randomPorts,
errOut: errOut,
}
}

Expand Down Expand Up @@ -93,9 +89,6 @@ type Adapter struct {

common.AdapterContext
logger machineoutput.MachineEventLoggingClient

randomPorts bool
errOut io.Writer
}

var _ sync.SyncClient = (*Adapter)(nil)
Expand Down Expand Up @@ -387,7 +380,7 @@ func (a Adapter) Push(parameters common.PushParameters) (err error) {
a.portForwardClient.StopPortForwarding()
}

err = a.portForwardClient.StartPortForwarding(a.Devfile, a.ComponentName, a.randomPorts, a.errOut)
err = a.portForwardClient.StartPortForwarding(a.Devfile, a.ComponentName, parameters.RandomPorts, parameters.ErrOut)
if err != nil {
return fmt.Errorf("fail starting the port forwarding: %w", err)
}
Expand Down
7 changes: 3 additions & 4 deletions pkg/devfile/adapters/kubernetes/component/adapter_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package component
import (
"encoding/json"
"errors"
"os"
"reflect"
"testing"
"time"
Expand Down Expand Up @@ -136,7 +135,7 @@ func TestCreateOrUpdateComponent(t *testing.T) {
Name: testComponentName,
AppName: testAppName,
})
componentAdapter := New(adapterCtx, fkclient, nil, nil, false, os.Stdout)
componentAdapter := New(adapterCtx, fkclient, nil, nil)
_, err := componentAdapter.createOrUpdateComponent(tt.running, tt.envInfo, false, libdevfile.DevfileCommands{}, 0, nil)

// Checks for unexpected error cases
Expand Down Expand Up @@ -349,7 +348,7 @@ func TestDoesComponentExist(t *testing.T) {
})

// DoesComponentExist requires an already started component, so start it.
componentAdapter := New(adapterCtx, fkclient, nil, nil, false, os.Stdout)
componentAdapter := New(adapterCtx, fkclient, nil, nil)
_, err := componentAdapter.createOrUpdateComponent(false, tt.envInfo, false, libdevfile.DevfileCommands{}, 0, nil)

// Checks for unexpected error cases
Expand Down Expand Up @@ -445,7 +444,7 @@ func TestWaitAndGetComponentPod(t *testing.T) {
ctrl := gomock.NewController(t)
prefClient := preference.NewMockClient(ctrl)
prefClient.EXPECT().GetPushTimeout().Return(100 * time.Second)
componentAdapter := New(adapterCtx, fkclient, prefClient, nil, false, os.Stdout)
componentAdapter := New(adapterCtx, fkclient, prefClient, nil)
_, err := componentAdapter.getPod(nil, false)

// Checks for unexpected error cases
Expand Down
2 changes: 0 additions & 2 deletions pkg/odo/cli/dev/dev.go
Original file line number Diff line number Diff line change
Expand Up @@ -286,8 +286,6 @@ func (o *Handler) regenerateComponentAdapterFromWatchParams(parameters watch.Wat
parameters.ApplicationName,
devObj,
platformContext,
o.randomPorts,
o.errOut,
)
}

Expand Down

0 comments on commit 3e51559

Please sign in to comment.