Skip to content

Commit d5f2f1f

Browse files
committed
remove kubeconfig flag from catalog cmd
Signed-off-by: Per G. da Silva <[email protected]>
1 parent 0a4119e commit d5f2f1f

File tree

6 files changed

+22
-54
lines changed

6 files changed

+22
-54
lines changed

cmd/catalog/main.go

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,9 @@ import (
88
"os"
99
"time"
1010

11-
configv1client "github.com/openshift/client-go/config/clientset/versioned/typed/config/v1"
12-
log "github.com/sirupsen/logrus"
13-
utilclock "k8s.io/apimachinery/pkg/util/clock"
14-
k8sscheme "k8s.io/client-go/kubernetes/scheme"
15-
"k8s.io/client-go/tools/clientcmd"
11+
"sigs.k8s.io/controller-runtime/pkg/client/config"
1612

13+
configv1client "github.com/openshift/client-go/config/clientset/versioned/typed/config/v1"
1714
"github.com/operator-framework/operator-lifecycle-manager/pkg/api/client"
1815
"github.com/operator-framework/operator-lifecycle-manager/pkg/controller/operators/catalog"
1916
"github.com/operator-framework/operator-lifecycle-manager/pkg/controller/operators/catalogtemplate"
@@ -23,6 +20,9 @@ import (
2320
"github.com/operator-framework/operator-lifecycle-manager/pkg/lib/signals"
2421
"github.com/operator-framework/operator-lifecycle-manager/pkg/metrics"
2522
olmversion "github.com/operator-framework/operator-lifecycle-manager/pkg/version"
23+
log "github.com/sirupsen/logrus"
24+
utilclock "k8s.io/apimachinery/pkg/util/clock"
25+
k8sscheme "k8s.io/client-go/kubernetes/scheme"
2626
)
2727

2828
const (
@@ -37,9 +37,6 @@ const (
3737

3838
// config flags defined globally so that they appear on the test binary as well
3939
var (
40-
kubeConfigPath = flag.String(
41-
"kubeconfig", "", "absolute path to the kubeconfig file")
42-
4340
wakeupInterval = flag.Duration(
4441
"interval", defaultWakeupInterval, "wakeup interval")
4542

@@ -119,27 +116,27 @@ func main() {
119116
}()
120117

121118
// create a config client for operator status
122-
config, err := clientcmd.BuildConfigFromFlags("", *kubeConfigPath)
119+
kubeconfig, err := config.GetConfig()
123120
if err != nil {
124-
log.Fatalf("error configuring client: %s", err.Error())
121+
log.Fatalf("error getting kubeconfig: %s", err.Error())
125122
}
126-
configClient, err := configv1client.NewForConfig(config)
123+
configClient, err := configv1client.NewForConfig(kubeconfig)
127124
if err != nil {
128125
log.Fatalf("error configuring client: %s", err.Error())
129126
}
130-
opClient := operatorclient.NewClientFromConfig(*kubeConfigPath, logger)
131-
crClient, err := client.NewClient(*kubeConfigPath)
127+
opClient := operatorclient.NewClientFromConfig(kubeconfig)
128+
crClient, err := client.NewClient(kubeconfig)
132129
if err != nil {
133130
log.Fatalf("error configuring client: %s", err.Error())
134131
}
135132

136133
// Create a new instance of the operator.
137-
op, err := catalog.NewOperator(ctx, *kubeConfigPath, utilclock.RealClock{}, logger, *wakeupInterval, *configmapServerImage, *opmImage, *utilImage, *catalogNamespace, k8sscheme.Scheme, *installPlanTimeout, *bundleUnpackTimeout)
134+
op, err := catalog.NewOperator(ctx, kubeconfig, utilclock.RealClock{}, logger, *wakeupInterval, *configmapServerImage, *opmImage, *utilImage, *catalogNamespace, k8sscheme.Scheme, *installPlanTimeout, *bundleUnpackTimeout)
138135
if err != nil {
139136
log.Fatalf("error configuring catalog operator: %s", err.Error())
140137
}
141138

142-
opCatalogTemplate, err := catalogtemplate.NewOperator(ctx, *kubeConfigPath, logger, *wakeupInterval, *catalogNamespace)
139+
opCatalogTemplate, err := catalogtemplate.NewOperator(ctx, kubeconfig, logger, *wakeupInterval, *catalogNamespace)
143140
if err != nil {
144141
log.Fatalf("error configuring catalog template operator: %s", err.Error())
145142
}

pkg/api/client/client.go

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,6 @@ import (
66
)
77

88
// NewClient creates a client that can interact with OLM resources in k8s api
9-
func NewClient(kubeconfig string) (client versioned.Interface, err error) {
10-
var config *rest.Config
11-
config, err = getConfig(kubeconfig)
12-
if err != nil {
13-
return
14-
}
9+
func NewClient(config *rest.Config) (client versioned.Interface, err error) {
1510
return versioned.NewForConfig(config)
1611
}

pkg/controller/operators/catalog/operator.go

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ import (
1111
"sync"
1212
"time"
1313

14+
"k8s.io/client-go/rest"
15+
1416
errorwrap "github.com/pkg/errors"
1517
"github.com/sirupsen/logrus"
1618
"google.golang.org/grpc/connectivity"
@@ -36,7 +38,6 @@ import (
3638
"k8s.io/client-go/dynamic"
3739
"k8s.io/client-go/informers"
3840
"k8s.io/client-go/tools/cache"
39-
"k8s.io/client-go/tools/clientcmd"
4041
"k8s.io/client-go/tools/record"
4142
"k8s.io/client-go/util/retry"
4243
"k8s.io/client-go/util/workqueue"
@@ -121,12 +122,8 @@ type Operator struct {
121122
type CatalogSourceSyncFunc func(logger *logrus.Entry, in *v1alpha1.CatalogSource) (out *v1alpha1.CatalogSource, continueSync bool, syncError error)
122123

123124
// NewOperator creates a new Catalog Operator.
124-
func NewOperator(ctx context.Context, kubeconfigPath string, clock utilclock.Clock, logger *logrus.Logger, resync time.Duration, configmapRegistryImage, opmImage, utilImage string, operatorNamespace string, scheme *runtime.Scheme, installPlanTimeout time.Duration, bundleUnpackTimeout time.Duration) (*Operator, error) {
125+
func NewOperator(ctx context.Context, config *rest.Config, clock utilclock.Clock, logger *logrus.Logger, resync time.Duration, configmapRegistryImage, opmImage, utilImage string, operatorNamespace string, scheme *runtime.Scheme, installPlanTimeout time.Duration, bundleUnpackTimeout time.Duration) (*Operator, error) {
125126
resyncPeriod := queueinformer.ResyncWithJitter(resync, 0.2)
126-
config, err := clientcmd.BuildConfigFromFlags("", kubeconfigPath)
127-
if err != nil {
128-
return nil, err
129-
}
130127

131128
// Create a new client for OLM types (CRs)
132129
crClient, err := versioned.NewForConfig(config)

pkg/controller/operators/catalogtemplate/operator.go

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,14 @@ import (
66
"strings"
77
"time"
88

9+
"k8s.io/client-go/rest"
10+
911
"github.com/distribution/distribution/reference"
1012
"github.com/operator-framework/api/pkg/operators/v1alpha1"
1113
"github.com/sirupsen/logrus"
1214
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1315
"k8s.io/client-go/discovery"
1416
"k8s.io/client-go/dynamic"
15-
"k8s.io/client-go/tools/clientcmd"
1617
"k8s.io/client-go/util/workqueue"
1718

1819
"github.com/operator-framework/operator-lifecycle-manager/pkg/api/client/clientset/versioned"
@@ -43,14 +44,9 @@ type Operator struct {
4344
resyncPeriod func() time.Duration // period of time between resync
4445
}
4546

46-
func NewOperator(ctx context.Context, kubeconfigPath string, logger *logrus.Logger, resync time.Duration, operatorNamespace string) (*Operator, error) {
47+
func NewOperator(ctx context.Context, config *rest.Config, logger *logrus.Logger, resync time.Duration, operatorNamespace string) (*Operator, error) {
4748
resyncPeriod := queueinformer.ResyncWithJitter(resync, 0.2)
4849

49-
config, err := clientcmd.BuildConfigFromFlags("", kubeconfigPath)
50-
if err != nil {
51-
return nil, err
52-
}
53-
5450
// Create a new client for OLM types (CRs)
5551
crClient, err := versioned.NewForConfig(config)
5652
if err != nil {

pkg/lib/operatorclient/client.go

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
package operatorclient
33

44
import (
5-
"github.com/sirupsen/logrus"
65
appsv1 "k8s.io/api/apps/v1"
76
v1 "k8s.io/api/core/v1"
87
rbacv1 "k8s.io/api/rbac/v1"
@@ -12,7 +11,6 @@ import (
1211
"k8s.io/apimachinery/pkg/labels"
1312
"k8s.io/client-go/kubernetes"
1413
"k8s.io/client-go/rest"
15-
"k8s.io/client-go/tools/clientcmd"
1614
apiregistrationv1 "k8s.io/kube-aggregator/pkg/apis/apiregistration/v1"
1715
apiregistration "k8s.io/kube-aggregator/pkg/client/clientset_generated/clientset"
1816
)
@@ -146,23 +144,8 @@ type Client struct {
146144
regInterface apiregistration.Interface
147145
}
148146

149-
// NewClient creates a kubernetes client or bails out on on failures.
150-
func NewClientFromConfig(kubeconfig string, logger *logrus.Logger) ClientInterface {
151-
var config *rest.Config
152-
var err error
153-
154-
if kubeconfig != "" {
155-
logger.Infof("Loading kube client config from path %q", kubeconfig)
156-
config, err = clientcmd.BuildConfigFromFlags("", kubeconfig)
157-
} else {
158-
logger.Infof("Using in-cluster kube client config")
159-
config, err = rest.InClusterConfig()
160-
}
161-
162-
if err != nil {
163-
logger.Fatalf("Cannot load config for REST client: %v", err)
164-
}
165-
147+
// NewClientFromConfig creates a kubernetes client
148+
func NewClientFromConfig(config *rest.Config) ClientInterface {
166149
return &Client{kubernetes.NewForConfigOrDie(config), apiextensions.NewForConfigOrDie(config), apiregistration.NewForConfigOrDie(config)}
167150
}
168151

pkg/package-server/server/server.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ func (o *PackageServerOptions) Run(ctx context.Context) error {
205205
return fmt.Errorf("unable to construct lister client: %v", err)
206206
}
207207

208-
crClient, err := client.NewClient(o.Kubeconfig)
208+
crClient, err := client.NewClient(clientConfig)
209209
if err != nil {
210210
return err
211211
}

0 commit comments

Comments
 (0)