Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2. Plumb LogicalCluster type through and generalize lcluster logic #744

Merged
merged 10 commits into from
Mar 28, 2022
3 changes: 2 additions & 1 deletion cmd/ingress-controller/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import (
"os"
"time"

"github.com/kcp-dev/apimachinery/pkg/logicalcluster"
"github.com/spf13/cobra"
"github.com/spf13/pflag"

Expand Down Expand Up @@ -82,7 +83,7 @@ func main() {
return err
}

kubeInformerFactory := informers.NewSharedInformerFactory(kubeClient.Cluster("*"), resyncPeriod)
kubeInformerFactory := informers.NewSharedInformerFactory(kubeClient.Cluster(logicalcluster.Wildcard), resyncPeriod)
ingressInformer := kubeInformerFactory.Networking().V1().Ingresses()
serviceInformer := kubeInformerFactory.Core().V1().Services()

Expand Down
3 changes: 2 additions & 1 deletion cmd/syncer/cmd/syncer.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ package cmd
import (
"context"

"github.com/kcp-dev/apimachinery/pkg/logicalcluster"
"github.com/spf13/cobra"

"k8s.io/apimachinery/pkg/util/sets"
Expand Down Expand Up @@ -80,7 +81,7 @@ func Run(options *synceroptions.Options, ctx context.Context) error {
return err
}

if err := syncer.StartSyncer(ctx, kcpConfig, toConfig, sets.NewString(options.SyncedResourceTypes...), options.FromClusterName, options.PclusterID, numThreads); err != nil {
if err := syncer.StartSyncer(ctx, kcpConfig, toConfig, sets.NewString(options.SyncedResourceTypes...), logicalcluster.New(options.FromClusterName), options.PclusterID, numThreads); err != nil {
return err
}

Expand Down
5 changes: 3 additions & 2 deletions cmd/virtual-workspaces/command/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import (
"net/url"
"time"

"github.com/kcp-dev/apimachinery/pkg/logicalcluster"
"github.com/spf13/cobra"

metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
Expand Down Expand Up @@ -93,13 +94,13 @@ func Run(o *options.Options, stopCh <-chan struct{}) error {
if err != nil {
return err
}
wildcardKubeClient := kubeClusterClient.Cluster("*")
wildcardKubeClient := kubeClusterClient.Cluster(logicalcluster.Wildcard)
wildcardKubeInformers := kubeinformers.NewSharedInformerFactory(wildcardKubeClient, 10*time.Minute)
kcpClusterClient, err := kcpclient.NewClusterForConfig(kubeClientConfig)
if err != nil {
return err
}
wildcardKcpClient := kcpClusterClient.Cluster("*")
wildcardKcpClient := kcpClusterClient.Cluster(logicalcluster.Wildcard)
wildcardKcpInformers := kcpinformer.NewSharedInformerFactory(wildcardKcpClient, 10*time.Minute)

// create apiserver
Expand Down
2 changes: 1 addition & 1 deletion config/crds/tenancy.kcp.dev_clusterworkspaces.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ spec:
- root
- org
- system
pattern: ^[a-z0-9][a-z0-9-]*[a-z0-9]$
pattern: ^[a-z]([a-z0-9-]{0,29}[a-z0-9])?$
type: string
type: object
spec:
Expand Down
2 changes: 1 addition & 1 deletion config/crds/tenancy.kcp.dev_clusterworkspaces.yaml-patch
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
path: /spec/versions/name=v1alpha1/schema/openAPIV3Schema/properties/metadata/properties
value:
name:
pattern: "^[a-z0-9][a-z0-9-]*[a-z0-9]$"
pattern: "^[a-z]([a-z0-9-]{0,29}[a-z0-9])?$"
minLength: 1
maxLength: 31 # half of max name length
type: string
Expand Down
57 changes: 29 additions & 28 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,20 @@ require (
github.com/google/go-cmp v0.5.6
github.com/google/uuid v1.1.2
github.com/googleapis/gnostic v0.5.5
github.com/kcp-dev/apimachinery v0.0.0-20220326161941-461c06dd2b07
github.com/muesli/reflow v0.1.0
github.com/onsi/gomega v1.10.1
github.com/spf13/cobra v1.2.1
github.com/spf13/pflag v1.0.5
github.com/stretchr/testify v1.7.0
github.com/stretchr/testify v1.7.1
github.com/wayneashleyberry/terminal-dimensions v1.0.0
go.etcd.io/etcd/server/v3 v3.5.0
go.uber.org/multierr v1.7.0
google.golang.org/grpc v1.40.0
google.golang.org/protobuf v1.27.1
k8s.io/api v0.0.0
k8s.io/apiextensions-apiserver v0.0.0
k8s.io/apimachinery v0.0.0
k8s.io/apimachinery v0.23.5
k8s.io/apiserver v0.0.0
k8s.io/cli-runtime v0.0.0
k8s.io/client-go v0.0.0
Expand All @@ -37,30 +38,30 @@ require (
)

replace (
k8s.io/api => github.com/kcp-dev/kubernetes/staging/src/k8s.io/api v0.0.0-20220321164128-df1a4f5ca117
k8s.io/apiextensions-apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiextensions-apiserver v0.0.0-20220321164128-df1a4f5ca117
k8s.io/apimachinery => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apimachinery v0.0.0-20220321164128-df1a4f5ca117
k8s.io/apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiserver v0.0.0-20220321164128-df1a4f5ca117
k8s.io/cli-runtime => github.com/kcp-dev/kubernetes/staging/src/k8s.io/cli-runtime v0.0.0-20220321164128-df1a4f5ca117
k8s.io/client-go => github.com/kcp-dev/kubernetes/staging/src/k8s.io/client-go v0.0.0-20220321164128-df1a4f5ca117
k8s.io/cloud-provider => github.com/kcp-dev/kubernetes/staging/src/k8s.io/cloud-provider v0.0.0-20220321164128-df1a4f5ca117
k8s.io/cluster-bootstrap => github.com/kcp-dev/kubernetes/staging/src/k8s.io/cluster-bootstrap v0.0.0-20220321164128-df1a4f5ca117
k8s.io/code-generator => github.com/kcp-dev/kubernetes/staging/src/k8s.io/code-generator v0.0.0-20220321164128-df1a4f5ca117
k8s.io/component-base => github.com/kcp-dev/kubernetes/staging/src/k8s.io/component-base v0.0.0-20220321164128-df1a4f5ca117
k8s.io/component-helpers => github.com/kcp-dev/kubernetes/staging/src/k8s.io/component-helpers v0.0.0-20220321164128-df1a4f5ca117
k8s.io/controller-manager => github.com/kcp-dev/kubernetes/staging/src/k8s.io/controller-manager v0.0.0-20220321164128-df1a4f5ca117
k8s.io/cri-api => github.com/kcp-dev/kubernetes/staging/src/k8s.io/cri-api v0.0.0-20220321164128-df1a4f5ca117
k8s.io/csi-translation-lib => github.com/kcp-dev/kubernetes/staging/src/k8s.io/csi-translation-lib v0.0.0-20220321164128-df1a4f5ca117
k8s.io/kube-aggregator => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kube-aggregator v0.0.0-20220321164128-df1a4f5ca117
k8s.io/kube-controller-manager => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kube-controller-manager v0.0.0-20220321164128-df1a4f5ca117
k8s.io/kube-proxy => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kube-proxy v0.0.0-20220321164128-df1a4f5ca117
k8s.io/kube-scheduler => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kube-scheduler v0.0.0-20220321164128-df1a4f5ca117
k8s.io/kubectl => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kubectl v0.0.0-20220321164128-df1a4f5ca117
k8s.io/kubelet => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kubelet v0.0.0-20220321164128-df1a4f5ca117
k8s.io/kubernetes => github.com/kcp-dev/kubernetes v0.0.0-20220321164128-df1a4f5ca117
k8s.io/legacy-cloud-providers => github.com/kcp-dev/kubernetes/staging/src/k8s.io/legacy-cloud-providers v0.0.0-20220321164128-df1a4f5ca117
k8s.io/metrics => github.com/kcp-dev/kubernetes/staging/src/k8s.io/metrics v0.0.0-20220321164128-df1a4f5ca117
k8s.io/mount-utils => github.com/kcp-dev/kubernetes/staging/src/k8s.io/mount-utils v0.0.0-20220321164128-df1a4f5ca117
k8s.io/pod-security-admission => github.com/kcp-dev/kubernetes/staging/src/k8s.io/pod-security-admission v0.0.0-20220321164128-df1a4f5ca117
k8s.io/sample-apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/sample-apiserver v0.0.0-20220321164128-df1a4f5ca117
k8s.io/api => github.com/kcp-dev/kubernetes/staging/src/k8s.io/api v0.0.0-20220326094338-57ce33e7efbb
k8s.io/apiextensions-apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiextensions-apiserver v0.0.0-20220326094338-57ce33e7efbb
k8s.io/apimachinery => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apimachinery v0.0.0-20220326094338-57ce33e7efbb
k8s.io/apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/apiserver v0.0.0-20220326094338-57ce33e7efbb
k8s.io/cli-runtime => github.com/kcp-dev/kubernetes/staging/src/k8s.io/cli-runtime v0.0.0-20220326094338-57ce33e7efbb
k8s.io/client-go => github.com/kcp-dev/kubernetes/staging/src/k8s.io/client-go v0.0.0-20220326094338-57ce33e7efbb
k8s.io/cloud-provider => github.com/kcp-dev/kubernetes/staging/src/k8s.io/cloud-provider v0.0.0-20220326094338-57ce33e7efbb
k8s.io/cluster-bootstrap => github.com/kcp-dev/kubernetes/staging/src/k8s.io/cluster-bootstrap v0.0.0-20220326094338-57ce33e7efbb
k8s.io/code-generator => github.com/kcp-dev/kubernetes/staging/src/k8s.io/code-generator v0.0.0-20220326094338-57ce33e7efbb
k8s.io/component-base => github.com/kcp-dev/kubernetes/staging/src/k8s.io/component-base v0.0.0-20220326094338-57ce33e7efbb
k8s.io/component-helpers => github.com/kcp-dev/kubernetes/staging/src/k8s.io/component-helpers v0.0.0-20220326094338-57ce33e7efbb
k8s.io/controller-manager => github.com/kcp-dev/kubernetes/staging/src/k8s.io/controller-manager v0.0.0-20220326094338-57ce33e7efbb
k8s.io/cri-api => github.com/kcp-dev/kubernetes/staging/src/k8s.io/cri-api v0.0.0-20220326094338-57ce33e7efbb
k8s.io/csi-translation-lib => github.com/kcp-dev/kubernetes/staging/src/k8s.io/csi-translation-lib v0.0.0-20220326094338-57ce33e7efbb
k8s.io/kube-aggregator => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kube-aggregator v0.0.0-20220326094338-57ce33e7efbb
k8s.io/kube-controller-manager => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kube-controller-manager v0.0.0-20220326094338-57ce33e7efbb
k8s.io/kube-proxy => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kube-proxy v0.0.0-20220326094338-57ce33e7efbb
k8s.io/kube-scheduler => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kube-scheduler v0.0.0-20220326094338-57ce33e7efbb
k8s.io/kubectl => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kubectl v0.0.0-20220326094338-57ce33e7efbb
k8s.io/kubelet => github.com/kcp-dev/kubernetes/staging/src/k8s.io/kubelet v0.0.0-20220326094338-57ce33e7efbb
k8s.io/kubernetes => github.com/kcp-dev/kubernetes v0.0.0-20220326094338-57ce33e7efbb
k8s.io/legacy-cloud-providers => github.com/kcp-dev/kubernetes/staging/src/k8s.io/legacy-cloud-providers v0.0.0-20220326094338-57ce33e7efbb
k8s.io/metrics => github.com/kcp-dev/kubernetes/staging/src/k8s.io/metrics v0.0.0-20220326094338-57ce33e7efbb
k8s.io/mount-utils => github.com/kcp-dev/kubernetes/staging/src/k8s.io/mount-utils v0.0.0-20220326094338-57ce33e7efbb
k8s.io/pod-security-admission => github.com/kcp-dev/kubernetes/staging/src/k8s.io/pod-security-admission v0.0.0-20220326094338-57ce33e7efbb
k8s.io/sample-apiserver => github.com/kcp-dev/kubernetes/staging/src/k8s.io/sample-apiserver v0.0.0-20220326094338-57ce33e7efbb
)
Loading