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

Upgrading operator-sdk to v1.32.0 #319

Merged
merged 2 commits into from
Nov 22, 2023
Merged

Conversation

didierofrivia
Copy link
Member

Closes #309

This PR fixes the known bug that was fixed in v1.31.0.

Verification Steps

rm -rf bin

Setup a local cluster with OLM:

make local-cluster-setup install-olm

Result:

/Applications/Xcode.app/Contents/Developer/usr/bin/make kind-delete-cluster
go: creating new go.mod: module tmp
Downloading sigs.k8s.io/[email protected]
go: downloading sigs.k8s.io/kind v0.20.0
go: downloading golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c
go: downloading github.com/google/safetext v0.0.0-20220905092116-b49f7bc46da2
/Users/dd/Projects/RedHat/kuadrant-operator/bin/kind delete cluster --name kuadrant-local
Deleting cluster "kuadrant-local" ...
/Applications/Xcode.app/Contents/Developer/usr/bin/make kind-create-cluster
/Users/dd/Projects/RedHat/kuadrant-operator/bin/kind create cluster --name kuadrant-local --config utils/kind-cluster.yaml
Creating cluster "kuadrant-local" ...
 ✓ Ensuring node image (kindest/node:v1.27.3) 🖼
 ✓ Preparing nodes 📦
 ✓ Writing configuration 📜
 ✓ Starting control-plane 🕹️
 ✓ Installing CNI 🔌
 ✓ Installing StorageClass 💾
Set kubectl context to "kind-kuadrant-local"
You can now use your cluster with:

kubectl cluster-info --context kind-kuadrant-local

Not sure what to do next? 😅  Check out https://kind.sigs.k8s.io/docs/user/quick-start/
/Applications/Xcode.app/Contents/Developer/usr/bin/make namespace
kubectl create namespace kuadrant-system
namespace/kuadrant-system created
/Applications/Xcode.app/Contents/Developer/usr/bin/make gateway-api-install
go: creating new go.mod: module tmp
Downloading sigs.k8s.io/kustomize/kustomize/[email protected]
/Users/dd/Projects/RedHat/kuadrant-operator/bin/kustomize build config/dependencies/gateway-api | kubectl apply -f -
customresourcedefinition.apiextensions.k8s.io/gatewayclasses.gateway.networking.k8s.io created
customresourcedefinition.apiextensions.k8s.io/gateways.gateway.networking.k8s.io created
customresourcedefinition.apiextensions.k8s.io/httproutes.gateway.networking.k8s.io created
customresourcedefinition.apiextensions.k8s.io/referencegrants.gateway.networking.k8s.io created
/Applications/Xcode.app/Contents/Developer/usr/bin/make istio-install
mkdir -p /Users/dd/Projects/RedHat/kuadrant-operator/bin
cd /var/folders/93/my764hls7b3_7yp46_vbkf9w0000gn/T/tmp.BpyRdZ9UV5; curl -sSL https://istio.io/downloadIstio | ISTIO_VERSION=1.20.0 sh -

Downloading istio-1.20.0 from https://github.com/istio/istio/releases/download/1.20.0/istio-1.20.0-osx-arm64.tar.gz ...

Istio 1.20.0 Download Complete!

Istio has been successfully downloaded into the istio-1.20.0 folder on your system.

Next Steps:
See https://istio.io/latest/docs/setup/install/ to add Istio to your Kubernetes cluster.

To configure the istioctl client tool for your workstation,
add the /var/folders/93/my764hls7b3_7yp46_vbkf9w0000gn/T/tmp.BpyRdZ9UV5/istio-1.20.0/bin directory to your environment path variable with:
	 export PATH="$PATH:/var/folders/93/my764hls7b3_7yp46_vbkf9w0000gn/T/tmp.BpyRdZ9UV5/istio-1.20.0/bin"

Begin the Istio pre-installation check by running:
	 istioctl x precheck

