Skip to content

Commit d1901d6

Browse files
Merge pull request #285 from caseydavenport/client-go
Switch to client-go
2 parents 4f8e776 + b341c7e commit d1901d6

File tree

8 files changed

+127
-92
lines changed

8 files changed

+127
-92
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ test: ut
1414
## Use this to populate the vendor directory after checking out the repository.
1515
## To update upstream dependencies, delete the glide.lock file first.
1616
vendor:
17-
glide install -strip-vendor -strip-vcs --cache
17+
glide install -strip-vendor
1818

1919
.PHONY: ut
2020
## Run the UTs locally. This requires a local etcd to be running.

glide.lock

Lines changed: 43 additions & 53 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

glide.yaml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,4 @@ import:
2626
version: ^0.10.0
2727
- package: github.com/termie/go-shutil
2828
- package: github.com/mitchellh/go-ps
29-
- package: k8s.io/kubernetes
30-
subpackages:
31-
- pkg/api
32-
- pkg/api/v1
33-
- pkg/client/clientset_generated/release_1_4
34-
- pkg/client/unversioned/clientcmd
29+
- package: k8s.io/client-go

lib/backend/k8s/conversion.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,9 @@ import (
2727
"github.com/projectcalico/libcalico-go/lib/backend/model"
2828
cnet "github.com/projectcalico/libcalico-go/lib/net"
2929
"github.com/projectcalico/libcalico-go/lib/numorstring"
30-
k8sapi "k8s.io/kubernetes/pkg/api"
31-
"k8s.io/kubernetes/pkg/api/unversioned"
32-
"k8s.io/kubernetes/pkg/apis/extensions"
30+
"k8s.io/client-go/pkg/api/unversioned"
31+
k8sapi "k8s.io/client-go/pkg/api/v1"
32+
extensions "k8s.io/client-go/pkg/apis/extensions/v1beta1"
3333
)
3434

3535
var (
@@ -123,7 +123,7 @@ func (c converter) isCalicoPod(pod *k8sapi.Pod) bool {
123123
}
124124

125125
func (c converter) isHostNetworked(pod *k8sapi.Pod) bool {
126-
return pod.Spec.SecurityContext != nil && pod.Spec.SecurityContext.HostNetwork == true
126+
return pod.Spec.HostNetwork
127127
}
128128

129129
func (c converter) hasIPAddress(pod *k8sapi.Pod) bool {

lib/backend/k8s/conversion_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ import (
1919
. "github.com/onsi/gomega"
2020

2121
"github.com/projectcalico/libcalico-go/lib/backend/model"
22-
k8sapi "k8s.io/kubernetes/pkg/api"
23-
"k8s.io/kubernetes/pkg/api/unversioned"
24-
"k8s.io/kubernetes/pkg/apis/extensions"
25-
"k8s.io/kubernetes/pkg/util/intstr"
22+
"k8s.io/client-go/pkg/api/unversioned"
23+
k8sapi "k8s.io/client-go/pkg/api/v1"
24+
extensions "k8s.io/client-go/pkg/apis/extensions/v1beta1"
25+
"k8s.io/client-go/pkg/util/intstr"
2626
)
2727

2828
var _ = Describe("Test parsing strings", func() {

lib/backend/k8s/k8s.go

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,20 @@ package k8s
1616

1717
import (
1818
goerrors "errors"
19+
"time"
1920

2021
log "github.com/Sirupsen/logrus"
2122
"github.com/projectcalico/libcalico-go/lib/backend/api"
2223
"github.com/projectcalico/libcalico-go/lib/backend/model"
2324
"github.com/projectcalico/libcalico-go/lib/errors"
24-
k8sapi "k8s.io/kubernetes/pkg/api"
25-
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
26-
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
25+
"k8s.io/client-go/kubernetes"
26+
k8sapi "k8s.io/client-go/pkg/api/v1"
27+
extensions "k8s.io/client-go/pkg/apis/extensions/v1beta1"
28+
"k8s.io/client-go/tools/clientcmd"
2729
)
2830

2931
type KubeClient struct {
30-
clientSet *clientset.Clientset
32+
clientSet *kubernetes.Clientset
3133
converter converter
3234
}
3335

@@ -79,7 +81,7 @@ func NewKubeClient(kc *KubeConfig) (*KubeClient, error) {
7981
}
8082

8183
// Create the clientset
82-
cs, err := clientset.NewForConfig(config)
84+
cs, err := kubernetes.NewForConfig(config)
8385
if err != nil {
8486
return nil, err
8587
}
@@ -285,7 +287,12 @@ func (c *KubeClient) listPolicies(l model.PolicyListOptions) ([]*model.KVPair, e
285287
}
286288

287289
// Otherwise, list all NetworkPolicy objects in all Namespaces.
288-
networkPolicies, err := c.clientSet.NetworkPolicies("").List(k8sapi.ListOptions{})
290+
networkPolicies := extensions.NetworkPolicyList{}
291+
err := c.clientSet.Extensions().RESTClient().
292+
Get().
293+
Resource("networkpolicies").
294+
Timeout(10 * time.Second).
295+
Do().Into(&networkPolicies)
289296
if err != nil {
290297
return nil, err
291298
}
@@ -309,11 +316,19 @@ func (c *KubeClient) getPolicy(k model.PolicyKey) (*model.KVPair, error) {
309316
return nil, goerrors.New("Missing policy name")
310317
}
311318
namespace, policyName := c.converter.parsePolicyName(k.Name)
312-
networkPolicy, err := c.clientSet.NetworkPolicies(namespace).Get(policyName)
319+
320+
networkPolicy := extensions.NetworkPolicy{}
321+
err := c.clientSet.Extensions().RESTClient().
322+
Get().
323+
Resource("networkpolicies").
324+
Namespace(namespace).
325+
Name(policyName).
326+
Timeout(10 * time.Second).
327+
Do().Into(&networkPolicy)
313328
if err != nil {
314329
return nil, err
315330
}
316-
return c.converter.networkPolicyToPolicy(networkPolicy)
331+
return c.converter.networkPolicyToPolicy(&networkPolicy)
317332
}
318333

319334
func (c *KubeClient) getReadyStatus(k model.ReadyFlagKey) (*model.KVPair, error) {

0 commit comments

Comments
 (0)