Add glide.yaml and vendor deps
This commit is contained in:
parent
db918f12ad
commit
5b3d5e81bd
18880 changed files with 5166045 additions and 1 deletions
48
vendor/k8s.io/kubernetes/pkg/kubemark/BUILD
generated
vendored
Normal file
48
vendor/k8s.io/kubernetes/pkg/kubemark/BUILD
generated
vendored
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
licenses(["notice"])
|
||||
|
||||
load(
|
||||
"@io_bazel_rules_go//go:def.bzl",
|
||||
"go_binary",
|
||||
"go_library",
|
||||
"go_test",
|
||||
"cgo_library",
|
||||
)
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"hollow_kubelet.go",
|
||||
"hollow_proxy.go",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
deps = [
|
||||
"//cmd/kube-proxy/app:go_default_library",
|
||||
"//cmd/kube-proxy/app/options:go_default_library",
|
||||
"//cmd/kubelet/app:go_default_library",
|
||||
"//pkg/api:go_default_library",
|
||||
"//pkg/apis/componentconfig:go_default_library",
|
||||
"//pkg/apis/componentconfig/v1alpha1:go_default_library",
|
||||
"//pkg/client/clientset_generated/internalclientset:go_default_library",
|
||||
"//pkg/client/clientset_generated/release_1_5:go_default_library",
|
||||
"//pkg/client/record:go_default_library",
|
||||
"//pkg/kubelet:go_default_library",
|
||||
"//pkg/kubelet/cadvisor:go_default_library",
|
||||
"//pkg/kubelet/cm:go_default_library",
|
||||
"//pkg/kubelet/container/testing:go_default_library",
|
||||
"//pkg/kubelet/dockertools:go_default_library",
|
||||
"//pkg/kubelet/types:go_default_library",
|
||||
"//pkg/proxy/config:go_default_library",
|
||||
"//pkg/types:go_default_library",
|
||||
"//pkg/util:go_default_library",
|
||||
"//pkg/util/io:go_default_library",
|
||||
"//pkg/util/iptables:go_default_library",
|
||||
"//pkg/util/mount:go_default_library",
|
||||
"//pkg/util/oom:go_default_library",
|
||||
"//pkg/volume/empty_dir:go_default_library",
|
||||
"//pkg/volume/secret:go_default_library",
|
||||
"//test/utils:go_default_library",
|
||||
"//vendor:github.com/golang/glog",
|
||||
],
|
||||
)
|
||||
171
vendor/k8s.io/kubernetes/pkg/kubemark/hollow_kubelet.go
generated
vendored
Normal file
171
vendor/k8s.io/kubernetes/pkg/kubemark/hollow_kubelet.go
generated
vendored
Normal file
|
|
@ -0,0 +1,171 @@
|
|||
/*
|
||||
Copyright 2015 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 kubemark
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
kubeletapp "k8s.io/kubernetes/cmd/kubelet/app"
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/apis/componentconfig"
|
||||
"k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1"
|
||||
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_5"
|
||||
"k8s.io/kubernetes/pkg/kubelet"
|
||||
"k8s.io/kubernetes/pkg/kubelet/cadvisor"
|
||||
"k8s.io/kubernetes/pkg/kubelet/cm"
|
||||
containertest "k8s.io/kubernetes/pkg/kubelet/container/testing"
|
||||
"k8s.io/kubernetes/pkg/kubelet/dockertools"
|
||||
kubetypes "k8s.io/kubernetes/pkg/kubelet/types"
|
||||
kubeio "k8s.io/kubernetes/pkg/util/io"
|
||||
"k8s.io/kubernetes/pkg/util/mount"
|
||||
"k8s.io/kubernetes/pkg/util/oom"
|
||||
"k8s.io/kubernetes/pkg/volume/empty_dir"
|
||||
"k8s.io/kubernetes/pkg/volume/secret"
|
||||
"k8s.io/kubernetes/test/utils"
|
||||
|
||||
"github.com/golang/glog"
|
||||
)
|
||||
|
||||
type HollowKubelet struct {
|
||||
KubeletConfiguration *componentconfig.KubeletConfiguration
|
||||
KubeletDeps *kubelet.KubeletDeps
|
||||
}
|
||||
|
||||
func NewHollowKubelet(
|
||||
nodeName string,
|
||||
client *clientset.Clientset,
|
||||
cadvisorInterface cadvisor.Interface,
|
||||
dockerClient dockertools.DockerInterface,
|
||||
kubeletPort, kubeletReadOnlyPort int,
|
||||
containerManager cm.ContainerManager,
|
||||
maxPods int, podsPerCore int,
|
||||
) *HollowKubelet {
|
||||
// -----------------
|
||||
// Static config
|
||||
// -----------------
|
||||
c := GetHollowKubeletConfig(nodeName, kubeletPort, kubeletReadOnlyPort, maxPods, podsPerCore)
|
||||
|
||||
// -----------------
|
||||
// Injected objects
|
||||
// -----------------
|
||||
volumePlugins := empty_dir.ProbeVolumePlugins()
|
||||
volumePlugins = append(volumePlugins, secret.ProbeVolumePlugins()...)
|
||||
d := &kubelet.KubeletDeps{
|
||||
KubeClient: client,
|
||||
DockerClient: dockerClient,
|
||||
CAdvisorInterface: cadvisorInterface,
|
||||
Cloud: nil,
|
||||
OSInterface: &containertest.FakeOS{},
|
||||
ContainerManager: containerManager,
|
||||
VolumePlugins: volumePlugins,
|
||||
TLSOptions: nil,
|
||||
OOMAdjuster: oom.NewFakeOOMAdjuster(),
|
||||
Writer: &kubeio.StdWriter{},
|
||||
Mounter: mount.New("" /* default mount path */),
|
||||
}
|
||||
|
||||
return &HollowKubelet{
|
||||
KubeletConfiguration: c,
|
||||
KubeletDeps: d,
|
||||
}
|
||||
}
|
||||
|
||||
// Starts this HollowKubelet and blocks.
|
||||
func (hk *HollowKubelet) Run() {
|
||||
kubeletapp.RunKubelet(hk.KubeletConfiguration, hk.KubeletDeps, false, false)
|
||||
select {}
|
||||
}
|
||||
|
||||
// Builds a KubeletConfiguration for the HollowKubelet, ensuring that the
|
||||
// usual defaults are applied for fields we do not override.
|
||||
func GetHollowKubeletConfig(
|
||||
nodeName string,
|
||||
kubeletPort int,
|
||||
kubeletReadOnlyPort int,
|
||||
maxPods int,
|
||||
podsPerCore int) *componentconfig.KubeletConfiguration {
|
||||
|
||||
testRootDir := utils.MakeTempDirOrDie("hollow-kubelet.", "")
|
||||
manifestFilePath := utils.MakeTempDirOrDie("manifest", testRootDir)
|
||||
glog.Infof("Using %s as root dir for hollow-kubelet", testRootDir)
|
||||
|
||||
// Do the external -> internal conversion to make sure that defaults
|
||||
// are set for fields not overridden in NewHollowKubelet.
|
||||
tmp := &v1alpha1.KubeletConfiguration{}
|
||||
api.Scheme.Default(tmp)
|
||||
c := &componentconfig.KubeletConfiguration{}
|
||||
api.Scheme.Convert(tmp, c, nil)
|
||||
|
||||
c.HostnameOverride = nodeName
|
||||
c.RootDirectory = testRootDir
|
||||
c.ManifestURL = ""
|
||||
c.Address = "0.0.0.0" /* bind address */
|
||||
c.Port = int32(kubeletPort)
|
||||
c.ReadOnlyPort = int32(kubeletReadOnlyPort)
|
||||
c.MasterServiceNamespace = api.NamespaceDefault
|
||||
c.PodManifestPath = manifestFilePath
|
||||
c.FileCheckFrequency.Duration = 20 * time.Second
|
||||
c.HTTPCheckFrequency.Duration = 20 * time.Second
|
||||
c.MinimumGCAge.Duration = 1 * time.Minute
|
||||
c.NodeStatusUpdateFrequency.Duration = 10 * time.Second
|
||||
c.SyncFrequency.Duration = 10 * time.Second
|
||||
c.OutOfDiskTransitionFrequency.Duration = 5 * time.Minute
|
||||
c.EvictionPressureTransitionPeriod.Duration = 5 * time.Minute
|
||||
c.MaxPods = int32(maxPods)
|
||||
c.PodsPerCore = int32(podsPerCore)
|
||||
c.ClusterDNS = ""
|
||||
c.DockerExecHandlerName = "native"
|
||||
c.ImageGCHighThresholdPercent = 90
|
||||
c.ImageGCLowThresholdPercent = 80
|
||||
c.LowDiskSpaceThresholdMB = 256
|
||||
c.VolumeStatsAggPeriod.Duration = time.Minute
|
||||
c.CgroupRoot = ""
|
||||
c.ContainerRuntime = "docker"
|
||||
c.CPUCFSQuota = true
|
||||
c.RuntimeCgroups = ""
|
||||
c.EnableControllerAttachDetach = false
|
||||
c.EnableCustomMetrics = false
|
||||
c.EnableDebuggingHandlers = true
|
||||
c.EnableServer = true
|
||||
c.ExperimentalCgroupsPerQOS = false
|
||||
// hairpin-veth is used to allow hairpin packets. Note that this deviates from
|
||||
// what the "real" kubelet currently does, because there's no way to
|
||||
// set promiscuous mode on docker0.
|
||||
c.HairpinMode = componentconfig.HairpinVeth
|
||||
c.MaxContainerCount = 100
|
||||
c.MaxOpenFiles = 1024
|
||||
c.MaxPerPodContainerCount = 2
|
||||
c.NvidiaGPUs = 0
|
||||
c.RegisterNode = true
|
||||
c.RegisterSchedulable = true
|
||||
c.RegistryBurst = 10
|
||||
c.RegistryPullQPS = 5.0
|
||||
c.ResolverConfig = kubetypes.ResolvConfDefault
|
||||
c.KubeletCgroups = "/kubelet"
|
||||
c.SerializeImagePulls = true
|
||||
c.SystemCgroups = ""
|
||||
c.ProtectKernelDefaults = false
|
||||
|
||||
// TODO(mtaufen): Note that PodInfraContainerImage was being set to the empty value before,
|
||||
// but this may not have been intentional. (previous code (SimpleKubelet)
|
||||
// was peeling it off of a componentconfig.KubeletConfiguration{}, but may
|
||||
// have actually wanted the default).
|
||||
// The default will be present in the KubeletConfiguration contstructed above.
|
||||
|
||||
return c
|
||||
|
||||
}
|
||||
91
vendor/k8s.io/kubernetes/pkg/kubemark/hollow_proxy.go
generated
vendored
Normal file
91
vendor/k8s.io/kubernetes/pkg/kubemark/hollow_proxy.go
generated
vendored
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
/*
|
||||
Copyright 2015 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 kubemark
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
proxyapp "k8s.io/kubernetes/cmd/kube-proxy/app"
|
||||
"k8s.io/kubernetes/cmd/kube-proxy/app/options"
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
||||
"k8s.io/kubernetes/pkg/client/record"
|
||||
proxyconfig "k8s.io/kubernetes/pkg/proxy/config"
|
||||
"k8s.io/kubernetes/pkg/types"
|
||||
"k8s.io/kubernetes/pkg/util"
|
||||
utiliptables "k8s.io/kubernetes/pkg/util/iptables"
|
||||
|
||||
"github.com/golang/glog"
|
||||
)
|
||||
|
||||
type HollowProxy struct {
|
||||
ProxyServer *proxyapp.ProxyServer
|
||||
}
|
||||
|
||||
type FakeProxyHandler struct{}
|
||||
|
||||
func (*FakeProxyHandler) OnServiceUpdate(services []api.Service) {}
|
||||
func (*FakeProxyHandler) OnEndpointsUpdate(endpoints []api.Endpoints) {}
|
||||
|
||||
type FakeProxier struct{}
|
||||
|
||||
func (*FakeProxier) OnServiceUpdate(services []api.Service) {}
|
||||
func (*FakeProxier) Sync() {}
|
||||
func (*FakeProxier) SyncLoop() {
|
||||
select {}
|
||||
}
|
||||
|
||||
func NewHollowProxyOrDie(
|
||||
nodeName string,
|
||||
client clientset.Interface,
|
||||
endpointsConfig *proxyconfig.EndpointsConfig,
|
||||
serviceConfig *proxyconfig.ServiceConfig,
|
||||
iptInterface utiliptables.Interface,
|
||||
broadcaster record.EventBroadcaster,
|
||||
recorder record.EventRecorder,
|
||||
) *HollowProxy {
|
||||
// Create and start Hollow Proxy
|
||||
config := options.NewProxyConfig()
|
||||
config.OOMScoreAdj = util.Int32Ptr(0)
|
||||
config.ResourceContainer = ""
|
||||
config.NodeRef = &api.ObjectReference{
|
||||
Kind: "Node",
|
||||
Name: nodeName,
|
||||
UID: types.UID(nodeName),
|
||||
Namespace: "",
|
||||
}
|
||||
proxyconfig.NewSourceAPI(
|
||||
client.Core().RESTClient(),
|
||||
30*time.Second,
|
||||
serviceConfig.Channel("api"),
|
||||
endpointsConfig.Channel("api"),
|
||||
)
|
||||
|
||||
hollowProxy, err := proxyapp.NewProxyServer(client, config, iptInterface, &FakeProxier{}, broadcaster, recorder, nil, "fake")
|
||||
if err != nil {
|
||||
glog.Fatalf("Error while creating ProxyServer: %v\n", err)
|
||||
}
|
||||
return &HollowProxy{
|
||||
ProxyServer: hollowProxy,
|
||||
}
|
||||
}
|
||||
|
||||
func (hp *HollowProxy) Run() {
|
||||
if err := hp.ProxyServer.Run(); err != nil {
|
||||
glog.Fatalf("Error while running proxy: %v\n", err)
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue