-
Notifications
You must be signed in to change notification settings - Fork 381
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
Deployment cannot be synced to cluster #63
Comments
Why did the clustername in the deployment is always Guangyas-MacBook-Pro:kcp guangyaliu$ kubectl get deploy -oyaml
apiVersion: v1
items:
- apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{},"name":"example","namespace":"default"},"spec":{"replicas":3,"selector":{"matchLabels":{"app":"nginx"}},"template":{"metadata":{"labels":{"app":"nginx"}},"spec":{"containers":[{"command":["/bin/sh","-ec","echo \"Going to sleep\"\ntail -f /dev/null \n"],"image":"busybox:1.25","name":"busybox"}]}}}}
clusterName: admin
... |
Even if I change the cluster name to Guangyas-MacBook-Pro:kcp guangyaliu$ kubectl get cluster
NAME AGE
admin 86s |
I ran into the same phenomenon. Surely it is because the current implementation of the if !equality.Semantic.DeepEqual(previous.Status, current.Status) {
_, uerr := c.client.Deployments(current.Namespace).UpdateStatus(ctx, current, metav1.UpdateOptions{})
return uerr
} On the other hand, in the case of a single downstream cluster, its reconciliation loop only adds a label if len(cls) == 1 {
// nothing to split, just label Deployment for the only cluster.
if root.Labels == nil {
root.Labels = map[string]string{}
}
// TODO: munge cluster name
root.Labels[clusterLabel] = cls[0].Name
return nil
} As a result, the deployment is not labelled and thus the corresponding syncer cannot detect the creation. |
@y-taka-23 As a simple fix, how about just remove the checking of |
I was following the guidance here https://github.com/kcp-dev/kcp/blob/main/DEVELOPMENT.md to add a KIND cluster to kcp, and it works well.
Then I try to create a deployment on this cluster via the file at https://github.com/kcp-dev/kcp/blob/main/contrib/demo/deployment.yaml , but the deploy does not sync to the cluster.
KCP log
syncer log
The text was updated successfully, but these errors were encountered: