Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
411e80f1
Commit
411e80f1
authored
Oct 07, 2018
by
Darren Shepherd
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Delete cloud-controller-manager
parent
f246050e
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
0 additions
and
1636 deletions
+0
-1636
BUILD
cmd/cloud-controller-manager/BUILD
+0
-44
OWNERS
cmd/cloud-controller-manager/OWNERS
+0
-19
BUILD
cmd/cloud-controller-manager/app/BUILD
+0
-56
BUILD
cmd/cloud-controller-manager/app/apis/config/BUILD
+0
-37
doc.go
cmd/cloud-controller-manager/app/apis/config/doc.go
+0
-20
register.go
cmd/cloud-controller-manager/app/apis/config/register.go
+0
-43
BUILD
cmd/cloud-controller-manager/app/apis/config/scheme/BUILD
+0
-29
scheme.go
...cloud-controller-manager/app/apis/config/scheme/scheme.go
+0
-44
types.go
cmd/cloud-controller-manager/app/apis/config/types.go
+0
-42
BUILD
cmd/cloud-controller-manager/app/apis/config/v1alpha1/BUILD
+0
-50
defaults.go
...d-controller-manager/app/apis/config/v1alpha1/defaults.go
+0
-48
defaults_test.go
...troller-manager/app/apis/config/v1alpha1/defaults_test.go
+0
-63
doc.go
cmd/cloud-controller-manager/app/apis/config/v1alpha1/doc.go
+0
-30
register.go
...d-controller-manager/app/apis/config/v1alpha1/register.go
+0
-53
types.go
...loud-controller-manager/app/apis/config/v1alpha1/types.go
+0
-39
zz_generated.conversion.go
...nager/app/apis/config/v1alpha1/zz_generated.conversion.go
+0
-86
zz_generated.deepcopy.go
...manager/app/apis/config/v1alpha1/zz_generated.deepcopy.go
+0
-54
zz_generated.defaults.go
...manager/app/apis/config/v1alpha1/zz_generated.defaults.go
+0
-42
zz_generated.deepcopy.go
...ntroller-manager/app/apis/config/zz_generated.deepcopy.go
+0
-54
BUILD
cmd/cloud-controller-manager/app/config/BUILD
+0
-31
config.go
cmd/cloud-controller-manager/app/config/config.go
+0
-81
controllermanager.go
cmd/cloud-controller-manager/app/controllermanager.go
+0
-0
core.go
cmd/cloud-controller-manager/app/core.go
+0
-83
BUILD
cmd/cloud-controller-manager/app/options/BUILD
+0
-65
options.go
cmd/cloud-controller-manager/app/options/options.go
+0
-0
options_test.go
cmd/cloud-controller-manager/app/options/options_test.go
+0
-253
BUILD
cmd/cloud-controller-manager/app/testing/BUILD
+0
-31
testserver.go
cmd/cloud-controller-manager/app/testing/testserver.go
+0
-182
controller-manager.go
cmd/cloud-controller-manager/controller-manager.go
+0
-54
main.go
cmd/hyperkube/main.go
+0
-3
No files found.
cmd/cloud-controller-manager/BUILD
deleted
100644 → 0
View file @
f246050e
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_binary",
"go_library",
)
load("//pkg/version:def.bzl", "version_x_defs")
go_binary(
name = "cloud-controller-manager",
embed = [":go_default_library"],
pure = "on",
x_defs = version_x_defs(),
)
go_library(
name = "go_default_library",
srcs = ["controller-manager.go"],
importpath = "k8s.io/kubernetes/cmd/cloud-controller-manager",
deps = [
"//cmd/cloud-controller-manager/app:go_default_library",
"//pkg/cloudprovider/providers:go_default_library",
"//pkg/util/prometheusclientgo:go_default_library",
"//pkg/version/prometheus:go_default_library",
"//staging/src/k8s.io/component-base/logs:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [
":package-srcs",
"//cmd/cloud-controller-manager/app:all-srcs",
],
tags = ["automanaged"],
)
cmd/cloud-controller-manager/OWNERS
deleted
100644 → 0
View file @
f246050e
# See the OWNERS docs at https://go.k8s.io/owners
approvers:
- thockin
- luxas
- wlan0
- andrewsykim
- sttts
reviewers:
- thockin
- luxas
- wlan0
- andrewsykim
- cheftako
- stewart-yu
- sttts
labels:
- sig/api-machinery
- sig/cloud-provider
cmd/cloud-controller-manager/app/BUILD
deleted
100644 → 0
View file @
f246050e
load("@io_bazel_rules_go//go:def.bzl", "go_library")
go_library(
name = "go_default_library",
srcs = [
"controllermanager.go",
"core.go",
],
importpath = "k8s.io/kubernetes/cmd/cloud-controller-manager/app",
visibility = ["//visibility:public"],
deps = [
"//cmd/cloud-controller-manager/app/config:go_default_library",
"//cmd/cloud-controller-manager/app/options:go_default_library",
"//cmd/controller-manager/app:go_default_library",
"//pkg/controller/cloud:go_default_library",
"//pkg/controller/route:go_default_library",
"//pkg/controller/service:go_default_library",
"//pkg/util/configz:go_default_library",
"//pkg/util/flag:go_default_library",
"//pkg/version:go_default_library",
"//pkg/version/verflag:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/server:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/server/healthz:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/term:go_default_library",
"//staging/src/k8s.io/client-go/tools/leaderelection:go_default_library",
"//staging/src/k8s.io/client-go/tools/leaderelection/resourcelock:go_default_library",
"//staging/src/k8s.io/cloud-provider:go_default_library",
"//staging/src/k8s.io/component-base/cli/flag:go_default_library",
"//staging/src/k8s.io/component-base/cli/globalflag:go_default_library",
"//vendor/github.com/spf13/cobra:go_default_library",
"//vendor/k8s.io/klog:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [
":package-srcs",
"//cmd/cloud-controller-manager/app/apis/config:all-srcs",
"//cmd/cloud-controller-manager/app/config:all-srcs",
"//cmd/cloud-controller-manager/app/options:all-srcs",
"//cmd/cloud-controller-manager/app/testing:all-srcs",
],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
cmd/cloud-controller-manager/app/apis/config/BUILD
deleted
100644 → 0
View file @
f246050e
load("@io_bazel_rules_go//go:def.bzl", "go_library")
go_library(
name = "go_default_library",
srcs = [
"doc.go",
"register.go",
"types.go",
"zz_generated.deepcopy.go",
],
importpath = "k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config",
visibility = ["//visibility:public"],
deps = [
"//pkg/controller/apis/config:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [
":package-srcs",
"//cmd/cloud-controller-manager/app/apis/config/scheme:all-srcs",
"//cmd/cloud-controller-manager/app/apis/config/v1alpha1:all-srcs",
],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
cmd/cloud-controller-manager/app/apis/config/doc.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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.
*/
// +k8s:deepcopy-gen=package
// +groupName=cloudcontrollermanager.config.k8s.io
package
config
// import "k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config"
cmd/cloud-controller-manager/app/apis/config/register.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
config
import
(
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)
// GroupName is the group name used in this package
const
GroupName
=
"cloudcontrollermanager.config.k8s.io"
// SchemeGroupVersion is group version used to register these objects
var
SchemeGroupVersion
=
schema
.
GroupVersion
{
Group
:
GroupName
,
Version
:
runtime
.
APIVersionInternal
}
var
(
// SchemeBuilder is the scheme builder with scheme init functions to run for this API package
SchemeBuilder
=
runtime
.
NewSchemeBuilder
(
addKnownTypes
)
// AddToScheme is a global function that registers this API group & version to a scheme
AddToScheme
=
SchemeBuilder
.
AddToScheme
)
// addKnownTypes registers known types to the given scheme
func
addKnownTypes
(
scheme
*
runtime
.
Scheme
)
error
{
scheme
.
AddKnownTypes
(
SchemeGroupVersion
,
&
CloudControllerManagerConfiguration
{},
)
return
nil
}
cmd/cloud-controller-manager/app/apis/config/scheme/BUILD
deleted
100644 → 0
View file @
f246050e
load("@io_bazel_rules_go//go:def.bzl", "go_library")
go_library(
name = "go_default_library",
srcs = ["scheme.go"],
importpath = "k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config/scheme",
visibility = ["//visibility:public"],
deps = [
"//cmd/cloud-controller-manager/app/apis/config:go_default_library",
"//cmd/cloud-controller-manager/app/apis/config/v1alpha1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/runtime/serializer:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/runtime:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
cmd/cloud-controller-manager/app/apis/config/scheme/scheme.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
scheme
import
(
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/serializer"
utilruntime
"k8s.io/apimachinery/pkg/util/runtime"
"k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config"
"k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config/v1alpha1"
)
var
(
// Scheme defines methods for serializing and deserializing API objects.
Scheme
=
runtime
.
NewScheme
()
// Codecs provides methods for retrieving codecs and serializers for specific
// versions and content types.
Codecs
=
serializer
.
NewCodecFactory
(
Scheme
)
)
func
init
()
{
AddToScheme
(
Scheme
)
}
// AddToScheme adds the types of this group into the given scheme.
func
AddToScheme
(
scheme
*
runtime
.
Scheme
)
{
utilruntime
.
Must
(
config
.
AddToScheme
(
scheme
))
utilruntime
.
Must
(
v1alpha1
.
AddToScheme
(
scheme
))
utilruntime
.
Must
(
scheme
.
SetVersionPriority
(
v1alpha1
.
SchemeGroupVersion
))
}
cmd/cloud-controller-manager/app/apis/config/types.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
config
import
(
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
kubectrlmgrconfig
"k8s.io/kubernetes/pkg/controller/apis/config"
)
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// CloudControllerManagerConfiguration contains elements describing cloud-controller manager.
type
CloudControllerManagerConfiguration
struct
{
metav1
.
TypeMeta
// Generic holds configuration for a generic controller-manager
Generic
kubectrlmgrconfig
.
GenericControllerManagerConfiguration
// KubeCloudSharedConfiguration holds configuration for shared related features
// both in cloud controller manager and kube-controller manager.
KubeCloudShared
kubectrlmgrconfig
.
KubeCloudSharedConfiguration
// ServiceControllerConfiguration holds configuration for ServiceController
// related features.
ServiceController
kubectrlmgrconfig
.
ServiceControllerConfiguration
// NodeStatusUpdateFrequency is the frequency at which the controller updates nodes' status
NodeStatusUpdateFrequency
metav1
.
Duration
}
cmd/cloud-controller-manager/app/apis/config/v1alpha1/BUILD
deleted
100644 → 0
View file @
f246050e
load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
go_library(
name = "go_default_library",
srcs = [
"defaults.go",
"doc.go",
"register.go",
"types.go",
"zz_generated.conversion.go",
"zz_generated.deepcopy.go",
"zz_generated.defaults.go",
],
importpath = "k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config/v1alpha1",
visibility = ["//visibility:public"],
deps = [
"//cmd/cloud-controller-manager/app/apis/config:go_default_library",
"//pkg/controller/apis/config/v1alpha1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/conversion:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
"//staging/src/k8s.io/kube-controller-manager/config/v1alpha1:go_default_library",
],
)
go_test(
name = "go_default_test",
srcs = ["defaults_test.go"],
embed = [":go_default_library"],
deps = [
"//staging/src/k8s.io/api/core/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
cmd/cloud-controller-manager/app/apis/config/v1alpha1/defaults.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
v1alpha1
import
(
"time"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
kubectrlmgrconfigv1alpha1
"k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1"
)
func
addDefaultingFuncs
(
scheme
*
runtime
.
Scheme
)
error
{
return
RegisterDefaults
(
scheme
)
}
func
SetDefaults_CloudControllerManagerConfiguration
(
obj
*
CloudControllerManagerConfiguration
)
{
zero
:=
metav1
.
Duration
{}
if
obj
.
NodeStatusUpdateFrequency
==
zero
{
obj
.
NodeStatusUpdateFrequency
=
metav1
.
Duration
{
Duration
:
5
*
time
.
Minute
}
}
// These defaults override the recommended defaults from the apimachineryconfigv1alpha1 package that are applied automatically
// These client-connection defaults are specific to the cloud-controller-manager
if
obj
.
Generic
.
ClientConnection
.
QPS
==
0
{
obj
.
Generic
.
ClientConnection
.
QPS
=
20
}
if
obj
.
Generic
.
ClientConnection
.
Burst
==
0
{
obj
.
Generic
.
ClientConnection
.
Burst
=
30
}
// Use the default RecommendedDefaultGenericControllerManagerConfiguration options
kubectrlmgrconfigv1alpha1
.
RecommendedDefaultGenericControllerManagerConfiguration
(
&
obj
.
Generic
)
}
cmd/cloud-controller-manager/app/apis/config/v1alpha1/defaults_test.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
v1alpha1
import
(
"encoding/json"
"reflect"
"testing"
"k8s.io/api/core/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
)
func
TestCloudControllerManagerDefaultsRoundTrip
(
t
*
testing
.
T
)
{
ks1
:=
&
CloudControllerManagerConfiguration
{}
SetDefaults_CloudControllerManagerConfiguration
(
ks1
)
cm
,
err
:=
convertObjToConfigMap
(
"CloudControllerManagerConfiguration"
,
ks1
)
if
err
!=
nil
{
t
.
Errorf
(
"unexpected ConvertObjToConfigMap error %v"
,
err
)
}
ks2
:=
&
CloudControllerManagerConfiguration
{}
if
err
=
json
.
Unmarshal
([]
byte
(
cm
.
Data
[
"CloudControllerManagerConfiguration"
]),
ks2
);
err
!=
nil
{
t
.
Errorf
(
"unexpected error unserializing cloud controller manager config %v"
,
err
)
}
if
!
reflect
.
DeepEqual
(
ks2
,
ks1
)
{
t
.
Errorf
(
"Expected:
\n
%#v
\n\n
Got:
\n
%#v"
,
ks1
,
ks2
)
}
}
// convertObjToConfigMap converts an object to a ConfigMap.
// This is specifically meant for ComponentConfigs.
func
convertObjToConfigMap
(
name
string
,
obj
runtime
.
Object
)
(
*
v1
.
ConfigMap
,
error
)
{
eJSONBytes
,
err
:=
json
.
Marshal
(
obj
)
if
err
!=
nil
{
return
nil
,
err
}
cm
:=
&
v1
.
ConfigMap
{
ObjectMeta
:
metav1
.
ObjectMeta
{
Name
:
name
,
},
Data
:
map
[
string
]
string
{
name
:
string
(
eJSONBytes
[
:
]),
},
}
return
cm
,
nil
}
cmd/cloud-controller-manager/app/apis/config/v1alpha1/doc.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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.
*/
// Note: The referenced generic ComponentConfig packages with conversions
// between the types (e.g. the external package) needs to be given as an
// input to conversion-gen for it to find the native conversation funcs to
// call.
// +k8s:deepcopy-gen=package
// +k8s:conversion-gen=k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config
// +k8s:conversion-gen=k8s.io/component-base/config/v1alpha1
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1
// +k8s:openapi-gen=true
// +k8s:defaulter-gen=TypeMeta
// +groupName=cloudcontrollermanager.config.k8s.io
package
v1alpha1
// import "k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config/v1alpha1"
cmd/cloud-controller-manager/app/apis/config/v1alpha1/register.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
v1alpha1
import
(
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)
// GroupName is the group name use in this package
const
GroupName
=
"cloudcontrollermanager.config.k8s.io"
// SchemeGroupVersion is group version used to register these objects
var
SchemeGroupVersion
=
schema
.
GroupVersion
{
Group
:
GroupName
,
Version
:
"v1alpha1"
}
var
(
// SchemeBuilder is the scheme builder with scheme init functions to run for this API package
SchemeBuilder
=
runtime
.
NewSchemeBuilder
(
addKnownTypes
)
// localSchemeBuilder ïs a pointer to SchemeBuilder instance. Using localSchemeBuilder
// defaulting and conversion init funcs are registered as well.
localSchemeBuilder
=
&
SchemeBuilder
// AddToScheme is a global function that registers this API group & version to a scheme
AddToScheme
=
localSchemeBuilder
.
AddToScheme
)
func
init
()
{
// We only register manually written functions here. The registration of the
// generated functions takes place in the generated files. The separation
// makes the code compile even when the generated files are missing.
localSchemeBuilder
.
Register
(
addDefaultingFuncs
)
}
// addKnownTypes registers known types to the given scheme
func
addKnownTypes
(
scheme
*
runtime
.
Scheme
)
error
{
scheme
.
AddKnownTypes
(
SchemeGroupVersion
,
&
CloudControllerManagerConfiguration
{},
)
return
nil
}
cmd/cloud-controller-manager/app/apis/config/v1alpha1/types.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
v1alpha1
import
(
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
kubectrlmgrconfigv1alpha1
"k8s.io/kube-controller-manager/config/v1alpha1"
)
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
type
CloudControllerManagerConfiguration
struct
{
metav1
.
TypeMeta
`json:",inline"`
// Generic holds configuration for a generic controller-manager
Generic
kubectrlmgrconfigv1alpha1
.
GenericControllerManagerConfiguration
// KubeCloudSharedConfiguration holds configuration for shared related features
// both in cloud controller manager and kube-controller manager.
KubeCloudShared
kubectrlmgrconfigv1alpha1
.
KubeCloudSharedConfiguration
// ServiceControllerConfiguration holds configuration for ServiceController
// related features.
ServiceController
kubectrlmgrconfigv1alpha1
.
ServiceControllerConfiguration
// NodeStatusUpdateFrequency is the frequency at which the controller updates nodes' status
NodeStatusUpdateFrequency
metav1
.
Duration
}
cmd/cloud-controller-manager/app/apis/config/v1alpha1/zz_generated.conversion.go
deleted
100644 → 0
View file @
f246050e
// +build !ignore_autogenerated
/*
Copyright The Kubernetes Authors.
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.
*/
// Code generated by conversion-gen. DO NOT EDIT.
package
v1alpha1
import
(
conversion
"k8s.io/apimachinery/pkg/conversion"
runtime
"k8s.io/apimachinery/pkg/runtime"
config
"k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config"
configv1alpha1
"k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1"
)
func
init
()
{
localSchemeBuilder
.
Register
(
RegisterConversions
)
}
// RegisterConversions adds conversion functions to the given scheme.
// Public to allow building arbitrary schemes.
func
RegisterConversions
(
s
*
runtime
.
Scheme
)
error
{
if
err
:=
s
.
AddGeneratedConversionFunc
((
*
CloudControllerManagerConfiguration
)(
nil
),
(
*
config
.
CloudControllerManagerConfiguration
)(
nil
),
func
(
a
,
b
interface
{},
scope
conversion
.
Scope
)
error
{
return
Convert_v1alpha1_CloudControllerManagerConfiguration_To_config_CloudControllerManagerConfiguration
(
a
.
(
*
CloudControllerManagerConfiguration
),
b
.
(
*
config
.
CloudControllerManagerConfiguration
),
scope
)
});
err
!=
nil
{
return
err
}
if
err
:=
s
.
AddGeneratedConversionFunc
((
*
config
.
CloudControllerManagerConfiguration
)(
nil
),
(
*
CloudControllerManagerConfiguration
)(
nil
),
func
(
a
,
b
interface
{},
scope
conversion
.
Scope
)
error
{
return
Convert_config_CloudControllerManagerConfiguration_To_v1alpha1_CloudControllerManagerConfiguration
(
a
.
(
*
config
.
CloudControllerManagerConfiguration
),
b
.
(
*
CloudControllerManagerConfiguration
),
scope
)
});
err
!=
nil
{
return
err
}
return
nil
}
func
autoConvert_v1alpha1_CloudControllerManagerConfiguration_To_config_CloudControllerManagerConfiguration
(
in
*
CloudControllerManagerConfiguration
,
out
*
config
.
CloudControllerManagerConfiguration
,
s
conversion
.
Scope
)
error
{
if
err
:=
configv1alpha1
.
Convert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration
(
&
in
.
Generic
,
&
out
.
Generic
,
s
);
err
!=
nil
{
return
err
}
if
err
:=
configv1alpha1
.
Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration
(
&
in
.
KubeCloudShared
,
&
out
.
KubeCloudShared
,
s
);
err
!=
nil
{
return
err
}
if
err
:=
configv1alpha1
.
Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration
(
&
in
.
ServiceController
,
&
out
.
ServiceController
,
s
);
err
!=
nil
{
return
err
}
out
.
NodeStatusUpdateFrequency
=
in
.
NodeStatusUpdateFrequency
return
nil
}
// Convert_v1alpha1_CloudControllerManagerConfiguration_To_config_CloudControllerManagerConfiguration is an autogenerated conversion function.
func
Convert_v1alpha1_CloudControllerManagerConfiguration_To_config_CloudControllerManagerConfiguration
(
in
*
CloudControllerManagerConfiguration
,
out
*
config
.
CloudControllerManagerConfiguration
,
s
conversion
.
Scope
)
error
{
return
autoConvert_v1alpha1_CloudControllerManagerConfiguration_To_config_CloudControllerManagerConfiguration
(
in
,
out
,
s
)
}
func
autoConvert_config_CloudControllerManagerConfiguration_To_v1alpha1_CloudControllerManagerConfiguration
(
in
*
config
.
CloudControllerManagerConfiguration
,
out
*
CloudControllerManagerConfiguration
,
s
conversion
.
Scope
)
error
{
if
err
:=
configv1alpha1
.
Convert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration
(
&
in
.
Generic
,
&
out
.
Generic
,
s
);
err
!=
nil
{
return
err
}
if
err
:=
configv1alpha1
.
Convert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration
(
&
in
.
KubeCloudShared
,
&
out
.
KubeCloudShared
,
s
);
err
!=
nil
{
return
err
}
if
err
:=
configv1alpha1
.
Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration
(
&
in
.
ServiceController
,
&
out
.
ServiceController
,
s
);
err
!=
nil
{
return
err
}
out
.
NodeStatusUpdateFrequency
=
in
.
NodeStatusUpdateFrequency
return
nil
}
// Convert_config_CloudControllerManagerConfiguration_To_v1alpha1_CloudControllerManagerConfiguration is an autogenerated conversion function.
func
Convert_config_CloudControllerManagerConfiguration_To_v1alpha1_CloudControllerManagerConfiguration
(
in
*
config
.
CloudControllerManagerConfiguration
,
out
*
CloudControllerManagerConfiguration
,
s
conversion
.
Scope
)
error
{
return
autoConvert_config_CloudControllerManagerConfiguration_To_v1alpha1_CloudControllerManagerConfiguration
(
in
,
out
,
s
)
}
cmd/cloud-controller-manager/app/apis/config/v1alpha1/zz_generated.deepcopy.go
deleted
100644 → 0
View file @
f246050e
// +build !ignore_autogenerated
/*
Copyright The Kubernetes Authors.
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.
*/
// Code generated by deepcopy-gen. DO NOT EDIT.
package
v1alpha1
import
(
runtime
"k8s.io/apimachinery/pkg/runtime"
)
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func
(
in
*
CloudControllerManagerConfiguration
)
DeepCopyInto
(
out
*
CloudControllerManagerConfiguration
)
{
*
out
=
*
in
out
.
TypeMeta
=
in
.
TypeMeta
in
.
Generic
.
DeepCopyInto
(
&
out
.
Generic
)
in
.
KubeCloudShared
.
DeepCopyInto
(
&
out
.
KubeCloudShared
)
out
.
ServiceController
=
in
.
ServiceController
out
.
NodeStatusUpdateFrequency
=
in
.
NodeStatusUpdateFrequency
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudControllerManagerConfiguration.
func
(
in
*
CloudControllerManagerConfiguration
)
DeepCopy
()
*
CloudControllerManagerConfiguration
{
if
in
==
nil
{
return
nil
}
out
:=
new
(
CloudControllerManagerConfiguration
)
in
.
DeepCopyInto
(
out
)
return
out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func
(
in
*
CloudControllerManagerConfiguration
)
DeepCopyObject
()
runtime
.
Object
{
if
c
:=
in
.
DeepCopy
();
c
!=
nil
{
return
c
}
return
nil
}
cmd/cloud-controller-manager/app/apis/config/v1alpha1/zz_generated.defaults.go
deleted
100644 → 0
View file @
f246050e
// +build !ignore_autogenerated
/*
Copyright The Kubernetes Authors.
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.
*/
// Code generated by defaulter-gen. DO NOT EDIT.
package
v1alpha1
import
(
runtime
"k8s.io/apimachinery/pkg/runtime"
configv1alpha1
"k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1"
)
// RegisterDefaults adds defaulters functions to the given scheme.
// Public to allow building arbitrary schemes.
// All generated defaulters are covering - they call all nested defaulters.
func
RegisterDefaults
(
scheme
*
runtime
.
Scheme
)
error
{
scheme
.
AddTypeDefaultingFunc
(
&
CloudControllerManagerConfiguration
{},
func
(
obj
interface
{})
{
SetObjectDefaults_CloudControllerManagerConfiguration
(
obj
.
(
*
CloudControllerManagerConfiguration
))
})
return
nil
}
func
SetObjectDefaults_CloudControllerManagerConfiguration
(
in
*
CloudControllerManagerConfiguration
)
{
SetDefaults_CloudControllerManagerConfiguration
(
in
)
configv1alpha1
.
SetDefaults_KubeCloudSharedConfiguration
(
&
in
.
KubeCloudShared
)
configv1alpha1
.
SetDefaults_ServiceControllerConfiguration
(
&
in
.
ServiceController
)
}
cmd/cloud-controller-manager/app/apis/config/zz_generated.deepcopy.go
deleted
100644 → 0
View file @
f246050e
// +build !ignore_autogenerated
/*
Copyright The Kubernetes Authors.
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.
*/
// Code generated by deepcopy-gen. DO NOT EDIT.
package
config
import
(
runtime
"k8s.io/apimachinery/pkg/runtime"
)
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func
(
in
*
CloudControllerManagerConfiguration
)
DeepCopyInto
(
out
*
CloudControllerManagerConfiguration
)
{
*
out
=
*
in
out
.
TypeMeta
=
in
.
TypeMeta
in
.
Generic
.
DeepCopyInto
(
&
out
.
Generic
)
out
.
KubeCloudShared
=
in
.
KubeCloudShared
out
.
ServiceController
=
in
.
ServiceController
out
.
NodeStatusUpdateFrequency
=
in
.
NodeStatusUpdateFrequency
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudControllerManagerConfiguration.
func
(
in
*
CloudControllerManagerConfiguration
)
DeepCopy
()
*
CloudControllerManagerConfiguration
{
if
in
==
nil
{
return
nil
}
out
:=
new
(
CloudControllerManagerConfiguration
)
in
.
DeepCopyInto
(
out
)
return
out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func
(
in
*
CloudControllerManagerConfiguration
)
DeepCopyObject
()
runtime
.
Object
{
if
c
:=
in
.
DeepCopy
();
c
!=
nil
{
return
c
}
return
nil
}
cmd/cloud-controller-manager/app/config/BUILD
deleted
100644 → 0
View file @
f246050e
load("@io_bazel_rules_go//go:def.bzl", "go_library")
go_library(
name = "go_default_library",
srcs = ["config.go"],
importpath = "k8s.io/kubernetes/cmd/cloud-controller-manager/app/config",
visibility = ["//visibility:public"],
deps = [
"//cmd/cloud-controller-manager/app/apis/config:go_default_library",
"//pkg/controller:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/server:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
"//staging/src/k8s.io/client-go/rest:go_default_library",
"//staging/src/k8s.io/client-go/tools/record:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
cmd/cloud-controller-manager/app/config/config.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
app
import
(
apiserver
"k8s.io/apiserver/pkg/server"
"k8s.io/client-go/informers"
clientset
"k8s.io/client-go/kubernetes"
restclient
"k8s.io/client-go/rest"
"k8s.io/client-go/tools/record"
ccmconfig
"k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config"
"k8s.io/kubernetes/pkg/controller"
)
// Config is the main context object for the cloud controller manager.
type
Config
struct
{
ComponentConfig
ccmconfig
.
CloudControllerManagerConfiguration
SecureServing
*
apiserver
.
SecureServingInfo
// LoopbackClientConfig is a config for a privileged loopback connection
LoopbackClientConfig
*
restclient
.
Config
// TODO: remove deprecated insecure serving
InsecureServing
*
apiserver
.
DeprecatedInsecureServingInfo
Authentication
apiserver
.
AuthenticationInfo
Authorization
apiserver
.
AuthorizationInfo
// the general kube client
Client
*
clientset
.
Clientset
// the client only used for leader election
LeaderElectionClient
*
clientset
.
Clientset
// the rest config for the master
Kubeconfig
*
restclient
.
Config
// the event sink
EventRecorder
record
.
EventRecorder
// ClientBuilder will provide a client for this controller to use
ClientBuilder
controller
.
ControllerClientBuilder
// VersionedClient will provide a client for informers
VersionedClient
clientset
.
Interface
// SharedInformers gives access to informers for the controller.
SharedInformers
informers
.
SharedInformerFactory
}
type
completedConfig
struct
{
*
Config
}
// CompletedConfig same as Config, just to swap private object.
type
CompletedConfig
struct
{
// Embed a private pointer that cannot be instantiated outside of this package.
*
completedConfig
}
// Complete fills in any fields not set that are required to have valid data. It's mutating the receiver.
func
(
c
*
Config
)
Complete
()
*
CompletedConfig
{
cc
:=
completedConfig
{
c
}
apiserver
.
AuthorizeClientBearerToken
(
c
.
LoopbackClientConfig
,
&
c
.
Authentication
,
&
c
.
Authorization
)
return
&
CompletedConfig
{
&
cc
}
}
cmd/cloud-controller-manager/app/controllermanager.go
deleted
100644 → 0
View file @
f246050e
This diff is collapsed.
Click to expand it.
cmd/cloud-controller-manager/app/core.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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 app implements a server that runs a set of active
// components. This includes node controllers, service and
// route controller, and so on.
//
package
app
import
(
"k8s.io/cloud-provider"
"k8s.io/klog"
cloudcontrollerconfig
"k8s.io/kubernetes/cmd/cloud-controller-manager/app/config"
cloudcontrollers
"k8s.io/kubernetes/pkg/controller/cloud"
servicecontroller
"k8s.io/kubernetes/pkg/controller/service"
"net/http"
)
func
startCloudNodeController
(
ctx
*
cloudcontrollerconfig
.
CompletedConfig
,
cloud
cloudprovider
.
Interface
,
stopCh
<-
chan
struct
{})
(
http
.
Handler
,
bool
,
error
)
{
// Start the CloudNodeController
nodeController
:=
cloudcontrollers
.
NewCloudNodeController
(
ctx
.
SharedInformers
.
Core
()
.
V1
()
.
Nodes
(),
// cloud node controller uses existing cluster role from node-controller
ctx
.
ClientBuilder
.
ClientOrDie
(
"node-controller"
),
cloud
,
ctx
.
ComponentConfig
.
NodeStatusUpdateFrequency
.
Duration
)
go
nodeController
.
Run
(
stopCh
)
return
nil
,
true
,
nil
}
func
startCloudNodeLifecycleController
(
ctx
*
cloudcontrollerconfig
.
CompletedConfig
,
cloud
cloudprovider
.
Interface
,
stopCh
<-
chan
struct
{})
(
http
.
Handler
,
bool
,
error
)
{
// Start the cloudNodeLifecycleController
cloudNodeLifecycleController
,
err
:=
cloudcontrollers
.
NewCloudNodeLifecycleController
(
ctx
.
SharedInformers
.
Core
()
.
V1
()
.
Nodes
(),
// cloud node lifecycle controller uses existing cluster role from node-controller
ctx
.
ClientBuilder
.
ClientOrDie
(
"node-controller"
),
cloud
,
ctx
.
ComponentConfig
.
KubeCloudShared
.
NodeMonitorPeriod
.
Duration
,
)
if
err
!=
nil
{
klog
.
Warningf
(
"failed to start cloud node lifecycle controller: %s"
,
err
)
return
nil
,
false
,
nil
}
go
cloudNodeLifecycleController
.
Run
(
stopCh
)
return
nil
,
true
,
nil
}
func
startServiceController
(
ctx
*
cloudcontrollerconfig
.
CompletedConfig
,
cloud
cloudprovider
.
Interface
,
stopCh
<-
chan
struct
{})
(
http
.
Handler
,
bool
,
error
)
{
// Start the service controller
serviceController
,
err
:=
servicecontroller
.
New
(
cloud
,
ctx
.
ClientBuilder
.
ClientOrDie
(
"service-controller"
),
ctx
.
SharedInformers
.
Core
()
.
V1
()
.
Services
(),
ctx
.
SharedInformers
.
Core
()
.
V1
()
.
Nodes
(),
ctx
.
ComponentConfig
.
KubeCloudShared
.
ClusterName
,
)
if
err
!=
nil
{
// This error shouldn't fail. It lives like this as a legacy.
klog
.
Errorf
(
"Failed to start service controller: %v"
,
err
)
return
nil
,
false
,
nil
}
go
serviceController
.
Run
(
stopCh
,
int
(
ctx
.
ComponentConfig
.
ServiceController
.
ConcurrentServiceSyncs
))
return
nil
,
true
,
nil
}
cmd/cloud-controller-manager/app/options/BUILD
deleted
100644 → 0
View file @
f246050e
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_library",
"go_test",
)
go_library(
name = "go_default_library",
srcs = ["options.go"],
importpath = "k8s.io/kubernetes/cmd/cloud-controller-manager/app/options",
deps = [
"//cmd/cloud-controller-manager/app/apis/config:go_default_library",
"//cmd/cloud-controller-manager/app/apis/config/scheme:go_default_library",
"//cmd/cloud-controller-manager/app/apis/config/v1alpha1:go_default_library",
"//cmd/cloud-controller-manager/app/config:go_default_library",
"//cmd/controller-manager/app/options:go_default_library",
"//pkg/api/legacyscheme:go_default_library",
"//pkg/controller:go_default_library",
"//pkg/features:go_default_library",
"//pkg/master/ports:go_default_library",
"//staging/src/k8s.io/api/core/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/errors:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/server/options:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes/typed/core/v1:go_default_library",
"//staging/src/k8s.io/client-go/rest:go_default_library",
"//staging/src/k8s.io/client-go/tools/clientcmd:go_default_library",
"//staging/src/k8s.io/client-go/tools/record:go_default_library",
"//staging/src/k8s.io/component-base/cli/flag:go_default_library",
"//vendor/k8s.io/klog:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
)
go_test(
name = "go_default_test",
srcs = ["options_test.go"],
embed = [":go_default_library"],
deps = [
"//cmd/controller-manager/app/options:go_default_library",
"//pkg/controller/apis/config:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/diff:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/server/options:go_default_library",
"//staging/src/k8s.io/component-base/config:go_default_library",
"//vendor/github.com/spf13/pflag:go_default_library",
],
)
cmd/cloud-controller-manager/app/options/options.go
deleted
100644 → 0
View file @
f246050e
This diff is collapsed.
Click to expand it.
cmd/cloud-controller-manager/app/options/options_test.go
deleted
100644 → 0
View file @
f246050e
This diff is collapsed.
Click to expand it.
cmd/cloud-controller-manager/app/testing/BUILD
deleted
100644 → 0
View file @
f246050e
load("@io_bazel_rules_go//go:def.bzl", "go_library")
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
go_library(
name = "go_default_library",
srcs = ["testserver.go"],
importpath = "k8s.io/kubernetes/cmd/cloud-controller-manager/app/testing",
visibility = ["//visibility:public"],
deps = [
"//cmd/cloud-controller-manager/app:go_default_library",
"//cmd/cloud-controller-manager/app/config:go_default_library",
"//cmd/cloud-controller-manager/app/options:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
"//staging/src/k8s.io/client-go/rest:go_default_library",
"//vendor/github.com/spf13/pflag:go_default_library",
],
)
cmd/cloud-controller-manager/app/testing/testserver.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2018 The Kubernetes Authors.
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
testing
import
(
"fmt"
"io/ioutil"
"net"
"os"
"time"
"github.com/spf13/pflag"
"k8s.io/apimachinery/pkg/util/wait"
"k8s.io/client-go/kubernetes"
restclient
"k8s.io/client-go/rest"
"k8s.io/kubernetes/cmd/cloud-controller-manager/app"
cloudcontrollerconfig
"k8s.io/kubernetes/cmd/cloud-controller-manager/app/config"
"k8s.io/kubernetes/cmd/cloud-controller-manager/app/options"
)
// TearDownFunc is to be called to tear down a test server.
type
TearDownFunc
func
()
// TestServer return values supplied by kube-test-ApiServer
type
TestServer
struct
{
LoopbackClientConfig
*
restclient
.
Config
// Rest client config using the magic token
Options
*
options
.
CloudControllerManagerOptions
Config
*
cloudcontrollerconfig
.
Config
TearDownFn
TearDownFunc
// TearDown function
TmpDir
string
// Temp Dir used, by the apiserver
}
// Logger allows t.Testing and b.Testing to be passed to StartTestServer and StartTestServerOrDie
type
Logger
interface
{
Errorf
(
format
string
,
args
...
interface
{})
Fatalf
(
format
string
,
args
...
interface
{})
Logf
(
format
string
,
args
...
interface
{})
}
// StartTestServer starts a cloud-controller-manager. A rest client config and a tear-down func,
// and location of the tmpdir are returned.
//
// Note: we return a tear-down func instead of a stop channel because the later will leak temporary
// files that because Golang testing's call to os.Exit will not give a stop channel go routine
// enough time to remove temporary files.
func
StartTestServer
(
t
Logger
,
customFlags
[]
string
)
(
result
TestServer
,
err
error
)
{
stopCh
:=
make
(
chan
struct
{})
tearDown
:=
func
()
{
close
(
stopCh
)
if
len
(
result
.
TmpDir
)
!=
0
{
os
.
RemoveAll
(
result
.
TmpDir
)
}
}
defer
func
()
{
if
result
.
TearDownFn
==
nil
{
tearDown
()
}
}()
result
.
TmpDir
,
err
=
ioutil
.
TempDir
(
""
,
"cloud-controller-manager"
)
if
err
!=
nil
{
return
result
,
fmt
.
Errorf
(
"failed to create temp dir: %v"
,
err
)
}
fs
:=
pflag
.
NewFlagSet
(
"test"
,
pflag
.
PanicOnError
)
s
,
err
:=
options
.
NewCloudControllerManagerOptions
()
if
err
!=
nil
{
return
TestServer
{},
err
}
all
,
disabled
:=
app
.
KnownControllers
(),
app
.
ControllersDisabledByDefault
.
List
()
namedFlagSets
:=
s
.
Flags
(
all
,
disabled
)
for
_
,
f
:=
range
namedFlagSets
.
FlagSets
{
fs
.
AddFlagSet
(
f
)
}
fs
.
Parse
(
customFlags
)
if
s
.
SecureServing
.
BindPort
!=
0
{
s
.
SecureServing
.
Listener
,
s
.
SecureServing
.
BindPort
,
err
=
createListenerOnFreePort
()
if
err
!=
nil
{
return
result
,
fmt
.
Errorf
(
"failed to create listener: %v"
,
err
)
}
s
.
SecureServing
.
ServerCert
.
CertDirectory
=
result
.
TmpDir
t
.
Logf
(
"cloud-controller-manager will listen securely on port %d..."
,
s
.
SecureServing
.
BindPort
)
}
if
s
.
InsecureServing
.
BindPort
!=
0
{
s
.
InsecureServing
.
Listener
,
s
.
InsecureServing
.
BindPort
,
err
=
createListenerOnFreePort
()
if
err
!=
nil
{
return
result
,
fmt
.
Errorf
(
"failed to create listener: %v"
,
err
)
}
t
.
Logf
(
"cloud-controller-manager will listen insecurely on port %d..."
,
s
.
InsecureServing
.
BindPort
)
}
config
,
err
:=
s
.
Config
(
all
,
disabled
)
if
err
!=
nil
{
return
result
,
fmt
.
Errorf
(
"failed to create config from options: %v"
,
err
)
}
errCh
:=
make
(
chan
error
)
go
func
(
stopCh
<-
chan
struct
{})
{
if
err
:=
app
.
Run
(
config
.
Complete
(),
stopCh
);
err
!=
nil
{
errCh
<-
err
}
}(
stopCh
)
t
.
Logf
(
"Waiting for /healthz to be ok..."
)
client
,
err
:=
kubernetes
.
NewForConfig
(
config
.
LoopbackClientConfig
)
if
err
!=
nil
{
return
result
,
fmt
.
Errorf
(
"failed to create a client: %v"
,
err
)
}
err
=
wait
.
Poll
(
100
*
time
.
Millisecond
,
30
*
time
.
Second
,
func
()
(
bool
,
error
)
{
select
{
case
err
:=
<-
errCh
:
return
false
,
err
default
:
}
result
:=
client
.
CoreV1
()
.
RESTClient
()
.
Get
()
.
AbsPath
(
"/healthz"
)
.
Do
()
status
:=
0
result
.
StatusCode
(
&
status
)
if
status
==
200
{
return
true
,
nil
}
return
false
,
nil
})
if
err
!=
nil
{
return
result
,
fmt
.
Errorf
(
"failed to wait for /healthz to return ok: %v"
,
err
)
}
// from here the caller must call tearDown
result
.
LoopbackClientConfig
=
config
.
LoopbackClientConfig
result
.
Options
=
s
result
.
Config
=
config
result
.
TearDownFn
=
tearDown
return
result
,
nil
}
// StartTestServerOrDie calls StartTestServer t.Fatal if it does not succeed.
func
StartTestServerOrDie
(
t
Logger
,
flags
[]
string
)
*
TestServer
{
result
,
err
:=
StartTestServer
(
t
,
flags
)
if
err
==
nil
{
return
&
result
}
t
.
Fatalf
(
"failed to launch server: %v"
,
err
)
return
nil
}
func
createListenerOnFreePort
()
(
net
.
Listener
,
int
,
error
)
{
ln
,
err
:=
net
.
Listen
(
"tcp"
,
":0"
)
if
err
!=
nil
{
return
nil
,
0
,
err
}
// get port
tcpAddr
,
ok
:=
ln
.
Addr
()
.
(
*
net
.
TCPAddr
)
if
!
ok
{
ln
.
Close
()
return
nil
,
0
,
fmt
.
Errorf
(
"invalid listen address: %q"
,
ln
.
Addr
()
.
String
())
}
return
ln
,
tcpAddr
.
Port
,
nil
}
cmd/cloud-controller-manager/controller-manager.go
deleted
100644 → 0
View file @
f246050e
/*
Copyright 2016 The Kubernetes Authors.
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.
*/
// The external controller manager is responsible for running controller loops that
// are cloud provider dependent. It uses the API to listen to new events on resources.
package
main
import
(
"fmt"
"math/rand"
"os"
"time"
"k8s.io/component-base/logs"
"k8s.io/kubernetes/cmd/cloud-controller-manager/app"
// NOTE: Importing all in-tree cloud-providers is not required when
// implementing an out-of-tree cloud-provider.
_
"k8s.io/kubernetes/pkg/cloudprovider/providers"
_
"k8s.io/kubernetes/pkg/util/prometheusclientgo"
// load all the prometheus client-go plugins
_
"k8s.io/kubernetes/pkg/version/prometheus"
// for version metric registration
)
func
main
()
{
rand
.
Seed
(
time
.
Now
()
.
UnixNano
())
command
:=
app
.
NewCloudControllerManagerCommand
()
// TODO: once we switch everything over to Cobra commands, we can go back to calling
// utilflag.InitFlags() (by removing its pflag.Parse() call). For now, we have to set the
// normalize func and add the go flag set by hand.
// utilflag.InitFlags()
logs
.
InitLogs
()
defer
logs
.
FlushLogs
()
if
err
:=
command
.
Execute
();
err
!=
nil
{
fmt
.
Fprintf
(
os
.
Stderr
,
"error: %v
\n
"
,
err
)
os
.
Exit
(
1
)
}
}
cmd/hyperkube/main.go
View file @
411e80f1
...
@@ -35,7 +35,6 @@ import (
...
@@ -35,7 +35,6 @@ import (
"k8s.io/apiserver/pkg/server"
"k8s.io/apiserver/pkg/server"
cliflag
"k8s.io/component-base/cli/flag"
cliflag
"k8s.io/component-base/cli/flag"
"k8s.io/component-base/logs"
"k8s.io/component-base/logs"
cloudcontrollermanager
"k8s.io/kubernetes/cmd/cloud-controller-manager/app"
kubeapiserver
"k8s.io/kubernetes/cmd/kube-apiserver/app"
kubeapiserver
"k8s.io/kubernetes/cmd/kube-apiserver/app"
kubecontrollermanager
"k8s.io/kubernetes/cmd/kube-controller-manager/app"
kubecontrollermanager
"k8s.io/kubernetes/cmd/kube-controller-manager/app"
kubeproxy
"k8s.io/kubernetes/cmd/kube-proxy/app"
kubeproxy
"k8s.io/kubernetes/cmd/kube-proxy/app"
...
@@ -113,7 +112,6 @@ func NewHyperKubeCommand(stopCh <-chan struct{}) (*cobra.Command, []func() *cobr
...
@@ -113,7 +112,6 @@ func NewHyperKubeCommand(stopCh <-chan struct{}) (*cobra.Command, []func() *cobr
}
}
kubectlCmd
:=
func
()
*
cobra
.
Command
{
return
kubectl
.
NewDefaultKubectlCommand
()
}
kubectlCmd
:=
func
()
*
cobra
.
Command
{
return
kubectl
.
NewDefaultKubectlCommand
()
}
kubelet
:=
func
()
*
cobra
.
Command
{
return
kubelet
.
NewKubeletCommand
(
stopCh
)
}
kubelet
:=
func
()
*
cobra
.
Command
{
return
kubelet
.
NewKubeletCommand
(
stopCh
)
}
cloudController
:=
func
()
*
cobra
.
Command
{
return
cloudcontrollermanager
.
NewCloudControllerManagerCommand
()
}
commandFns
:=
[]
func
()
*
cobra
.
Command
{
commandFns
:=
[]
func
()
*
cobra
.
Command
{
apiserver
,
apiserver
,
...
@@ -122,7 +120,6 @@ func NewHyperKubeCommand(stopCh <-chan struct{}) (*cobra.Command, []func() *cobr
...
@@ -122,7 +120,6 @@ func NewHyperKubeCommand(stopCh <-chan struct{}) (*cobra.Command, []func() *cobr
scheduler
,
scheduler
,
kubectlCmd
,
kubectlCmd
,
kubelet
,
kubelet
,
cloudController
,
}
}
makeSymlinksFlag
:=
false
makeSymlinksFlag
:=
false
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment