mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-25 04:33:26 +00:00
Merge pull request #39061 from xulike666/fix-typo-assistant
Automatic merge from submit-queue Fix typo for federation/* **What this PR does / why we need it**: Increase code readability for this new member in v1.5 **Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: **Special notes for your reviewer**: Could we develop a typo-fix bot along with a k8s terminology dictionary ? **Release note**: ```release-note ```
This commit is contained in:
commit
45d2449f13
@ -71,7 +71,7 @@ function setClusterInfo() {
|
||||
# Sanity check on $CNI_PLUGIN_CONF and $CNI_PLUGIN_EXES
|
||||
function check-CNI-config() {
|
||||
if [ -z "$CNI_PLUGIN_CONF" ] && [ -n "$CNI_PLUGIN_EXES" ]; then
|
||||
echo "Warning: CNI_PLUGIN_CONF is emtpy but CNI_PLUGIN_EXES is not (it is $CNI_PLUGIN_EXES); Flannel will be used" >& 2
|
||||
echo "Warning: CNI_PLUGIN_CONF is empty but CNI_PLUGIN_EXES is not (it is $CNI_PLUGIN_EXES); Flannel will be used" >& 2
|
||||
elif [ -n "$CNI_PLUGIN_CONF" ] && [ -z "$CNI_PLUGIN_EXES" ]; then
|
||||
echo "Warning: CNI_PLUGIN_EXES is empty but CNI_PLUGIN_CONF is not (it is $CNI_PLUGIN_CONF); Flannel will be used" & 2
|
||||
elif [ -n "$CNI_PLUGIN_CONF" ] && [ -n "$CNI_PLUGIN_EXES" ]; then
|
||||
@ -545,7 +545,7 @@ function provision-node() {
|
||||
BASH_DEBUG_FLAGS="set -x"
|
||||
fi
|
||||
|
||||
# remote login to node and configue k8s node
|
||||
# remote login to node and configure k8s node
|
||||
ssh $SSH_OPTS -t "$1" "
|
||||
set +e
|
||||
${BASH_DEBUG_FLAGS}
|
||||
@ -638,7 +638,7 @@ function provision-masterandnode() {
|
||||
BASH_DEBUG_FLAGS="set -x"
|
||||
fi
|
||||
|
||||
# remote login to the master/node and configue k8s
|
||||
# remote login to the master/node and configure k8s
|
||||
ssh $SSH_OPTS -t "$MASTER" "
|
||||
set +e
|
||||
${BASH_DEBUG_FLAGS}
|
||||
|
@ -76,7 +76,7 @@ type ClusterCondition struct {
|
||||
Message string
|
||||
}
|
||||
|
||||
// ClusterStatus is information about the current status of a cluster updated by cluster controller peridocally.
|
||||
// ClusterStatus is information about the current status of a cluster updated by cluster controller periodically.
|
||||
type ClusterStatus struct {
|
||||
// Conditions is an array of current cluster conditions.
|
||||
// +optional
|
||||
@ -124,8 +124,8 @@ type ClusterList struct {
|
||||
// Temporary/alpha structures to support custom replica assignments within FederatedReplicaSet.
|
||||
|
||||
// A set of preferences that can be added to federated version of ReplicaSet as a json-serialized annotation.
|
||||
// The preferences allow the user to express in which culsters he wants to put his replicas within the
|
||||
// mentiond FederatedReplicaSet.
|
||||
// The preferences allow the user to express in which clusters he wants to put his replicas within the
|
||||
// mentioned FederatedReplicaSet.
|
||||
type FederatedReplicaSetPreferences struct {
|
||||
// If set to true then already scheduled and running replicas may be moved to other clusters to
|
||||
// in order to bring cluster replicasets towards a desired state. Otherwise, if set to false,
|
||||
|
@ -76,7 +76,7 @@ type ClusterCondition struct {
|
||||
Message string `json:"message,omitempty" protobuf:"bytes,6,opt,name=message"`
|
||||
}
|
||||
|
||||
// ClusterStatus is information about the current status of a cluster updated by cluster controller peridocally.
|
||||
// ClusterStatus is information about the current status of a cluster updated by cluster controller periodically.
|
||||
type ClusterStatus struct {
|
||||
// Conditions is an array of current cluster conditions.
|
||||
// +optional
|
||||
|
@ -76,7 +76,7 @@ func TestValidateCluster(t *testing.T) {
|
||||
for testName, errorCase := range errorCases {
|
||||
errs := ValidateCluster(&errorCase)
|
||||
if len(errs) == 0 {
|
||||
t.Errorf("expected failur for %s", testName)
|
||||
t.Errorf("expected failure for %s", testName)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -11350,7 +11350,7 @@
|
||||
}
|
||||
},
|
||||
"v1beta1.ClusterStatus": {
|
||||
"description": "ClusterStatus is information about the current status of a cluster updated by cluster controller peridocally.",
|
||||
"description": "ClusterStatus is information about the current status of a cluster updated by cluster controller periodically.",
|
||||
"properties": {
|
||||
"conditions": {
|
||||
"description": "Conditions is an array of current cluster conditions.",
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/aws/route53/stubs"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ dnsprovider.Interface = Interface{}
|
||||
|
||||
type Interface struct {
|
||||
|
@ -44,7 +44,7 @@ type Route53APIStub struct {
|
||||
recordSets map[string]map[string][]*route53.ResourceRecordSet
|
||||
}
|
||||
|
||||
// NewRoute53APIStub returns an initlialized Route53APIStub
|
||||
// NewRoute53APIStub returns an initialized Route53APIStub
|
||||
func NewRoute53APIStub() *Route53APIStub {
|
||||
return &Route53APIStub{
|
||||
zones: make(map[string]*route53.HostedZone),
|
||||
|
@ -24,7 +24,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ dnsprovider.Zone = &Zone{}
|
||||
|
||||
type Zone struct {
|
||||
|
@ -23,7 +23,7 @@ import (
|
||||
"k8s.io/kubernetes/pkg/util/uuid"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ dnsprovider.Zones = Zones{}
|
||||
|
||||
type Zones struct {
|
||||
|
@ -23,7 +23,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ChangesCreateCall = ChangesCreateCall{}
|
||||
|
||||
type ChangesCreateCall struct{ impl *dns.ChangesCreateCall }
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ChangesService = ChangesService{}
|
||||
|
||||
type ChangesService struct{ impl *dns.ChangesService }
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZone = ManagedZone{}
|
||||
|
||||
type ManagedZone struct{ impl *dns.ManagedZone }
|
||||
|
@ -22,7 +22,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesCreateCall = ManagedZonesCreateCall{}
|
||||
|
||||
type ManagedZonesCreateCall struct{ impl *dns.ManagedZonesCreateCall }
|
||||
|
@ -22,7 +22,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesDeleteCall = ManagedZonesDeleteCall{}
|
||||
|
||||
type ManagedZonesDeleteCall struct{ impl *dns.ManagedZonesDeleteCall }
|
||||
|
@ -22,7 +22,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesGetCall = ManagedZonesGetCall{}
|
||||
|
||||
type ManagedZonesGetCall struct{ impl *dns.ManagedZonesGetCall }
|
||||
|
@ -22,7 +22,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesListCall = &ManagedZonesListCall{}
|
||||
|
||||
type ManagedZonesListCall struct{ impl *dns.ManagedZonesListCall }
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesListResponse = &ManagedZonesListResponse{}
|
||||
|
||||
type ManagedZonesListResponse struct{ impl *dns.ManagedZonesListResponse }
|
||||
|
@ -24,7 +24,7 @@ import (
|
||||
"k8s.io/kubernetes/pkg/util/uuid"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesService = &ManagedZonesService{}
|
||||
|
||||
type ManagedZonesService struct{ impl *dns.ManagedZonesService }
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ResourceRecordSet = ResourceRecordSet{}
|
||||
|
||||
type ResourceRecordSet struct{ impl *dns.ResourceRecordSet }
|
||||
|
@ -22,7 +22,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ResourceRecordSetsListCall = &ResourceRecordSetsListCall{}
|
||||
|
||||
type ResourceRecordSetsListCall struct {
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ResourceRecordSetsListResponse = &ResourceRecordSetsListResponse{}
|
||||
|
||||
type ResourceRecordSetsListResponse struct {
|
||||
|
@ -22,7 +22,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/rrstype"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ResourceRecordSetsService = &ResourceRecordSetsService{}
|
||||
|
||||
type ResourceRecordSetsService struct {
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.Service = &Service{}
|
||||
|
||||
type Service struct {
|
||||
|
@ -18,7 +18,7 @@ package stubs
|
||||
|
||||
import "k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.Change = &Change{}
|
||||
|
||||
type Change struct {
|
||||
|
@ -23,7 +23,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ChangesCreateCall = ChangesCreateCall{}
|
||||
|
||||
type ChangesCreateCall struct {
|
||||
|
@ -18,7 +18,7 @@ package stubs
|
||||
|
||||
import "k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ChangesService = &ChangesService{}
|
||||
|
||||
type ChangesService struct {
|
||||
|
@ -18,7 +18,7 @@ package stubs
|
||||
|
||||
import "k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZone = ManagedZone{}
|
||||
|
||||
type ManagedZone struct {
|
||||
|
@ -23,7 +23,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesCreateCall = ManagedZonesCreateCall{}
|
||||
|
||||
type ManagedZonesCreateCall struct {
|
||||
|
@ -23,7 +23,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesDeleteCall = ManagedZonesDeleteCall{}
|
||||
|
||||
type ManagedZonesDeleteCall struct {
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesGetCall = ManagedZonesGetCall{}
|
||||
|
||||
type ManagedZonesGetCall struct {
|
||||
|
@ -23,7 +23,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesListCall = &ManagedZonesListCall{}
|
||||
|
||||
type ManagedZonesListCall struct {
|
||||
|
@ -18,7 +18,7 @@ package stubs
|
||||
|
||||
import "k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesListResponse = &ManagedZonesListResponse{}
|
||||
|
||||
type ManagedZonesListResponse struct{ ManagedZones_ []interfaces.ManagedZone }
|
||||
|
@ -18,7 +18,7 @@ package stubs
|
||||
|
||||
import "k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ManagedZonesService = &ManagedZonesService{}
|
||||
|
||||
type ManagedZonesService struct {
|
||||
|
@ -18,7 +18,7 @@ package stubs
|
||||
|
||||
import "k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ResourceRecordSet = ResourceRecordSet{}
|
||||
|
||||
type ResourceRecordSet struct {
|
||||
|
@ -21,7 +21,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ResourceRecordSetsListCall = &ResourceRecordSetsListCall{}
|
||||
|
||||
type ResourceRecordSetsListCall struct {
|
||||
|
@ -18,7 +18,7 @@ package stubs
|
||||
|
||||
import "k8s.io/kubernetes/federation/pkg/dnsprovider/providers/google/clouddns/internal/interfaces"
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ResourceRecordSetsListResponse = &ResourceRecordSetsListResponse{}
|
||||
|
||||
type ResourceRecordSetsListResponse struct {
|
||||
|
@ -23,12 +23,12 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/rrstype"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ interfaces.ResourceRecordSetsService = &ResourceRecordSetsService{}
|
||||
|
||||
type ResourceRecordSetsService struct {
|
||||
Service *Service
|
||||
ListCall interfaces.ResourceRecordSetsListCall // Use to override response if reqired for testing
|
||||
ListCall interfaces.ResourceRecordSetsListCall // Use to override response if required for testing
|
||||
}
|
||||
|
||||
func (s ResourceRecordSetsService) List(project string, managedZone string) interfaces.ResourceRecordSetsListCall {
|
||||
|
@ -24,7 +24,7 @@ import (
|
||||
"k8s.io/kubernetes/federation/pkg/dnsprovider/rrstype"
|
||||
)
|
||||
|
||||
// Compile time check for interface adeherence
|
||||
// Compile time check for interface adherence
|
||||
var _ dnsprovider.ResourceRecordSet = ResourceRecordSet{}
|
||||
|
||||
type ResourceRecordSet struct {
|
||||
|
@ -67,16 +67,16 @@ var (
|
||||
|
||||
type IngressController struct {
|
||||
sync.Mutex // Lock used for leader election
|
||||
// For triggering single ingress reconcilation. This is used when there is an
|
||||
// For triggering single ingress reconciliation. This is used when there is an
|
||||
// add/update/delete operation on an ingress in either federated API server or
|
||||
// in some member of the federation.
|
||||
ingressDeliverer *util.DelayingDeliverer
|
||||
|
||||
// For triggering reconcilation of cluster ingress controller configmap and
|
||||
// For triggering reconciliation of cluster ingress controller configmap and
|
||||
// all ingresses. This is used when a new cluster becomes available.
|
||||
clusterDeliverer *util.DelayingDeliverer
|
||||
|
||||
// For triggering reconcilation of cluster ingress controller configmap.
|
||||
// For triggering reconciliation of cluster ingress controller configmap.
|
||||
// This is used when a configmap is updated in the cluster.
|
||||
configMapDeliverer *util.DelayingDeliverer
|
||||
|
||||
@ -208,7 +208,7 @@ func NewIngressController(client federationclientset.Interface) *IngressControll
|
||||
},
|
||||
&v1.ConfigMap{},
|
||||
controller.NoResyncPeriodFunc(),
|
||||
// Trigger reconcilation whenever the ingress controller's configmap in a federated cluster is changed. In most cases it
|
||||
// Trigger reconciliation whenever the ingress controller's configmap in a federated cluster is changed. In most cases it
|
||||
// would be just confirmation that the configmap for the ingress controller is correct.
|
||||
util.NewTriggerOnAllChanges(
|
||||
func(obj pkgruntime.Object) {
|
||||
@ -362,7 +362,7 @@ func (ic *IngressController) Run(stopChan <-chan struct{}) {
|
||||
ic.ingressFederatedInformer.Stop()
|
||||
glog.Infof("Stopping ConfigMap Federated Informer")
|
||||
ic.configMapFederatedInformer.Stop()
|
||||
glog.Infof("Stopoing ingress deliverer")
|
||||
glog.Infof("Stopping ingress deliverer")
|
||||
ic.ingressDeliverer.Stop()
|
||||
glog.Infof("Stopping configmap deliverer")
|
||||
ic.configMapDeliverer.Stop()
|
||||
@ -465,7 +465,7 @@ func (ic *IngressController) isSynced() bool {
|
||||
return true
|
||||
}
|
||||
|
||||
// The function triggers reconcilation of all federated ingresses. clusterName is the name of the cluster that changed
|
||||
// The function triggers reconciliation of all federated ingresses. clusterName is the name of the cluster that changed
|
||||
// but all ingresses in all clusters are reconciled
|
||||
func (ic *IngressController) reconcileIngressesOnClusterChange(clusterName string) {
|
||||
glog.V(4).Infof("Reconciling ingresses on cluster change for cluster %q", clusterName)
|
||||
|
@ -138,7 +138,7 @@ func TestIngressController(t *testing.T) {
|
||||
assert.NotNil(t, cluster)
|
||||
assert.Equal(t, cluster.ObjectMeta.Annotations[uidAnnotationKey], cfg1.Data[uidKey])
|
||||
|
||||
t.Logf("Checking that approproate finalizers are added")
|
||||
t.Logf("Checking that appropriate finalizers are added")
|
||||
// There should be 2 updates to add both the finalizers.
|
||||
updatedIngress := GetIngressFromChan(t, fedIngressUpdateChan)
|
||||
assert.True(t, ingressController.hasFinalizerFunc(updatedIngress, deletionhelper.FinalizerDeleteFromUnderlyingClusters))
|
||||
|
@ -95,7 +95,7 @@ func NewNamespaceController(client federationclientset.Interface) *NamespaceCont
|
||||
eventRecorder: recorder,
|
||||
}
|
||||
|
||||
// Build delivereres for triggering reconciliations.
|
||||
// Build deliverers for triggering reconciliations.
|
||||
nc.namespaceDeliverer = util.NewDelayingDeliverer()
|
||||
nc.clusterDeliverer = util.NewDelayingDeliverer()
|
||||
|
||||
@ -129,7 +129,7 @@ func NewNamespaceController(client federationclientset.Interface) *NamespaceCont
|
||||
&apiv1.Namespace{},
|
||||
controller.NoResyncPeriodFunc(),
|
||||
// Trigger reconciliation whenever something in federated cluster is changed. In most cases it
|
||||
// would be just confirmation that some namespace opration succeeded.
|
||||
// would be just confirmation that some namespace operation succeeded.
|
||||
util.NewTriggerOnMetaAndSpecChanges(
|
||||
func(obj runtime.Object) { nc.deliverNamespaceObj(obj, nc.namespaceReviewDelay, false) },
|
||||
))
|
||||
@ -142,7 +142,7 @@ func NewNamespaceController(client federationclientset.Interface) *NamespaceCont
|
||||
},
|
||||
)
|
||||
|
||||
// Federated updeater along with Create/Update/Delete operations.
|
||||
// Federated updater along with Create/Update/Delete operations.
|
||||
nc.federatedUpdater = util.NewFederatedUpdater(nc.namespaceFederatedInformer,
|
||||
func(client kubeclientset.Interface, obj runtime.Object) error {
|
||||
namespace := obj.(*apiv1.Namespace)
|
||||
@ -435,7 +435,7 @@ func (nc *NamespaceController) reconcileNamespace(namespace string) {
|
||||
return
|
||||
}
|
||||
|
||||
// Evertyhing is in order but lets be double sure
|
||||
// Everything is in order but lets be double sure
|
||||
nc.deliverNamespace(namespace, nc.namespaceReviewDelay, false)
|
||||
}
|
||||
|
||||
@ -489,7 +489,7 @@ func (nc *NamespaceController) delete(namespace *apiv1.Namespace) error {
|
||||
// Ensures that all resources in this namespace are deleted and then removes the kubernetes finalizer.
|
||||
func (nc *NamespaceController) removeKubernetesFinalizer(namespace *apiv1.Namespace) (*apiv1.Namespace, error) {
|
||||
// Right now there are just 7 types of objects: Deployments, DaemonSets, ReplicaSet, Secret, Ingress, Events and Service.
|
||||
// Temporarly these items are simply deleted one by one to squeeze this code into 1.4.
|
||||
// Temporarily these items are simply deleted one by one to squeeze this code into 1.4.
|
||||
// TODO: Make it generic (like in the regular namespace controller) and parallel.
|
||||
err := nc.federatedApiClient.Core().Services(namespace.Name).DeleteCollection(&apiv1.DeleteOptions{}, apiv1.ListOptions{})
|
||||
if err != nil {
|
||||
|
@ -130,7 +130,7 @@ func NewSecretController(client federationclientset.Interface) *SecretController
|
||||
&apiv1.Secret{},
|
||||
controller.NoResyncPeriodFunc(),
|
||||
// Trigger reconciliation whenever something in federated cluster is changed. In most cases it
|
||||
// would be just confirmation that some secret opration succeeded.
|
||||
// would be just confirmation that some secret operation succeeded.
|
||||
util.NewTriggerOnAllChanges(
|
||||
func(obj pkgruntime.Object) {
|
||||
secretcontroller.deliverSecretObj(obj, secretcontroller.secretReviewDelay, false)
|
||||
|
@ -176,7 +176,7 @@ func setClientFactory(informer util.FederatedInformer, informerClientFactory fun
|
||||
|
||||
func secretsEqual(a, b apiv1.Secret) bool {
|
||||
// Clear the SelfLink and ObjectMeta.Finalizers since they will be different
|
||||
// in resoure in federation control plane and resource in underlying cluster.
|
||||
// in resource in federation control plane and resource in underlying cluster.
|
||||
a.SelfLink = ""
|
||||
b.SelfLink = ""
|
||||
a.ObjectMeta.Finalizers = []string{}
|
||||
|
@ -145,7 +145,7 @@ func (cc *clusterClientCache) startClusterLW(cluster *v1beta1.Cluster, clusterNa
|
||||
DeleteFunc: func(obj interface{}) {
|
||||
service, _ := obj.(*v1.Service)
|
||||
cc.enqueueService(obj, clusterName)
|
||||
glog.V(2).Infof("Service %s/%s deletion found and enque to service store %s", service.Namespace, service.Name, clusterName)
|
||||
glog.V(2).Infof("Service %s/%s deletion found and enqueue to service store %s", service.Namespace, service.Name, clusterName)
|
||||
},
|
||||
},
|
||||
cache.Indexers{cache.NamespaceIndex: cache.MetaNamespaceIndexFunc},
|
||||
|
@ -82,7 +82,7 @@ type cachedService struct {
|
||||
serviceStatusMap map[string]v1.LoadBalancerStatus
|
||||
// Ensures only one goroutine can operate on this service at any given time.
|
||||
rwlock sync.Mutex
|
||||
// Controls error back-off for procceeding federation service to k8s clusters
|
||||
// Controls error back-off for proceeding federation service to k8s clusters
|
||||
lastRetryDelay time.Duration
|
||||
// Controls error back-off for updating federation service back to federation apiserver
|
||||
lastFedUpdateDelay time.Duration
|
||||
@ -381,7 +381,7 @@ func (s *ServiceController) updateFederationService(key string, cachedService *c
|
||||
}(cache, clusterName)
|
||||
}
|
||||
if hasErr {
|
||||
// detail error has been dumpped inside the loop
|
||||
// detail error has been dumped inside the loop
|
||||
return fmt.Errorf("Service %s/%s was not successfully updated to all clusters", service.Namespace, service.Name), retryable
|
||||
}
|
||||
return nil, !retryable
|
||||
@ -880,7 +880,7 @@ func (s *ServiceController) processServiceUpdate(cachedService *cachedService, s
|
||||
|
||||
cachedService.appliedState = service
|
||||
s.serviceCache.set(key, cachedService)
|
||||
glog.V(4).Infof("Successfully procceeded services %s", key)
|
||||
glog.V(4).Infof("Successfully proceeded services %s", key)
|
||||
cachedService.resetRetryDelay()
|
||||
return nil, doNotRetry
|
||||
}
|
||||
|
@ -92,7 +92,7 @@ var KubeconfigGetterForCluster = func(c *federation_v1beta1.Cluster) clientcmd.K
|
||||
}
|
||||
}
|
||||
|
||||
// KubeconfigGettterForSecret is used to get the kubeconfig from the given secret.
|
||||
// KubeconfigGetterForSecret is used to get the kubeconfig from the given secret.
|
||||
var KubeconfigGetterForSecret = func(secretName string) clientcmd.KubeconfigGetter {
|
||||
return func() (*clientcmdapi.Config, error) {
|
||||
var data []byte
|
||||
@ -137,7 +137,7 @@ var KubeconfigGetterForSecret = func(secretName string) clientcmd.KubeconfigGett
|
||||
}
|
||||
}
|
||||
|
||||
// Retruns Clientset for the given cluster.
|
||||
// Returns Clientset for the given cluster.
|
||||
func GetClientsetForCluster(cluster *federation_v1beta1.Cluster) (*fedclientset.Clientset, error) {
|
||||
clusterConfig, err := BuildClusterConfig(cluster)
|
||||
if err != nil && clusterConfig != nil {
|
||||
|
@ -22,7 +22,7 @@ import (
|
||||
api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||
)
|
||||
|
||||
// Checks if cluster-independent, user provided data in two given ConfigMapss are eqaul. If in
|
||||
// Checks if cluster-independent, user provided data in two given ConfigMaps are equal. If in
|
||||
// the future the ConfigMap structure is expanded then any field that is not populated.
|
||||
// by the api server should be included here.
|
||||
func ConfigMapEquivalent(s1, s2 *api_v1.ConfigMap) bool {
|
||||
|
@ -24,7 +24,7 @@ import (
|
||||
deputils "k8s.io/kubernetes/pkg/controller/deployment/util"
|
||||
)
|
||||
|
||||
// Checks if cluster-independent, user provided data in two given Deployment are eqaul.
|
||||
// Checks if cluster-independent, user provided data in two given Deployment are equal.
|
||||
// This function assumes that revisions are not kept in sync across the clusters.
|
||||
func DeploymentEquivalent(a, b *extensions_v1.Deployment) bool {
|
||||
if a.Name != b.Name {
|
||||
|
@ -23,7 +23,7 @@ import (
|
||||
"k8s.io/kubernetes/pkg/client/record"
|
||||
)
|
||||
|
||||
// Implemnts k8s.io/kubernetes/pkg/client/record.EventSink.
|
||||
// Implements k8s.io/kubernetes/pkg/client/record.EventSink.
|
||||
type FederatedEventSink struct {
|
||||
clientset fedclientset.Interface
|
||||
}
|
||||
|
@ -79,7 +79,7 @@ type FederationView interface {
|
||||
// GetUnreadyClusters returns a list of all clusters that are not ready yet.
|
||||
GetUnreadyClusters() ([]*federationapi.Cluster, error)
|
||||
|
||||
// GetReadyClusers returns all clusters for which the sub-informers are run.
|
||||
// GetReadyClusters returns all clusters for which the sub-informers are run.
|
||||
GetReadyClusters() ([]*federationapi.Cluster, error)
|
||||
|
||||
// GetReadyCluster returns the cluster with the given name, if found.
|
||||
@ -337,7 +337,7 @@ func (f *federatedInformerImpl) GetUnreadyClusters() ([]*federationapi.Cluster,
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// GetReadyClusers returns all clusters for which the sub-informers are run.
|
||||
// GetReadyClusters returns all clusters for which the sub-informers are run.
|
||||
func (f *federatedInformerImpl) GetReadyClusters() ([]*federationapi.Cluster, error) {
|
||||
f.Lock()
|
||||
defer f.Unlock()
|
||||
|
@ -58,12 +58,12 @@ func NewPlanner(preferences *fedapi.FederatedReplicaSetPreferences) *Planner {
|
||||
// have all of the replicas assigned. In such case a cluster with higher weight has priority over
|
||||
// cluster with lower weight (or with lexicographically smaller name in case of draw).
|
||||
// It can also use the current replica count and estimated capacity to provide better planning and
|
||||
// adhere to rebalance policy. To avoid prioritization of clusters with smaller lexiconographical names
|
||||
// adhere to rebalance policy. To avoid prioritization of clusters with smaller lexicographical names
|
||||
// a semi-random string (like replica set name) can be provided.
|
||||
// Two maps are returned:
|
||||
// * a map that contains information how many replicas will be possible to run in a cluster.
|
||||
// * a map that contains information how many extra replicas would be nice to schedule in a cluster so,
|
||||
// if by chance, they are scheudled we will be closer to the desired replicas layout.
|
||||
// if by chance, they are scheduled we will be closer to the desired replicas layout.
|
||||
func (p *Planner) Plan(replicasToDistribute int64, availableClusters []string, currentReplicaCount map[string]int64,
|
||||
estimatedCapacity map[string]int64, replicaSetKey string) (map[string]int64, map[string]int64) {
|
||||
|
||||
@ -140,7 +140,7 @@ func (p *Planner) Plan(replicasToDistribute int64, availableClusters []string, c
|
||||
|
||||
modified := true
|
||||
|
||||
// It is possible single pass of the loop is not enough to distribue all replicas among clusters due
|
||||
// It is possible single pass of the loop is not enough to distribute all replicas among clusters due
|
||||
// to weight, max and rounding corner cases. In such case we iterate until either
|
||||
// there is no replicas or no cluster gets any more replicas or the number
|
||||
// of attempts is less than available cluster count. If there is no preallocated pods
|
||||
|
@ -22,7 +22,7 @@ import (
|
||||
api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||
)
|
||||
|
||||
// Checks if cluster-independent, user provided data in two given Secrets are eqaul. If in
|
||||
// Checks if cluster-independent, user provided data in two given Secrets are equal. If in
|
||||
// the future the Secret structure is expanded then any field that is not populated.
|
||||
// by the api server should be included here.
|
||||
func SecretEquivalent(s1, s2 api_v1.Secret) bool {
|
||||
|
@ -40,7 +40,7 @@ const (
|
||||
pushTimeout = 5 * time.Second
|
||||
)
|
||||
|
||||
// A structure that distributes eventes to multiple watchers.
|
||||
// A structure that distributes events to multiple watchers.
|
||||
type WatcherDispatcher struct {
|
||||
sync.Mutex
|
||||
watchers []*watch.RaceFreeFakeWatcher
|
||||
@ -272,10 +272,10 @@ func CompareObjectMeta(a, b apiv1.ObjectMeta) error {
|
||||
return fmt.Errorf("Different name expected:%s observed:%s", a.Namespace, b.Namespace)
|
||||
}
|
||||
if !reflect.DeepEqual(a.Labels, b.Labels) && (len(a.Labels) != 0 || len(b.Labels) != 0) {
|
||||
return fmt.Errorf("Labels are different expected:%v observerd:%v", a.Labels, b.Labels)
|
||||
return fmt.Errorf("Labels are different expected:%v observed:%v", a.Labels, b.Labels)
|
||||
}
|
||||
if !reflect.DeepEqual(a.Annotations, b.Annotations) && (len(a.Annotations) != 0 || len(b.Annotations) != 0) {
|
||||
return fmt.Errorf("Annotations are different expected:%v observerd:%v", a.Annotations, b.Annotations)
|
||||
return fmt.Errorf("Annotations are different expected:%v observed:%v", a.Annotations, b.Annotations)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
@ -199,7 +199,7 @@ func initFederation(cmdOut io.Writer, config util.AdminConfig, cmd *cobra.Comman
|
||||
}
|
||||
|
||||
// Since only one IP address can be specified as advertise address,
|
||||
// we arbitrarily pick the first availabe IP address
|
||||
// we arbitrarily pick the first available IP address
|
||||
advertiseAddress := ""
|
||||
if len(ips) > 0 {
|
||||
advertiseAddress = ips[0]
|
||||
|
@ -9782,7 +9782,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
|
||||
"v1beta1.ClusterStatus": {
|
||||
Schema: spec.Schema{
|
||||
SchemaProps: spec.SchemaProps{
|
||||
Description: "ClusterStatus is information about the current status of a cluster updated by cluster controller peridocally.",
|
||||
Description: "ClusterStatus is information about the current status of a cluster updated by cluster controller periodically.",
|
||||
Properties: map[string]spec.Schema{
|
||||
"conditions": {
|
||||
SchemaProps: spec.SchemaProps{
|
||||
|
Loading…
Reference in New Issue
Block a user