Operator cannot install Tekton Pipeline components on Kubernetes v1.25
Closed this issue · 3 comments
Per shipwright-io/build#1173 , when installing the SHP operator, one cannot get the Tekton controller and webhook in the cluster. This only happens on v1.25 and v1.26, however it works on a v1.23.
@adambkaplan @qu1queee this should be moved to the operator repository ?
I have tested and it's working for me.
Steps:
- install tekton
- install olm from
operator-sdk olm install
- install shipwright operator from
kubectl apply -f https://operatorhub.io/install/shipwright-operator.yaml
lan@lan:~$ k get po -A
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system coredns-787d4945fb-t6k26 1/1 Running 0 77m
kube-system coredns-787d4945fb-vdqmm 1/1 Running 0 77m
kube-system etcd-kind-control-plane 1/1 Running 0 78m
kube-system kindnet-fzsqp 1/1 Running 0 77m
kube-system kindnet-ht5mq 1/1 Running 0 77m
kube-system kindnet-krj4m 1/1 Running 0 77m
kube-system kindnet-m6228 1/1 Running 0 77m
kube-system kindnet-s6nht 1/1 Running 0 77m
kube-system kube-apiserver-kind-control-plane 1/1 Running 0 78m
kube-system kube-controller-manager-kind-control-plane 1/1 Running 0 78m
kube-system kube-proxy-9rzzl 1/1 Running 0 77m
kube-system kube-proxy-ddbqh 1/1 Running 0 77m
kube-system kube-proxy-lhw6z 1/1 Running 0 77m
kube-system kube-proxy-qjhlw 1/1 Running 0 77m
kube-system kube-proxy-rzf5r 1/1 Running 0 77m
kube-system kube-scheduler-kind-control-plane 1/1 Running 0 78m
local-path-storage local-path-provisioner-c8855d4bb-4rs6b 1/1 Running 0 77m
olm 2a40c1fc0f7958649d26a49221d95375c6af9ed37d26de98fd38a28e2aq7bwj 0/1 Completed 0 87s
olm 8a3d7c98b98aa814bbb19c5d009b45e195be7bb433dd32edf2a612be4c9nkgm 0/1 Completed 0 87s
olm catalog-operator-7998cc9b84-qvpms 1/1 Running 0 2m52s
olm olm-operator-5b97f58b95-kgc5p 1/1 Running 0 2m52s
olm operatorhubio-catalog-h24w5 1/1 Running 0 2m27s
olm packageserver-6fbfbdc886-2mkdp 1/1 Running 0 2m29s
olm packageserver-6fbfbdc886-p2lzt 1/1 Running 0 2m29s
operators shipwright-operator-57bf7f6cdd-7tcc9 2/2 Running 0 43s
operators tekton-operator-6bc7b6dd96-gp85g 2/2 Running 0 46s
operators tekton-operator-webhook-559b985dbc-ktchn 1/1 Running 0 46s
tekton-pipelines-resolvers tekton-pipelines-remote-resolvers-dc9bbcd65-whqrn 1/1 Running 0 54m
tekton-pipelines tekton-pipelines-controller-bffdddb78-lwwkm 1/1 Running 0 54m
tekton-pipelines tekton-pipelines-webhook-5b86665f9d-f46g9 1/1 Running 0 54m
tekton-pipelines tekton-triggers-controller-5886598484-mg4pz 1/1 Running 0 54m
tekton-pipelines tekton-triggers-core-interceptors-7f888c477f-jzlqd 1/1 Running 0 54m
tekton-pipelines tekton-triggers-webhook-6dd9f5bbf4-tq4cr 1/1 Running 0 54m
Version
lan@lan:~$ k version
WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short. Use --output=yaml|json to get the full version.
Client Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.0", GitCommit:"b46a3f887ca979b1a5d14fd39cb1af43e7e5d12d", GitTreeState:"clean", BuildDate:"2022-12-08T19:58:30Z", GoVersion:"go1.19.4", Compiler:"gc", Platform:"linux/amd64"}
Kustomize Version: v4.5.7
Server Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.0", GitCommit:"b46a3f887ca979b1a5d14fd39cb1af43e7e5d12d", GitTreeState:"clean", BuildDate:"2022-12-20T03:35:13Z", GoVersion:"go1.19.4", Compiler:"gc", Platform:"linux/amd64"}
lan@:~$ tkn version
Client version: dev
Pipeline version: v0.44.0
Triggers version: v0.22.1
Per @liangyuanpeng - this is working on k8s 1.26, and I suspect it should work on any current version of k8s.
I suspect the original issue was that Tekton's operator was out of date. The Operator Lifecycle Manager (olm) lets us declare a dependency on the Tekton operator - when the Shipwright operator is installed, OLM tries to find an appropriate operator for Tekton and install that, too. Part of the Shipwright operator's reconcile loop is to detect if Tekton has been installed, and if not, call the Tekton operator APIs to install it on our behalf.