Skip to content

Commit

Permalink
Make deployment config kanister level resource (#507)
Browse files Browse the repository at this point in the history
* Add dep config support

* Deployment config tested

* Refactor test files acc to changed param.New def

* Correct openshift dep version
  • Loading branch information
viveksinghggits authored and mergify[bot] committed Jan 17, 2020
1 parent 8c86814 commit 83b60cc
Show file tree
Hide file tree
Showing 16 changed files with 209 additions and 50 deletions.
2 changes: 1 addition & 1 deletion docs/templates.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Template Parameters
*******************

Template Parameters are use to render templates in Blueprints. A ``TemplateParam``
Template Parameters are used to render templates in Blueprints. A ``TemplateParam``
struct is constructed based on fields in an ActionSet.

The TemplateParam struct is defined as:
Expand Down
2 changes: 2 additions & 0 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ require (
github.com/lib/pq v1.2.0
github.com/luci/go-render v0.0.0-20160219211803-9a04cc21af0f
github.com/mitchellh/mapstructure v0.0.0-20180220230111-00c29f56e238
github.com/openshift/api v0.0.0-20190402135445-d2f01e7b77a6
github.com/openshift/client-go v0.0.0-20190402163854-7cc0953bbbb7
github.com/pborman/uuid v1.2.0 // indirect
github.com/pkg/errors v0.8.0
github.com/renier/xmlrpc v0.0.0-20170708154548-ce4a1a486c03 // indirect
Expand Down
18 changes: 18 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ github.com/Azure/go-autorest/autorest/date v0.2.0 h1:yW+Zlqf26583pE43KhfnhFcdmSW
github.com/Azure/go-autorest/autorest/date v0.2.0/go.mod h1:vcORJHLJEh643/Ioh9+vPmf1Ij9AEBM5FuBIXLmIy0g=
github.com/Azure/go-autorest/autorest/mocks v0.1.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0=
github.com/Azure/go-autorest/autorest/mocks v0.2.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0=
github.com/Azure/go-autorest/autorest/mocks v0.3.0 h1:qJumjCaCudz+OcqE9/XtEPfvtOjOmKaui4EOpFI6zZc=
github.com/Azure/go-autorest/autorest/mocks v0.3.0/go.mod h1:a8FDP3DYzQ4RYfVAxAN3SVSiiO77gL2j2ronKKP0syM=
github.com/Azure/go-autorest/autorest/to v0.2.0/go.mod h1:GunWKJp1AEqgMaGLV+iocmRAJWqST1wQYhyyjXJ3SJc=
github.com/Azure/go-autorest/autorest/to v0.3.0 h1:zebkZaadz7+wIQYgC7GXaz3Wb28yKYfVkkBKwc38VF8=
Expand Down Expand Up @@ -74,6 +75,7 @@ github.com/aws/aws-sdk-go v1.26.8/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
github.com/census-instrumentation/opencensus-proto v0.2.0 h1:LzQXZOgg4CQfE6bFvXGM30YZL1WW/M337pXml+GrcZ4=
github.com/census-instrumentation/opencensus-proto v0.2.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927 h1:SKI1/fuSdodxmNNyVBR8d7X/HuLnRpvvFO0AgyQk764=
github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927/go.mod h1:h/aW8ynjgkuj+NQRlZcDbAbM1ORAbXjXX77sX7T289U=
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
github.com/davecgh/go-spew v0.0.0-20151105211317-5215b55f46b2/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
Expand Down Expand Up @@ -127,6 +129,7 @@ github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7a
github.com/gogo/protobuf v1.2.0 h1:xU6/SpYbvkNYiptHJYEDRseDLvYE7wSqhYYNy0QSUzI=
github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6 h1:ZgQEtGgCBiWRM39fZuwSd1LwSqqSW0hOdXCYYDX0R3I=
github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
Expand All @@ -137,6 +140,7 @@ github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5y
github.com/golang/protobuf v1.3.1 h1:YF8+flBXS5eO826T4nzqPrxfhQThhXl0YzfuUPu4SBg=
github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/google/go-cmp v0.2.0 h1:+dTQ8DZQJz0Mb/HjFlkptS1FeQ4cWSnN941F8aEG4SQ=
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
github.com/google/gofuzz v0.0.0-20161122191042-44d81051d367/go.mod h1:HP5RmnzzSNb993RKQDq4+1A4ia9nllfqcQFTQJedwGI=
github.com/google/gofuzz v1.0.0 h1:A8PeW59pxE9IoFRqBp37U+mSNaQoZ46F1f0f863XSXw=
Expand Down Expand Up @@ -186,6 +190,7 @@ github.com/kubernetes-csi/external-snapshotter v1.1.0 h1:godlw8BSOac5TMGH2rVPJrm
github.com/kubernetes-csi/external-snapshotter v1.1.0/go.mod h1:oYfxnsuh48V1UDYORl77YQxQbbdokNy7D73phuFpksY=
github.com/lib/pq v1.2.0 h1:LXpIM/LZ5xGFhOpXAQUIMM1HdyqzVYM13zNdjCEEcA0=
github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/luci/go-render v0.0.0-20160219211803-9a04cc21af0f h1:WVPqVsbUsrzAebTEgWRAZMdDOfkFx06iyhbIoyMgtkE=
github.com/luci/go-render v0.0.0-20160219211803-9a04cc21af0f/go.mod h1:aS446i8akEg0DAtNKTVYpNpLPMc0SzsZ0RtGhjl0uFM=
github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
Expand All @@ -210,12 +215,22 @@ github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+W
github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
github.com/openshift/api v0.0.0-20190402135445-d2f01e7b77a6 h1:SYi9lNozXRC7vIHfNxGPkxV0jHywz9X5PooRAaC90nI=
github.com/openshift/api v0.0.0-20190402135445-d2f01e7b77a6/go.mod h1:dh9o4Fs58gpFXGSYfnVxGR9PnV53I8TW84pQaJDdGiY=
github.com/openshift/api v3.9.0+incompatible h1:fJ/KsefYuZAjmrr3+5U9yZIZbTOpVkDDLDLFresAeYs=
github.com/openshift/api v3.9.0+incompatible/go.mod h1:dh9o4Fs58gpFXGSYfnVxGR9PnV53I8TW84pQaJDdGiY=
github.com/openshift/client-go v0.0.0-20190402163854-7cc0953bbbb7 h1:YxC8399EDGhV1iOUd7y5cv6cgRBmtJmk3AsGMtZszu8=
github.com/openshift/client-go v0.0.0-20190402163854-7cc0953bbbb7/go.mod h1:6rzn+JTr7+WYS2E1TExP4gByoABxMznR6y2SnUIkmxk=
github.com/openshift/client-go v3.9.0+incompatible h1:13k3Ok0B7TA2hA3bQW2aFqn6y04JaJWdk7ITTyg+Ek0=
github.com/openshift/client-go v3.9.0+incompatible/go.mod h1:6rzn+JTr7+WYS2E1TExP4gByoABxMznR6y2SnUIkmxk=
github.com/openzipkin/zipkin-go v0.1.6/go.mod h1:QgAqvLzwWbR/WpD4A3cGpPtJrZXNIiJc5AZX7/PBEpw=
github.com/pborman/uuid v1.2.0 h1:J7Q5mO4ysT1dv8hyrUGHb9+ooztCXu1D8MY8DZYsu3g=
github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k=
github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY=
github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
github.com/prometheus/client_golang v0.9.3-0.20190127221311-3c4408c8b829/go.mod h1:p2iRAGwDERtqlqzRXnrOVns+ignqQo//hLXqYxZYVNs=
Expand Down Expand Up @@ -247,7 +262,9 @@ github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
github.com/stretchr/testify v0.0.0-20151208002404-e3a8ff8ce365/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/vmware/govmomi v0.21.1-0.20191008161538-40aebf13ba45 h1:zpQBW+l4uPQTfTOxedN5GEcSONhabbCf3X+5+P/H4Jk=
github.com/vmware/govmomi v0.21.1-0.20191008161538-40aebf13ba45/go.mod h1:zbnFoBQ9GIjs2RVETy8CNEpb+L+Lwkjs3XZUL0B3/m0=
github.com/vmware/vmw-guestinfo v0.0.0-20170707015358-25eff159a728/go.mod h1:x9oS4Wk2s2u4tS29nEaDLdzvuHdB19CvSGJjPgkZJNk=
go.opencensus.io v0.20.1 h1:pMEjRZ1M4ebWGikflH7nQpV6+Zr88KBMA2XJD3sbijw=
Expand Down Expand Up @@ -363,6 +380,7 @@ honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
k8s.io/api v0.0.0-20190708174958-539a33f6e817 h1:V6YPTc5fSnwv7EBjx6es9VyAki/6bqK4M3ECA6WwfBk=
k8s.io/api v0.0.0-20190708174958-539a33f6e817/go.mod h1:iuAfoD4hCxJ8Onx9kaTIt30j7jUFS00AXQi6QMi99vA=
k8s.io/api v0.17.1 h1:i46MidoDOE9tvQ0TTEYggf3ka/pziP1+tHI/GFVeJao=
k8s.io/apiextensions-apiserver v0.0.0-20190708181606-527eacf2d4b7 h1:iAZwiJOjeCxGicPs5bDPLNP9DVZHCQp91gKIeLBIKlk=
k8s.io/apiextensions-apiserver v0.0.0-20190708181606-527eacf2d4b7/go.mod h1:IxkesAMoaCRoLrPJdZNZUQp9NfZnzqaVzLhb2VEQzXE=
k8s.io/apimachinery v0.0.0-20190404173353-6a84e37a896d h1:Jmdtdt1ZnoGfWWIIik61Z7nKYgO3J+swQJtPYsP9wHA=
Expand Down
10 changes: 9 additions & 1 deletion pkg/controller/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ import (
"github.com/kanisterio/kanister/pkg/param"
"github.com/kanisterio/kanister/pkg/reconcile"
"github.com/kanisterio/kanister/pkg/validate"
osversioned "github.com/openshift/client-go/apps/clientset/versioned"
)

// Controller represents a controller object for kanister custom resources
Expand All @@ -58,6 +59,7 @@ type Controller struct {
crClient versioned.Interface
clientset kubernetes.Interface
dynClient dynamic.Interface
osClient osversioned.Interface
recorder record.EventRecorder
actionSetTombMap sync.Map
}
Expand Down Expand Up @@ -87,9 +89,15 @@ func (c *Controller) StartWatch(ctx context.Context, namespace string) error {
return errors.Wrap(err, "failed to get a k8s dynamic client")
}

osClient, err := osversioned.NewForConfig(c.config)
if err != nil {
return errors.Wrap(err, "failed to get a openshift client")
}

c.crClient = crClient
c.clientset = clientset
c.dynClient = dynClient
c.osClient = osClient
c.recorder = eventer.NewEventRecorder(c.clientset, "Kanister Controller")

for cr, o := range map[customresource.CustomResource]runtime.Object{
Expand Down Expand Up @@ -373,7 +381,7 @@ func (c *Controller) runAction(ctx context.Context, as *crv1alpha1.ActionSet, aI
if err != nil {
return errors.WithStack(err)
}
tp, err := param.New(ctx, c.clientset, c.dynClient, c.crClient, action)
tp, err := param.New(ctx, c.clientset, c.dynClient, c.crClient, c.osClient, action)
if err != nil {
return err
}
Expand Down
9 changes: 7 additions & 2 deletions pkg/function/data_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,13 @@ import (
"github.com/kanisterio/kanister/pkg/param"
"github.com/kanisterio/kanister/pkg/resource"
"github.com/kanisterio/kanister/pkg/testutil"
osversioned "github.com/openshift/client-go/apps/clientset/versioned"
)

type DataSuite struct {
cli kubernetes.Interface
crCli versioned.Interface
osCli osversioned.Interface
namespace string
profile *param.Profile
providerType objectstore.ProviderType
Expand All @@ -60,13 +62,16 @@ func (s *DataSuite) SetUpSuite(c *C) {
c.Assert(err, IsNil)
crCli, err := versioned.NewForConfig(config)
c.Assert(err, IsNil)
osCli, err := osversioned.NewForConfig(config)
c.Assert(err, IsNil)

// Make sure the CRD's exist.
err = resource.CreateCustomResources(context.Background(), config)
c.Assert(err, IsNil)

s.cli = cli
s.crCli = crCli
s.osCli = osCli

ns := testutil.NewTestNamespace()
ns.GenerateName = "kanister-datatest-"
Expand Down Expand Up @@ -342,7 +347,7 @@ func (s *DataSuite) getTemplateParamsAndPVCName(c *C, replicas int32) (*param.Te
},
}

tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, as)
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, s.osCli, as)
c.Assert(err, IsNil)
tp.Profile = s.profile

Expand Down Expand Up @@ -579,7 +584,7 @@ func (s *DataSuite) initPVCTemplateParams(c *C, pvc *v1.PersistentVolumeClaim, o
},
Options: options,
}
tp, err := param.New(context.Background(), s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, pvc), s.crCli, as)
tp, err := param.New(context.Background(), s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, pvc), s.crCli, s.osCli, as)
c.Assert(err, IsNil)
tp.Profile = s.profile
return tp
Expand Down
7 changes: 6 additions & 1 deletion pkg/function/e2e_volume_snapshot_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ import (
"github.com/kanisterio/kanister/pkg/param"
"github.com/kanisterio/kanister/pkg/resource"
"github.com/kanisterio/kanister/pkg/testutil"
osversioned "github.com/openshift/client-go/apps/clientset/versioned"
)

const (
Expand All @@ -48,6 +49,7 @@ const (
type VolumeSnapshotTestSuite struct {
cli kubernetes.Interface
crCli versioned.Interface
osCli osversioned.Interface
namespace string
tp *param.TemplateParams
}
Expand All @@ -61,13 +63,16 @@ func (s *VolumeSnapshotTestSuite) SetUpTest(c *C) {
c.Assert(err, IsNil)
crCli, err := versioned.NewForConfig(config)
c.Assert(err, IsNil)
osCli, err := osversioned.NewForConfig(config)
c.Assert(err, IsNil)

// Make sure the CRD's exist.
err = resource.CreateCustomResources(context.Background(), config)
c.Assert(err, IsNil)

s.cli = cli
s.crCli = crCli
s.osCli = osCli

ns := testutil.NewTestNamespace()

Expand Down Expand Up @@ -112,7 +117,7 @@ func (s *VolumeSnapshotTestSuite) SetUpTest(c *C) {
},
}

tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, as)
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, s.osCli, as)
c.Assert(err, IsNil)
s.tp = tp
}
Expand Down
9 changes: 7 additions & 2 deletions pkg/function/kube_exec_all_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,13 @@ import (
"github.com/kanisterio/kanister/pkg/param"
"github.com/kanisterio/kanister/pkg/resource"
"github.com/kanisterio/kanister/pkg/testutil"
osversioned "github.com/openshift/client-go/apps/clientset/versioned"
)

