Skip to content

Commit

Permalink
Add a common interface between different Kubernetes Stack API version…
Browse files Browse the repository at this point in the history
…s and use it in kubernetes stack commands

* Add kubernetes Stack API v1beta2 client
* Upgrade v1beta1 client to remove generated code

Signed-off-by: Silvin Lubecki <[email protected]>
  • Loading branch information
silvin-lubecki committed Feb 26, 2018
1 parent 854aad8 commit 38df84c
Show file tree
Hide file tree
Showing 92 changed files with 7,934 additions and 1,170 deletions.
12 changes: 4 additions & 8 deletions cli/command/stack/kubernetes/cli.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import (

"github.com/docker/cli/cli/command"
"github.com/docker/cli/kubernetes"
composev1beta1 "github.com/docker/cli/kubernetes/client/clientset_generated/clientset/typed/compose/v1beta1"
"github.com/docker/docker/pkg/homedir"
"github.com/pkg/errors"
flag "github.com/spf13/pflag"
Expand Down Expand Up @@ -77,20 +76,17 @@ func (c *KubeCli) composeClient() (*Factory, error) {
return NewFactory(c.kubeNamespace, c.kubeConfig)
}

func (c *KubeCli) stacks() (composev1beta1.StackInterface, error) {
func (c *KubeCli) stacks() (stackClient, error) {
version, err := kubernetes.GetStackAPIVersion(c.clientSet)

if err != nil {
return nil, err
}

switch version {
case kubernetes.StackAPIV1Beta1:
clientSet, err := composev1beta1.NewForConfig(c.kubeConfig)
if err != nil {
return nil, err
}
return clientSet.Stacks(c.kubeNamespace), nil
return c.newStackV1Beta1()
case kubernetes.StackAPIV1Beta2:
return c.newStackV1Beta2()
default:
return nil, errors.Errorf("no supported Stack API version")
}
Expand Down
54 changes: 0 additions & 54 deletions cli/command/stack/kubernetes/collision.go

This file was deleted.

Loading

0 comments on commit 38df84c

Please sign in to comment.