diff --git a/cmd/kube-apiserver/app/plugins.go b/cmd/kube-apiserver/app/plugins.go index eea9ac0354b..3d8eba2d2da 100644 --- a/cmd/kube-apiserver/app/plugins.go +++ b/cmd/kube-apiserver/app/plugins.go @@ -21,13 +21,7 @@ package app // given binary target. import ( // Cloud providers - _ "k8s.io/kubernetes/pkg/cloudprovider/aws" - _ "k8s.io/kubernetes/pkg/cloudprovider/gce" - _ "k8s.io/kubernetes/pkg/cloudprovider/mesos" - _ "k8s.io/kubernetes/pkg/cloudprovider/openstack" - _ "k8s.io/kubernetes/pkg/cloudprovider/ovirt" - _ "k8s.io/kubernetes/pkg/cloudprovider/rackspace" - _ "k8s.io/kubernetes/pkg/cloudprovider/vagrant" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers" // Admission policies _ "k8s.io/kubernetes/plugin/pkg/admission/admit" diff --git a/cmd/kube-controller-manager/app/plugins.go b/cmd/kube-controller-manager/app/plugins.go index 5d41afab7dd..acea294ffc9 100644 --- a/cmd/kube-controller-manager/app/plugins.go +++ b/cmd/kube-controller-manager/app/plugins.go @@ -22,13 +22,7 @@ import ( // given binary target. //Cloud providers - _ "k8s.io/kubernetes/pkg/cloudprovider/aws" - _ "k8s.io/kubernetes/pkg/cloudprovider/gce" - _ "k8s.io/kubernetes/pkg/cloudprovider/mesos" - _ "k8s.io/kubernetes/pkg/cloudprovider/openstack" - _ "k8s.io/kubernetes/pkg/cloudprovider/ovirt" - _ "k8s.io/kubernetes/pkg/cloudprovider/rackspace" - _ "k8s.io/kubernetes/pkg/cloudprovider/vagrant" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers" // Volume plugins "k8s.io/kubernetes/pkg/volume" diff --git a/cmd/kubelet/app/plugins.go b/cmd/kubelet/app/plugins.go index c4c55cc6c5d..3ec65c215f3 100644 --- a/cmd/kubelet/app/plugins.go +++ b/cmd/kubelet/app/plugins.go @@ -37,13 +37,7 @@ import ( "k8s.io/kubernetes/pkg/volume/rbd" "k8s.io/kubernetes/pkg/volume/secret" //Cloud providers - _ "k8s.io/kubernetes/pkg/cloudprovider/aws" - _ "k8s.io/kubernetes/pkg/cloudprovider/gce" - _ "k8s.io/kubernetes/pkg/cloudprovider/mesos" - _ "k8s.io/kubernetes/pkg/cloudprovider/openstack" - _ "k8s.io/kubernetes/pkg/cloudprovider/ovirt" - _ "k8s.io/kubernetes/pkg/cloudprovider/rackspace" - _ "k8s.io/kubernetes/pkg/cloudprovider/vagrant" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers" ) // ProbeVolumePlugins collects all volume plugins into an easy to use list. diff --git a/contrib/mesos/pkg/controllermanager/controllermanager.go b/contrib/mesos/pkg/controllermanager/controllermanager.go index c72cadf7e97..f354430640d 100644 --- a/contrib/mesos/pkg/controllermanager/controllermanager.go +++ b/contrib/mesos/pkg/controllermanager/controllermanager.go @@ -28,7 +28,7 @@ import ( "k8s.io/kubernetes/pkg/client/clientcmd" clientcmdapi "k8s.io/kubernetes/pkg/client/clientcmd/api" "k8s.io/kubernetes/pkg/cloudprovider" - "k8s.io/kubernetes/pkg/cloudprovider/mesos" + "k8s.io/kubernetes/pkg/cloudprovider/providers/mesos" kendpoint "k8s.io/kubernetes/pkg/controller/endpoint" "k8s.io/kubernetes/pkg/controller/namespace" "k8s.io/kubernetes/pkg/controller/node" diff --git a/docs/devel/writing-a-getting-started-guide.md b/docs/devel/writing-a-getting-started-guide.md index 04d0d67f6a9..7441474abb0 100644 --- a/docs/devel/writing-a-getting-started-guide.md +++ b/docs/devel/writing-a-getting-started-guide.md @@ -82,7 +82,7 @@ Just file an issue or chat us on IRC and one of the committers will link to it f These guidelines say *what* to do. See the Rationale section for *why*. - the main reason to add a new development distro is to support a new IaaS provider (VM and - network management). This means implementing a new `pkg/cloudprovider/$IAAS_NAME`. + network management). This means implementing a new `pkg/cloudprovider/providers/$IAAS_NAME`. - Development distros should use Saltstack for Configuration Management. - development distros need to support automated cluster creation, deletion, upgrading, etc. This mean writing scripts in `cluster/$IAAS_NAME`. diff --git a/docs/getting-started-guides/scratch.md b/docs/getting-started-guides/scratch.md index 01e0055610a..935a0284874 100644 --- a/docs/getting-started-guides/scratch.md +++ b/docs/getting-started-guides/scratch.md @@ -669,7 +669,7 @@ Apiserver supports several cloud providers. - options for `--cloud-provider` flag are `aws`, `gce`, `mesos`, `openshift`, `ovirt`, `rackspace`, `vagrant`, or unset. - unset used for e.g. bare metal setups. -- support for new IaaS is added by contributing code [here](../../pkg/cloudprovider/) +- support for new IaaS is added by contributing code [here](../../pkg/cloudprovider/providers/) Some cloud providers require a config file. If so, you need to put config file into apiserver image or mount through hostPath. @@ -677,7 +677,7 @@ Some cloud providers require a config file. If so, you need to put config file i - Used by `aws`, `gce`, `mesos`, `openshift`, `ovirt` and `rackspace`. - You must put config file into apiserver image or mount through hostPath. - Cloud config file syntax is [Gcfg](https://code.google.com/p/gcfg/). -- AWS format defined by type [AWSCloudConfig](../../pkg/cloudprovider/aws/aws.go) +- AWS format defined by type [AWSCloudConfig](../../pkg/cloudprovider/providers/aws/aws.go) - There is a similar type in the corresponding file for other cloud providers. - GCE example: search for `gce.conf` in [this file](../../cluster/gce/configure-vm.sh) diff --git a/pkg/cloudprovider/aws/aws.go b/pkg/cloudprovider/providers/aws/aws.go similarity index 100% rename from pkg/cloudprovider/aws/aws.go rename to pkg/cloudprovider/providers/aws/aws.go diff --git a/pkg/cloudprovider/aws/aws_instancegroups.go b/pkg/cloudprovider/providers/aws/aws_instancegroups.go similarity index 100% rename from pkg/cloudprovider/aws/aws_instancegroups.go rename to pkg/cloudprovider/providers/aws/aws_instancegroups.go diff --git a/pkg/cloudprovider/aws/aws_routes.go b/pkg/cloudprovider/providers/aws/aws_routes.go similarity index 100% rename from pkg/cloudprovider/aws/aws_routes.go rename to pkg/cloudprovider/providers/aws/aws_routes.go diff --git a/pkg/cloudprovider/aws/aws_test.go b/pkg/cloudprovider/providers/aws/aws_test.go similarity index 100% rename from pkg/cloudprovider/aws/aws_test.go rename to pkg/cloudprovider/providers/aws/aws_test.go diff --git a/pkg/cloudprovider/fake/doc.go b/pkg/cloudprovider/providers/fake/doc.go similarity index 100% rename from pkg/cloudprovider/fake/doc.go rename to pkg/cloudprovider/providers/fake/doc.go diff --git a/pkg/cloudprovider/fake/fake.go b/pkg/cloudprovider/providers/fake/fake.go similarity index 100% rename from pkg/cloudprovider/fake/fake.go rename to pkg/cloudprovider/providers/fake/fake.go diff --git a/pkg/cloudprovider/gce/doc.go b/pkg/cloudprovider/providers/gce/doc.go similarity index 100% rename from pkg/cloudprovider/gce/doc.go rename to pkg/cloudprovider/providers/gce/doc.go diff --git a/pkg/cloudprovider/gce/gce.go b/pkg/cloudprovider/providers/gce/gce.go similarity index 100% rename from pkg/cloudprovider/gce/gce.go rename to pkg/cloudprovider/providers/gce/gce.go diff --git a/pkg/cloudprovider/gce/gce_test.go b/pkg/cloudprovider/providers/gce/gce_test.go similarity index 100% rename from pkg/cloudprovider/gce/gce_test.go rename to pkg/cloudprovider/providers/gce/gce_test.go diff --git a/pkg/cloudprovider/gce/token_source.go b/pkg/cloudprovider/providers/gce/token_source.go similarity index 100% rename from pkg/cloudprovider/gce/token_source.go rename to pkg/cloudprovider/providers/gce/token_source.go diff --git a/pkg/cloudprovider/mesos/client.go b/pkg/cloudprovider/providers/mesos/client.go similarity index 100% rename from pkg/cloudprovider/mesos/client.go rename to pkg/cloudprovider/providers/mesos/client.go diff --git a/pkg/cloudprovider/mesos/client_test.go b/pkg/cloudprovider/providers/mesos/client_test.go similarity index 100% rename from pkg/cloudprovider/mesos/client_test.go rename to pkg/cloudprovider/providers/mesos/client_test.go diff --git a/pkg/cloudprovider/mesos/config.go b/pkg/cloudprovider/providers/mesos/config.go similarity index 100% rename from pkg/cloudprovider/mesos/config.go rename to pkg/cloudprovider/providers/mesos/config.go diff --git a/pkg/cloudprovider/mesos/config_test.go b/pkg/cloudprovider/providers/mesos/config_test.go similarity index 100% rename from pkg/cloudprovider/mesos/config_test.go rename to pkg/cloudprovider/providers/mesos/config_test.go diff --git a/pkg/cloudprovider/mesos/mesos.go b/pkg/cloudprovider/providers/mesos/mesos.go similarity index 100% rename from pkg/cloudprovider/mesos/mesos.go rename to pkg/cloudprovider/providers/mesos/mesos.go diff --git a/pkg/cloudprovider/mesos/mesos_test.go b/pkg/cloudprovider/providers/mesos/mesos_test.go similarity index 100% rename from pkg/cloudprovider/mesos/mesos_test.go rename to pkg/cloudprovider/providers/mesos/mesos_test.go diff --git a/pkg/cloudprovider/mesos/plugins.go b/pkg/cloudprovider/providers/mesos/plugins.go similarity index 100% rename from pkg/cloudprovider/mesos/plugins.go rename to pkg/cloudprovider/providers/mesos/plugins.go diff --git a/pkg/cloudprovider/openstack/MAINTAINERS.md b/pkg/cloudprovider/providers/openstack/MAINTAINERS.md similarity index 63% rename from pkg/cloudprovider/openstack/MAINTAINERS.md rename to pkg/cloudprovider/providers/openstack/MAINTAINERS.md index 8fc3d180eb4..f71afec99fb 100644 --- a/pkg/cloudprovider/openstack/MAINTAINERS.md +++ b/pkg/cloudprovider/providers/openstack/MAINTAINERS.md @@ -3,4 +3,4 @@ * [Angus Lees](https://github.com/anguslees) -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/pkg/cloudprovider/openstack/MAINTAINERS.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/pkg/cloudprovider/providers/openstack/MAINTAINERS.md?pixel)]() diff --git a/pkg/cloudprovider/openstack/openstack.go b/pkg/cloudprovider/providers/openstack/openstack.go similarity index 100% rename from pkg/cloudprovider/openstack/openstack.go rename to pkg/cloudprovider/providers/openstack/openstack.go diff --git a/pkg/cloudprovider/openstack/openstack_test.go b/pkg/cloudprovider/providers/openstack/openstack_test.go similarity index 100% rename from pkg/cloudprovider/openstack/openstack_test.go rename to pkg/cloudprovider/providers/openstack/openstack_test.go diff --git a/pkg/cloudprovider/ovirt/ovirt.go b/pkg/cloudprovider/providers/ovirt/ovirt.go similarity index 100% rename from pkg/cloudprovider/ovirt/ovirt.go rename to pkg/cloudprovider/providers/ovirt/ovirt.go diff --git a/pkg/cloudprovider/ovirt/ovirt_test.go b/pkg/cloudprovider/providers/ovirt/ovirt_test.go similarity index 100% rename from pkg/cloudprovider/ovirt/ovirt_test.go rename to pkg/cloudprovider/providers/ovirt/ovirt_test.go diff --git a/pkg/cloudprovider/providers/providers.go b/pkg/cloudprovider/providers/providers.go new file mode 100644 index 00000000000..8670b441ccf --- /dev/null +++ b/pkg/cloudprovider/providers/providers.go @@ -0,0 +1,28 @@ +/* +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 cloudprovider + +import ( + // Cloud providers + _ "k8s.io/kubernetes/pkg/cloudprovider/providers/aws" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers/gce" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers/mesos" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers/openstack" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers/ovirt" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers/rackspace" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers/vagrant" +) diff --git a/pkg/cloudprovider/rackspace/MAINTAINERS.md b/pkg/cloudprovider/providers/rackspace/MAINTAINERS.md similarity index 63% rename from pkg/cloudprovider/rackspace/MAINTAINERS.md rename to pkg/cloudprovider/providers/rackspace/MAINTAINERS.md index 0834a56de9b..4c72c1a0a53 100644 --- a/pkg/cloudprovider/rackspace/MAINTAINERS.md +++ b/pkg/cloudprovider/providers/rackspace/MAINTAINERS.md @@ -3,4 +3,4 @@ * [Thom May](https://github.com/thommay) -[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/pkg/cloudprovider/rackspace/MAINTAINERS.md?pixel)]() +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/pkg/cloudprovider/providers/rackspace/MAINTAINERS.md?pixel)]() diff --git a/pkg/cloudprovider/rackspace/rackspace.go b/pkg/cloudprovider/providers/rackspace/rackspace.go similarity index 100% rename from pkg/cloudprovider/rackspace/rackspace.go rename to pkg/cloudprovider/providers/rackspace/rackspace.go diff --git a/pkg/cloudprovider/rackspace/rackspace_test.go b/pkg/cloudprovider/providers/rackspace/rackspace_test.go similarity index 100% rename from pkg/cloudprovider/rackspace/rackspace_test.go rename to pkg/cloudprovider/providers/rackspace/rackspace_test.go diff --git a/pkg/cloudprovider/vagrant/doc.go b/pkg/cloudprovider/providers/vagrant/doc.go similarity index 100% rename from pkg/cloudprovider/vagrant/doc.go rename to pkg/cloudprovider/providers/vagrant/doc.go diff --git a/pkg/cloudprovider/vagrant/vagrant.go b/pkg/cloudprovider/providers/vagrant/vagrant.go similarity index 100% rename from pkg/cloudprovider/vagrant/vagrant.go rename to pkg/cloudprovider/providers/vagrant/vagrant.go diff --git a/pkg/cloudprovider/vagrant/vagrant_test.go b/pkg/cloudprovider/providers/vagrant/vagrant_test.go similarity index 100% rename from pkg/cloudprovider/vagrant/vagrant_test.go rename to pkg/cloudprovider/providers/vagrant/vagrant_test.go diff --git a/pkg/controller/route/routecontroller_test.go b/pkg/controller/route/routecontroller_test.go index 18113639271..d09b6764eaf 100644 --- a/pkg/controller/route/routecontroller_test.go +++ b/pkg/controller/route/routecontroller_test.go @@ -23,7 +23,7 @@ import ( "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/cloudprovider" - "k8s.io/kubernetes/pkg/cloudprovider/fake" + "k8s.io/kubernetes/pkg/cloudprovider/providers/fake" ) func TestIsResponsibleForRoute(t *testing.T) { diff --git a/pkg/controller/service/servicecontroller_test.go b/pkg/controller/service/servicecontroller_test.go index d965229d820..28e55cd50ff 100644 --- a/pkg/controller/service/servicecontroller_test.go +++ b/pkg/controller/service/servicecontroller_test.go @@ -22,7 +22,7 @@ import ( "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/client/testclient" - fake_cloud "k8s.io/kubernetes/pkg/cloudprovider/fake" + fake_cloud "k8s.io/kubernetes/pkg/cloudprovider/providers/fake" "k8s.io/kubernetes/pkg/types" ) diff --git a/pkg/volume/aws_ebs/aws_ebs.go b/pkg/volume/aws_ebs/aws_ebs.go index b12d976633c..4027bf0c860 100644 --- a/pkg/volume/aws_ebs/aws_ebs.go +++ b/pkg/volume/aws_ebs/aws_ebs.go @@ -27,7 +27,7 @@ import ( "github.com/golang/glog" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/cloudprovider" - "k8s.io/kubernetes/pkg/cloudprovider/aws" + "k8s.io/kubernetes/pkg/cloudprovider/providers/aws" "k8s.io/kubernetes/pkg/types" "k8s.io/kubernetes/pkg/util" "k8s.io/kubernetes/pkg/util/exec" diff --git a/pkg/volume/gce_pd/gce_util.go b/pkg/volume/gce_pd/gce_util.go index b52ef3a8030..5487f202371 100644 --- a/pkg/volume/gce_pd/gce_util.go +++ b/pkg/volume/gce_pd/gce_util.go @@ -26,7 +26,7 @@ import ( "github.com/golang/glog" "k8s.io/kubernetes/pkg/cloudprovider" - "k8s.io/kubernetes/pkg/cloudprovider/gce" + "k8s.io/kubernetes/pkg/cloudprovider/providers/gce" "k8s.io/kubernetes/pkg/util" "k8s.io/kubernetes/pkg/util/exec" "k8s.io/kubernetes/pkg/util/mount" diff --git a/test/e2e/pd.go b/test/e2e/pd.go index dc28233e725..56517247bd9 100644 --- a/test/e2e/pd.go +++ b/test/e2e/pd.go @@ -29,7 +29,7 @@ import ( "k8s.io/kubernetes/pkg/api/latest" "k8s.io/kubernetes/pkg/api/resource" "k8s.io/kubernetes/pkg/client" - "k8s.io/kubernetes/pkg/cloudprovider/aws" + "k8s.io/kubernetes/pkg/cloudprovider/providers/aws" "k8s.io/kubernetes/pkg/fields" "k8s.io/kubernetes/pkg/labels" "k8s.io/kubernetes/pkg/util" diff --git a/test/e2e/resize_nodes.go b/test/e2e/resize_nodes.go index 9a5933bd683..a7d7b88124d 100644 --- a/test/e2e/resize_nodes.go +++ b/test/e2e/resize_nodes.go @@ -33,7 +33,7 @@ import ( . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" - "k8s.io/kubernetes/pkg/cloudprovider/aws" + "k8s.io/kubernetes/pkg/cloudprovider/providers/aws" ) const (