Moving adapters to their own packages

This commit is contained in:
Kris 2016-03-01 14:15:55 -08:00
parent 4c2d129bdb
commit 4d404ded1a
9 changed files with 99 additions and 20 deletions

View File

@ -23,9 +23,9 @@ import (
docker "github.com/fsouza/go-dockerclient" docker "github.com/fsouza/go-dockerclient"
"k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api"
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
"k8s.io/kubernetes/pkg/client/record" "k8s.io/kubernetes/pkg/client/record"
client "k8s.io/kubernetes/pkg/client/unversioned" client "k8s.io/kubernetes/pkg/client/unversioned"
clientset "k8s.io/kubernetes/pkg/client/unversioned/adapters/internalclientset"
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd" "k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
cadvisortest "k8s.io/kubernetes/pkg/kubelet/cadvisor/testing" cadvisortest "k8s.io/kubernetes/pkg/kubelet/cadvisor/testing"
"k8s.io/kubernetes/pkg/kubelet/cm" "k8s.io/kubernetes/pkg/kubelet/cm"

View File

@ -0,0 +1,37 @@
/*
Copyright 2015 The Kubernetes Authors All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package internalclientset
// These imports are the API groups the client will support.
import (
"fmt"
_ "k8s.io/kubernetes/pkg/api/install"
"k8s.io/kubernetes/pkg/apimachinery/registered"
_ "k8s.io/kubernetes/pkg/apis/authorization/install"
_ "k8s.io/kubernetes/pkg/apis/autoscaling/install"
_ "k8s.io/kubernetes/pkg/apis/batch/install"
_ "k8s.io/kubernetes/pkg/apis/componentconfig/install"
_ "k8s.io/kubernetes/pkg/apis/extensions/install"
_ "k8s.io/kubernetes/pkg/apis/metrics/install"
)
func init() {
if missingVersions := registered.ValidateEnvRequestedVersions(); len(missingVersions) != 0 {
panic(fmt.Sprintf("KUBE_API_VERSIONS contains versions that are not installed: %q.", missingVersions))
}
}

View File

@ -0,0 +1,37 @@
/*
Copyright 2015 The Kubernetes Authors All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package release_1_2
// These imports are the API groups the client will support.
import (
"fmt"
_ "k8s.io/kubernetes/pkg/api/install"
"k8s.io/kubernetes/pkg/apimachinery/registered"
_ "k8s.io/kubernetes/pkg/apis/authorization/install"
_ "k8s.io/kubernetes/pkg/apis/autoscaling/install"
_ "k8s.io/kubernetes/pkg/apis/batch/install"
_ "k8s.io/kubernetes/pkg/apis/componentconfig/install"
_ "k8s.io/kubernetes/pkg/apis/extensions/install"
_ "k8s.io/kubernetes/pkg/apis/metrics/install"
)
func init() {
if missingVersions := registered.ValidateEnvRequestedVersions(); len(missingVersions) != 0 {
panic(fmt.Sprintf("KUBE_API_VERSIONS contains versions that are not installed: %q.", missingVersions))
}
}

View File

@ -17,17 +17,18 @@ limitations under the License.
package internalclientset package internalclientset
import ( import (
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
"k8s.io/kubernetes/pkg/client/typed/discovery" "k8s.io/kubernetes/pkg/client/typed/discovery"
unversionedcore "k8s.io/kubernetes/pkg/client/typed/generated/core/unversioned" unversionedcore "k8s.io/kubernetes/pkg/client/typed/generated/core/unversioned"
unversionedextensions "k8s.io/kubernetes/pkg/client/typed/generated/extensions/unversioned" unversionedextensions "k8s.io/kubernetes/pkg/client/typed/generated/extensions/unversioned"
"k8s.io/kubernetes/pkg/client/unversioned" "k8s.io/kubernetes/pkg/client/unversioned"
) )
// FromUnversionedClient adapts a pkg/client/unversioned#Client to a Clientset. // FromUnversionedClient adapts a unversioned.Client to a internalclientset.Clientset.
// This function is temporary. We will remove it when everyone has moved to using // This function is temporary. We will remove it when everyone has moved to using
// Clientset. New code should NOT use this function. // Clientset. New code should NOT use this function.
func FromUnversionedClient(c *unversioned.Client) *Clientset { func FromUnversionedClient(c *unversioned.Client) *internalclientset.Clientset {
var clientset Clientset var clientset internalclientset.Clientset
if c != nil { if c != nil {
clientset.CoreClient = unversionedcore.New(c.RESTClient) clientset.CoreClient = unversionedcore.New(c.RESTClient)
} else { } else {

View File

@ -17,17 +17,18 @@ limitations under the License.
package release_1_2 package release_1_2
import ( import (
"k8s.io/kubernetes/pkg/client/clientset_generated/release_1_2"
"k8s.io/kubernetes/pkg/client/typed/discovery" "k8s.io/kubernetes/pkg/client/typed/discovery"
v1core "k8s.io/kubernetes/pkg/client/typed/generated/core/v1" v1core "k8s.io/kubernetes/pkg/client/typed/generated/core/v1"
v1beta1extensions "k8s.io/kubernetes/pkg/client/typed/generated/extensions/v1beta1" v1beta1extensions "k8s.io/kubernetes/pkg/client/typed/generated/extensions/v1beta1"
"k8s.io/kubernetes/pkg/client/unversioned" "k8s.io/kubernetes/pkg/client/unversioned"
) )
// FromUnversionedClient adapts a pkg/client/unversioned#Client to a Clientset. // FromUnversionedClient adapts a unversioned.Client to a release_1_2.Clientset.
// This function is temporary. We will remove it when everyone has moved to using // This function is temporary. We will remove it when everyone has moved to using
// Clientset. New code should NOT use this function. // Clientset. New code should NOT use this function.
func FromUnversionedClient(c *unversioned.Client) *Clientset { func FromUnversionedClient(c *unversioned.Client) *release_1_2.Clientset {
var clientset Clientset var clientset release_1_2.Clientset
if c != nil { if c != nil {
clientset.CoreClient = v1core.New(c.RESTClient) clientset.CoreClient = v1core.New(c.RESTClient)
} else { } else {

View File

@ -44,9 +44,9 @@ import (
"k8s.io/kubernetes/pkg/apis/batch" "k8s.io/kubernetes/pkg/apis/batch"
"k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/apis/metrics" "k8s.io/kubernetes/pkg/apis/metrics"
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
"k8s.io/kubernetes/pkg/client/restclient" "k8s.io/kubernetes/pkg/client/restclient"
client "k8s.io/kubernetes/pkg/client/unversioned" client "k8s.io/kubernetes/pkg/client/unversioned"
clientset "k8s.io/kubernetes/pkg/client/unversioned/adapters/internalclientset"
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd" "k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
"k8s.io/kubernetes/pkg/kubectl" "k8s.io/kubernetes/pkg/kubectl"
"k8s.io/kubernetes/pkg/kubectl/resource" "k8s.io/kubernetes/pkg/kubectl/resource"

View File

@ -38,6 +38,7 @@ import (
"k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/extensions"
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset" clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
client "k8s.io/kubernetes/pkg/client/unversioned" client "k8s.io/kubernetes/pkg/client/unversioned"
adapter "k8s.io/kubernetes/pkg/client/unversioned/adapters/internalclientset"
"k8s.io/kubernetes/pkg/fieldpath" "k8s.io/kubernetes/pkg/fieldpath"
"k8s.io/kubernetes/pkg/fields" "k8s.io/kubernetes/pkg/fields"
qosutil "k8s.io/kubernetes/pkg/kubelet/qos/util" qosutil "k8s.io/kubernetes/pkg/kubelet/qos/util"
@ -95,7 +96,7 @@ func describerMap(c *client.Client) map[unversioned.GroupKind]Describer {
extensions.Kind("HorizontalPodAutoscaler"): &HorizontalPodAutoscalerDescriber{c}, extensions.Kind("HorizontalPodAutoscaler"): &HorizontalPodAutoscalerDescriber{c},
autoscaling.Kind("HorizontalPodAutoscaler"): &HorizontalPodAutoscalerDescriber{c}, autoscaling.Kind("HorizontalPodAutoscaler"): &HorizontalPodAutoscalerDescriber{c},
extensions.Kind("DaemonSet"): &DaemonSetDescriber{c}, extensions.Kind("DaemonSet"): &DaemonSetDescriber{c},
extensions.Kind("Deployment"): &DeploymentDescriber{clientset.FromUnversionedClient(c)}, extensions.Kind("Deployment"): &DeploymentDescriber{adapter.FromUnversionedClient(c)},
extensions.Kind("Job"): &JobDescriber{c}, extensions.Kind("Job"): &JobDescriber{c},
batch.Kind("Job"): &JobDescriber{c}, batch.Kind("Job"): &JobDescriber{c},
extensions.Kind("Ingress"): &IngressDescriber{c}, extensions.Kind("Ingress"): &IngressDescriber{c},

View File

@ -26,6 +26,7 @@ import (
"k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/extensions"
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset" clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
client "k8s.io/kubernetes/pkg/client/unversioned" client "k8s.io/kubernetes/pkg/client/unversioned"
adapter "k8s.io/kubernetes/pkg/client/unversioned/adapters/internalclientset"
"k8s.io/kubernetes/pkg/kubectl" "k8s.io/kubernetes/pkg/kubectl"
"k8s.io/kubernetes/pkg/labels" "k8s.io/kubernetes/pkg/labels"
"k8s.io/kubernetes/pkg/util" "k8s.io/kubernetes/pkg/util"
@ -211,7 +212,7 @@ func testNewDeployment(f *Framework) {
ns := f.Namespace.Name ns := f.Namespace.Name
// TODO: remove unversionedClient when the refactoring is done. Currently some // TODO: remove unversionedClient when the refactoring is done. Currently some
// functions like verifyPod still expects a unversioned#Client. // functions like verifyPod still expects a unversioned#Client.
c := clientset.FromUnversionedClient(f.Client) c := adapter.FromUnversionedClient(f.Client)
deploymentName := "test-new-deployment" deploymentName := "test-new-deployment"
podLabels := map[string]string{"name": nginxImageName} podLabels := map[string]string{"name": nginxImageName}
@ -246,7 +247,7 @@ func testRollingUpdateDeployment(f *Framework) {
// TODO: remove unversionedClient when the refactoring is done. Currently some // TODO: remove unversionedClient when the refactoring is done. Currently some
// functions like verifyPod still expects a unversioned#Client. // functions like verifyPod still expects a unversioned#Client.
unversionedClient := f.Client unversionedClient := f.Client
c := clientset.FromUnversionedClient(unversionedClient) c := adapter.FromUnversionedClient(unversionedClient)
// Create nginx pods. // Create nginx pods.
deploymentPodLabels := map[string]string{"name": "sample-pod"} deploymentPodLabels := map[string]string{"name": "sample-pod"}
rsPodLabels := map[string]string{ rsPodLabels := map[string]string{
@ -296,7 +297,7 @@ func testRollingUpdateDeploymentEvents(f *Framework) {
// TODO: remove unversionedClient when the refactoring is done. Currently some // TODO: remove unversionedClient when the refactoring is done. Currently some
// functions like verifyPod still expects a unversioned#Client. // functions like verifyPod still expects a unversioned#Client.
unversionedClient := f.Client unversionedClient := f.Client
c := clientset.FromUnversionedClient(unversionedClient) c := adapter.FromUnversionedClient(unversionedClient)
// Create nginx pods. // Create nginx pods.
deploymentPodLabels := map[string]string{"name": "sample-pod-2"} deploymentPodLabels := map[string]string{"name": "sample-pod-2"}
rsPodLabels := map[string]string{ rsPodLabels := map[string]string{
@ -358,7 +359,7 @@ func testRecreateDeployment(f *Framework) {
// TODO: remove unversionedClient when the refactoring is done. Currently some // TODO: remove unversionedClient when the refactoring is done. Currently some
// functions like verifyPod still expects a unversioned#Client. // functions like verifyPod still expects a unversioned#Client.
unversionedClient := f.Client unversionedClient := f.Client
c := clientset.FromUnversionedClient(unversionedClient) c := adapter.FromUnversionedClient(unversionedClient)
// Create nginx pods. // Create nginx pods.
deploymentPodLabels := map[string]string{"name": "sample-pod-3"} deploymentPodLabels := map[string]string{"name": "sample-pod-3"}
rsPodLabels := map[string]string{ rsPodLabels := map[string]string{
@ -413,7 +414,7 @@ func testRecreateDeployment(f *Framework) {
func testDeploymentCleanUpPolicy(f *Framework) { func testDeploymentCleanUpPolicy(f *Framework) {
ns := f.Namespace.Name ns := f.Namespace.Name
unversionedClient := f.Client unversionedClient := f.Client
c := clientset.FromUnversionedClient(unversionedClient) c := adapter.FromUnversionedClient(unversionedClient)
// Create nginx pods. // Create nginx pods.
deploymentPodLabels := map[string]string{"name": "cleanup-pod"} deploymentPodLabels := map[string]string{"name": "cleanup-pod"}
rsPodLabels := map[string]string{ rsPodLabels := map[string]string{
@ -488,7 +489,7 @@ func testRolloverDeployment(f *Framework) {
// TODO: remove unversionedClient when the refactoring is done. Currently some // TODO: remove unversionedClient when the refactoring is done. Currently some
// functions like verifyPod still expects a unversioned#Client. // functions like verifyPod still expects a unversioned#Client.
unversionedClient := f.Client unversionedClient := f.Client
c := clientset.FromUnversionedClient(unversionedClient) c := adapter.FromUnversionedClient(unversionedClient)
podName := "rollover-pod" podName := "rollover-pod"
deploymentPodLabels := map[string]string{"name": podName} deploymentPodLabels := map[string]string{"name": podName}
rsPodLabels := map[string]string{ rsPodLabels := map[string]string{
@ -562,7 +563,7 @@ func testPausedDeployment(f *Framework) {
// TODO: remove unversionedClient when the refactoring is done. Currently some // TODO: remove unversionedClient when the refactoring is done. Currently some
// functions like verifyPod still expects a unversioned#Client. // functions like verifyPod still expects a unversioned#Client.
unversionedClient := f.Client unversionedClient := f.Client
c := clientset.FromUnversionedClient(unversionedClient) c := adapter.FromUnversionedClient(unversionedClient)
deploymentName := "test-paused-deployment" deploymentName := "test-paused-deployment"
podLabels := map[string]string{"name": nginxImageName} podLabels := map[string]string{"name": nginxImageName}
d := newDeployment(deploymentName, 1, podLabels, nginxImageName, nginxImage, extensions.RollingUpdateDeploymentStrategyType, nil) d := newDeployment(deploymentName, 1, podLabels, nginxImageName, nginxImage, extensions.RollingUpdateDeploymentStrategyType, nil)
@ -645,7 +646,7 @@ func testPausedDeployment(f *Framework) {
func testRollbackDeployment(f *Framework) { func testRollbackDeployment(f *Framework) {
ns := f.Namespace.Name ns := f.Namespace.Name
unversionedClient := f.Client unversionedClient := f.Client
c := clientset.FromUnversionedClient(unversionedClient) c := adapter.FromUnversionedClient(unversionedClient)
podName := "nginx" podName := "nginx"
deploymentPodLabels := map[string]string{"name": podName} deploymentPodLabels := map[string]string{"name": podName}
@ -733,7 +734,7 @@ func testRollbackDeployment(f *Framework) {
// TODO: When we finished reporting rollback status in deployment status, check the rollback status here in each case. // TODO: When we finished reporting rollback status in deployment status, check the rollback status here in each case.
func testRollbackDeploymentRSNoRevision(f *Framework) { func testRollbackDeploymentRSNoRevision(f *Framework) {
ns := f.Namespace.Name ns := f.Namespace.Name
c := clientset.FromUnversionedClient(f.Client) c := adapter.FromUnversionedClient(f.Client)
podName := "nginx" podName := "nginx"
deploymentPodLabels := map[string]string{"name": podName} deploymentPodLabels := map[string]string{"name": podName}
rsPodLabels := map[string]string{ rsPodLabels := map[string]string{
@ -870,7 +871,7 @@ func testDeploymentLabelAdopted(f *Framework) {
// TODO: remove unversionedClient when the refactoring is done. Currently some // TODO: remove unversionedClient when the refactoring is done. Currently some
// functions like verifyPod still expects a unversioned#Client. // functions like verifyPod still expects a unversioned#Client.
unversionedClient := f.Client unversionedClient := f.Client
c := clientset.FromUnversionedClient(unversionedClient) c := adapter.FromUnversionedClient(unversionedClient)
// Create nginx pods. // Create nginx pods.
podName := "nginx" podName := "nginx"
podLabels := map[string]string{"name": podName} podLabels := map[string]string{"name": podName}

View File

@ -28,6 +28,7 @@ import (
apierrs "k8s.io/kubernetes/pkg/api/errors" apierrs "k8s.io/kubernetes/pkg/api/errors"
"k8s.io/kubernetes/pkg/client/clientset_generated/release_1_2" "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_2"
client "k8s.io/kubernetes/pkg/client/unversioned" client "k8s.io/kubernetes/pkg/client/unversioned"
adapter "k8s.io/kubernetes/pkg/client/unversioned/adapters/release_1_2"
"k8s.io/kubernetes/pkg/fields" "k8s.io/kubernetes/pkg/fields"
"k8s.io/kubernetes/pkg/metrics" "k8s.io/kubernetes/pkg/metrics"
@ -118,7 +119,7 @@ func (f *Framework) beforeEach() {
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())
f.Client = c f.Client = c
f.Clientset_1_2 = release_1_2.FromUnversionedClient(c) f.Clientset_1_2 = adapter.FromUnversionedClient(c)
By("Building a namespace api object") By("Building a namespace api object")
namespace, err := f.CreateNamespace(f.BaseName, map[string]string{ namespace, err := f.CreateNamespace(f.BaseName, map[string]string{