Calico: Stable api versions for kubernetes resources

Created on 13 Apr 2019  路  2Comments  路  Source: projectcalico/calico

Definitely calico v3.6.x or even little bit earlier v3 branch versions are targeting for a newer kubernetes version.

I'm almost sure that most of the cluster owners are running kubernetes of v1.9+

Is it possible to have your generating manifests to have stable resources version for RBAC, Deployments and Daemonset?

Excerpts from calico.yaml for standalone etcd cluster.

---
kind: DaemonSet
apiVersion: extensions/v1beta1
metadata:
  name: calico-node
  namespace: kube-system
  labels:
    k8s-app: calico-node
spec:
  selector:
    matchLabels:
      k8s-app: calico-node

---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: calico-kube-controllers

---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: calico-kube-controllers

---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: calico-kube-controllers

---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: calico-node

---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: calico-node

Fine, DaemonSet and Deployment both are from extensions/v1beta1 but why Deployment is missing selector?

Here are some references to k8s api resource graduation:
DaemonSet, Deployment, ReplicaSet - are stable since kubernetes v1.9 and are in apps/v1
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.9.md#apps

rbac.authorization.k8s.io API group is GA and v1 since kubernetes v1.8
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.8.md#sig-auth

Just it is really frustrating to constantly review your templates before application in my clusters.
I'm really sorry if I'm not tolerant enough. But I think as many projects have already updated their definitions, Calico can benefit from this too.

kinbug

Most helpful comment

Yes, we should absolutely do this.
We've held off for a while to make sure we give people enough time to update to versions of k8s with the stable APIs, but I think we've waited long enough!

All 2 comments

Yes, we should absolutely do this.
We've held off for a while to make sure we give people enough time to update to versions of k8s with the stable APIs, but I think we've waited long enough!

Was this page helpful?
0 / 5 - 0 ratings