Need more information? Visit https://istio.io/latest/docs/setup/install/
cp /var/folders/93/my764hls7b3_7yp46_vbkf9w0000gn/T/tmp.BpyRdZ9UV5/istio-1.20.0/bin/istioctl /Users/dd/Projects/RedHat/kuadrant-operator/bin/istioctl
rm -rf /var/folders/93/my764hls7b3_7yp46_vbkf9w0000gn/T/tmp.BpyRdZ9UV5
/Users/dd/Projects/RedHat/kuadrant-operator/bin/istioctl operator init
Installing operator controller in namespace: istio-operator using image: docker.io/istio/operator:1.20.0
Operator controller will watch namespaces: istio-system
✔ Istio operator installed
✔ Installation complete
kubectl apply -f config/dependencies/istio/istio-operator.yaml
istiooperator.install.istio.io/istiocontrolplane created
/Applications/Xcode.app/Contents/Developer/usr/bin/make install-cert-manager
/Users/dd/Projects/RedHat/kuadrant-operator/bin/kustomize build config/dependencies/cert-manager | kubectl apply -f -
namespace/cert-manager created
customresourcedefinition.apiextensions.k8s.io/certificaterequests.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/certificates.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/challenges.acme.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/clusterissuers.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/issuers.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/orders.acme.cert-manager.io created
serviceaccount/cert-manager created
serviceaccount/cert-manager-cainjector created
serviceaccount/cert-manager-webhook created
role.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving created
role.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection created
role.rbac.authorization.k8s.io/cert-manager:leaderelection created
clusterrole.rbac.authorization.k8s.io/cert-manager-cainjector created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-approve:cert-manager-io created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-certificates created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-certificatesigningrequests created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-challenges created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-issuers created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-orders created
clusterrole.rbac.authorization.k8s.io/cert-manager-edit created
clusterrole.rbac.authorization.k8s.io/cert-manager-view created
clusterrole.rbac.authorization.k8s.io/cert-manager-webhook:subjectaccessreviews created
rolebinding.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving created
rolebinding.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection created
rolebinding.rbac.authorization.k8s.io/cert-manager:leaderelection created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-cainjector created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-approve:cert-manager-io created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-certificates created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-certificatesigningrequests created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-challenges created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-issuers created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-orders created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-webhook:subjectaccessreviews created
configmap/cert-manager-webhook created
service/cert-manager created
service/cert-manager-webhook created
deployment.apps/cert-manager created
deployment.apps/cert-manager-cainjector created
deployment.apps/cert-manager-webhook created
mutatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook created
validatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook created
kubectl -n cert-manager wait --timeout=300s --for=condition=Available deployments --all
deployment.apps/cert-manager condition met
deployment.apps/cert-manager-cainjector condition met
deployment.apps/cert-manager-webhook condition met
/Applications/Xcode.app/Contents/Developer/usr/bin/make deploy-gateway
/Users/dd/Projects/RedHat/kuadrant-operator/bin/kustomize build config/dependencies/gateway-api/gateway | kubectl apply -f -
gateway.gateway.networking.k8s.io/istio-ingressgateway created
./utils/install-operator-sdk.sh /Users/dd/Projects/RedHat/kuadrant-operator/bin/operator-sdk v1.32.0
Disabling ipv6 for gpg on mac
Downloading https://github.com/operator-framework/operator-sdk/releases/download/v1.32.0/operator-sdk_darwin_arm64
gpg: key 052996E2A20B5C7E: "Operator SDK (release) <[email protected]>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1
gpg: assuming signed data in 'checksums.txt'
gpg: Signature made Thu Oct  5 22:06:56 2023 CEST
gpg:                using RSA key 8613DB87A5BA825EF3FD0EBE2A859D08BF9886DB
gpg: Good signature from "Operator SDK (release) <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 3B2F 1481 D146 2380 80B3  46BB 0529 96E2 A20B 5C7E
     Subkey fingerprint: 8613 DB87 A5BA 825E F3FD  0EBE 2A85 9D08 BF98 86DB
operator-sdk_darwin_arm64: OK
/Users/dd/Projects/RedHat/kuadrant-operator/bin/operator-sdk olm install
INFO[0000] Fetching CRDs for version "latest"
INFO[0000] Fetching resources for resolved version "latest"
INFO[0003] Creating CRDs and resources
INFO[0003]   Creating CustomResourceDefinition "catalogsources.operators.coreos.com"
INFO[0003]   CustomResourceDefinition "catalogsources.operators.coreos.com" created
INFO[0003]   Creating CustomResourceDefinition "clusterserviceversions.operators.coreos.com"
INFO[0004]   CustomResourceDefinition "clusterserviceversions.operators.coreos.com" created
INFO[0004]   Creating CustomResourceDefinition "installplans.operators.coreos.com"
INFO[0004]   CustomResourceDefinition "installplans.operators.coreos.com" created
INFO[0004]   Creating CustomResourceDefinition "olmconfigs.operators.coreos.com"
INFO[0004]   CustomResourceDefinition "olmconfigs.operators.coreos.com" created
INFO[0004]   Creating CustomResourceDefinition "operatorconditions.operators.coreos.com"
INFO[0004]   CustomResourceDefinition "operatorconditions.operators.coreos.com" created
INFO[0004]   Creating CustomResourceDefinition "operatorgroups.operators.coreos.com"
INFO[0004]   CustomResourceDefinition "operatorgroups.operators.coreos.com" created
INFO[0004]   Creating CustomResourceDefinition "operators.operators.coreos.com"
INFO[0004]   CustomResourceDefinition "operators.operators.coreos.com" created
INFO[0004]   Creating CustomResourceDefinition "subscriptions.operators.coreos.com"
INFO[0004]   CustomResourceDefinition "subscriptions.operators.coreos.com" created
INFO[0004]   Creating Namespace "olm"
INFO[0004]   Namespace "olm" created
INFO[0004]   Creating Namespace "operators"
INFO[0004]   Namespace "operators" created
INFO[0004]   Creating ServiceAccount "olm/olm-operator-serviceaccount"
INFO[0004]   ServiceAccount "olm/olm-operator-serviceaccount" created
INFO[0004]   Creating ClusterRole "system:controller:operator-lifecycle-manager"
INFO[0004]   ClusterRole "system:controller:operator-lifecycle-manager" created
INFO[0004]   Creating ClusterRoleBinding "olm-operator-binding-olm"
INFO[0004]   ClusterRoleBinding "olm-operator-binding-olm" created
INFO[0004]   Creating OLMConfig "cluster"
INFO[0004]     Failed to create OLMConfig "cluster". CRD is not ready yet. Retrying...
INFO[0007]   OLMConfig "cluster" created
INFO[0007]   Creating Deployment "olm/olm-operator"
INFO[0007]   Deployment "olm/olm-operator" created
INFO[0007]   Creating Deployment "olm/catalog-operator"
INFO[0007]   Deployment "olm/catalog-operator" created
INFO[0007]   Creating ClusterRole "aggregate-olm-edit"
INFO[0007]   ClusterRole "aggregate-olm-edit" created
INFO[0007]   Creating ClusterRole "aggregate-olm-view"
INFO[0007]   ClusterRole "aggregate-olm-view" created
INFO[0007]   Creating OperatorGroup "operators/global-operators"
INFO[0007]   OperatorGroup "operators/global-operators" created
INFO[0007]   Creating OperatorGroup "olm/olm-operators"
INFO[0007]   OperatorGroup "olm/olm-operators" created
INFO[0007]   Creating ClusterServiceVersion "olm/packageserver"
INFO[0007]   ClusterServiceVersion "olm/packageserver" created
INFO[0007]   Creating CatalogSource "olm/operatorhubio-catalog"
INFO[0007]   CatalogSource "olm/operatorhubio-catalog" created
INFO[0007] Waiting for deployment/olm-operator rollout to complete
INFO[0007]   Waiting for Deployment "olm/olm-operator" to rollout: 0 of 1 updated replicas are available
INFO[0023]   Deployment "olm/olm-operator" successfully rolled out
INFO[0023] Waiting for deployment/catalog-operator rollout to complete
INFO[0023]   Waiting for Deployment "olm/catalog-operator" to rollout: 0 of 1 updated replicas are available
INFO[0024]   Deployment "olm/catalog-operator" successfully rolled out
INFO[0024] Waiting for deployment/packageserver rollout to complete
INFO[0024]   Waiting for Deployment "olm/packageserver" to rollout: 0 of 2 updated replicas are available
INFO[0026]   Deployment "olm/packageserver" successfully rolled out
INFO[0026] Successfully installed OLM version "latest"