type KubeExecAllTest struct {
crCli versioned.Interface
cli kubernetes.Interface
osCli osversioned.Interface
namespace string
}

Expand All @@ -49,13 +51,16 @@ func (s *KubeExecAllTest) SetUpSuite(c *C) {
c.Assert(err, IsNil)
crCli, err := versioned.NewForConfig(config)
c.Assert(err, IsNil)
osCli, err := osversioned.NewForConfig(config)
c.Assert(err, IsNil)

// Make sure the CRD's exist.
err = resource.CreateCustomResources(context.Background(), config)
c.Assert(err, IsNil)

s.cli = cli
s.crCli = crCli
s.osCli = osCli

ns := &v1.Namespace{
ObjectMeta: metav1.ObjectMeta{
Expand Down Expand Up @@ -124,7 +129,7 @@ func (s *KubeExecAllTest) TestKubeExecAllDeployment(c *C) {
Namespace: s.namespace,
},
}
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, d), s.crCli, as)
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, d), s.crCli, s.osCli, as)
c.Assert(err, IsNil)

action := "echo"
Expand Down Expand Up @@ -158,7 +163,7 @@ func (s *KubeExecAllTest) TestKubeExecAllStatefulSet(c *C) {
Namespace: s.namespace,
},
}
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, as)
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, s.osCli, as)
c.Assert(err, IsNil)

action := "echo"
Expand Down
7 changes: 6 additions & 1 deletion pkg/function/kube_exec_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,13 @@ import (
"github.com/kanisterio/kanister/pkg/param"
"github.com/kanisterio/kanister/pkg/resource"
"github.com/kanisterio/kanister/pkg/testutil"
osversioned "github.com/openshift/client-go/apps/clientset/versioned"
)

type KubeExecTest struct {
cli kubernetes.Interface
crCli versioned.Interface
osCli osversioned.Interface
namespace string
}

Expand All @@ -50,13 +52,16 @@ func (s *KubeExecTest) SetUpSuite(c *C) {
c.Assert(err, IsNil)
crCli, err := versioned.NewForConfig(config)
c.Assert(err, IsNil)
osCli, err := osversioned.NewForConfig(config)
c.Assert(err, IsNil)

// Make sure the CRD's exist.
err = resource.CreateCustomResources(context.Background(), config)
c.Assert(err, IsNil)

s.cli = cli
s.crCli = crCli
s.osCli = osCli

ns := &v1.Namespace{
ObjectMeta: metav1.ObjectMeta{
Expand Down Expand Up @@ -153,7 +158,7 @@ func (s *KubeExecTest) TestKubeExec(c *C) {
Namespace: s.namespace,
},
}
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, as)
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, s.osCli, as)
c.Assert(err, IsNil)

action := "echo"
Expand Down
9 changes: 7 additions & 2 deletions pkg/function/scale_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,13 @@ import (
"github.com/kanisterio/kanister/pkg/param"
"github.com/kanisterio/kanister/pkg/resource"
"github.com/kanisterio/kanister/pkg/testutil"
osversioned "github.com/openshift/client-go/apps/clientset/versioned"
)

type ScaleSuite struct {
cli kubernetes.Interface
crCli versioned.Interface
osCli osversioned.Interface
namespace string
}

Expand All @@ -49,9 +51,12 @@ func (s *ScaleSuite) SetUpTest(c *C) {
c.Assert(err, IsNil)
crCli, err := versioned.NewForConfig(config)
c.Assert(err, IsNil)
osCli, err := osversioned.NewForConfig(config)
c.Assert(err, IsNil)

s.cli = cli
s.crCli = crCli
s.osCli = osCli

err = resource.CreateCustomResources(context.Background(), config)
c.Assert(err, IsNil)
Expand Down Expand Up @@ -156,7 +161,7 @@ func (s *ScaleSuite) TestScaleDeployment(c *C) {
},
}
for _, action := range []string{"scaleUp", "echoHello", "scaleDown"} {
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, d), s.crCli, as)
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, d), s.crCli, s.osCli, as)
c.Assert(err, IsNil)
bp := newScaleBlueprint(kind)
phases, err := kanister.GetPhases(*bp, action, kanister.DefaultVersion, *tp)
Expand Down Expand Up @@ -205,7 +210,7 @@ func (s *ScaleSuite) TestScaleStatefulSet(c *C) {
}

for _, action := range []string{"scaleUp", "echoHello", "scaleDown"} {
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, as)
tp, err := param.New(ctx, s.cli, fake.NewSimpleDynamicClient(k8sscheme.Scheme, ss), s.crCli, s.osCli, as)
c.Assert(err, IsNil)
bp := newScaleBlueprint(kind)
phases, err := kanister.GetPhases(*bp, action, kanister.DefaultVersion, *tp)
Expand Down
Loading

0 comments on commit 83b60cc

Please sign in to comment.