NAME                                            NAMESPACE    KIND                        STATUS
catalogsources.operators.coreos.com                          CustomResourceDefinition    Installed
clusterserviceversions.operators.coreos.com                  CustomResourceDefinition    Installed
installplans.operators.coreos.com                            CustomResourceDefinition    Installed
olmconfigs.operators.coreos.com                              CustomResourceDefinition    Installed
operatorconditions.operators.coreos.com                      CustomResourceDefinition    Installed
operatorgroups.operators.coreos.com                          CustomResourceDefinition    Installed
operators.operators.coreos.com                               CustomResourceDefinition    Installed
subscriptions.operators.coreos.com                           CustomResourceDefinition    Installed
olm                                                          Namespace                   Installed
operators                                                    Namespace                   Installed
olm-operator-serviceaccount                     olm          ServiceAccount              Installed
system:controller:operator-lifecycle-manager                 ClusterRole                 Installed
olm-operator-binding-olm                                     ClusterRoleBinding          Installed
cluster                                                      OLMConfig                   Installed
olm-operator                                    olm          Deployment                  Installed
catalog-operator                                olm          Deployment                  Installed
aggregate-olm-edit                                           ClusterRole                 Installed
aggregate-olm-view                                           ClusterRole                 Installed
global-operators                                operators    OperatorGroup               Installed
olm-operators                                   olm          OperatorGroup               Installed
packageserver                                   olm          ClusterServiceVersion       Installed
operatorhubio-catalog                           olm          CatalogSource               Installed

@didierofrivia didierofrivia added this to the v0.5.0 milestone Nov 20, 2023
@didierofrivia didierofrivia requested a review from a team as a code owner November 20, 2023 13:16
Copy link

codecov bot commented Nov 20, 2023

Codecov Report

Merging #319 (1d18d53) into main (0c9289d) will increase coverage by 0.76%.
The diff coverage is n/a.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #319      +/-   ##
==========================================
+ Coverage   64.08%   64.85%   +0.76%     
==========================================
  Files          35       35              
  Lines        3787     3787              
==========================================
+ Hits         2427     2456      +29     
+ Misses       1162     1142      -20     
+ Partials      198      189       -9     
Flag Coverage Δ
integration 70.70% <ø> (+1.43%) ⬆️
unit 58.20% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
api/v1beta1 (u) ∅ <ø> (∅)
pkg/common (u) 73.92% <ø> (ø)
pkg/istio (u) 30.24% <ø> (ø)
pkg/log (u) 31.81% <ø> (ø)
pkg/reconcilers (u) 33.68% <ø> (ø)
pkg/rlptools (u) 56.41% <ø> (ø)
controllers (i) 70.70% <ø> (+1.43%) ⬆️

see 5 files with indirect coverage changes

Copy link
Contributor

@Boomatang Boomatang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verification steps lined up with what I got locally. All seems to be working as expected.

The one thing I will add is I was not able to reproduce the bug that this is meant to be solving. I tried multiply version of the operator sdk.

@didierofrivia didierofrivia merged commit 7cc1390 into main Nov 22, 2023
21 checks passed
@didierofrivia didierofrivia deleted the upgrade-operatorsdk-1.32.0 branch November 22, 2023 08:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Status: To test
Development

Successfully merging this pull request may close these issues.

Upgrade operator-sdk to v1.31+
2 participants