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

Update component versions for CAPI, Kind, and other dependencies #383

Merged
merged 6 commits into from
Mar 12, 2024

Conversation

thunderboltsid
Copy link
Contributor

@thunderboltsid thunderboltsid commented Feb 22, 2024

Now that our EL9 build clusters are up and running and we can use newer versions of kind to spin up bootstrap cluster, we can finally update the CAPI, Kind, and other component versions in our toolchain.

  • Update CAPI to v1.6.2
  • Update Kind to v0.22.0
  • Update Kubernetes client-go to v0.29.2
  • Update Go to v1.22.1
  • Update Ko to v0.15.2
  • Update kubernetes-controller-tools to 0.13.0
  • Update customise to v5.3.0
  • Update yamllint to v1.3.5

Due to modification of versions certain small code changes had to account for new constants and function signatures in newer dependencies. However that triggered failures in our codecov as a lot of these changes were in main.go. As a result, main.go had to be refactored to be more unit-testable to increase code coverage to hit the patch coverage prerequisite.

Note: --metrics-bind-address flag has been removed and --diagnostics-address and --insecure-diagnostics have been added instead.

How has this been tested?

@thunderboltsid
Copy link
Contributor Author

/hold

@thunderboltsid thunderboltsid changed the title Update test/e2e/config/nutanix.yaml [WIP] Update test/e2e/config/nutanix.yaml Feb 22, 2024
Copy link

codecov bot commented Feb 23, 2024

Codecov Report

Attention: Patch coverage is 76.19048% with 15 lines in your changes are missing coverage. Please review.

Project coverage is 25.63%. Comparing base (55e8e38) to head (1c95fc9).

Files Patch % Lines
main.go 77.58% 13 Missing ⚠️
controllers/nutanixmachine_controller.go 0.00% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #383      +/-   ##
==========================================
+ Coverage   20.37%   25.63%   +5.25%     
==========================================
  Files          17       19       +2     
  Lines        1212     1303      +91     
==========================================
+ Hits          247      334      +87     
- Misses        965      969       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@thunderboltsid
Copy link
Contributor Author

/retest

@thunderboltsid
Copy link
Contributor Author

This is the underlying failure before the CI build cluster upgrade

INFO: Creating a kind cluster with name "test-q1ktgr"
Creating cluster "test-q1ktgr" ...
 • Ensuring node image (kindest/node:v1.27.1) 🖼  ...
 ✓ Ensuring node image (kindest/node:v1.27.1) 🖼
 • Preparing nodes 📦   ...
 ✗ Preparing nodes 📦 
  INFO: Failed to collect logs from kind: [command "docker exec --privileged test-q1ktgr-control-plane sh -c 'tar --hard-dereference -C /var/log/ -chf - . || (r=$?; [ $r -eq 1 ] || exit $r)'" failed with error: exit status 1, [command "docker exec --privileged test-q1ktgr-control-plane journalctl --no-pager -u kubelet.service" failed with error: exit status 1, command "docker exec --privileged test-q1ktgr-control-plane journalctl --no-pager" failed with error: exit status 1, command "docker exec --privileged test-q1ktgr-control-plane crictl images" failed with error: exit status 1, command "docker exec --privileged test-q1ktgr-control-plane journalctl --no-pager -u containerd.service" failed with error: exit status 1, command "docker exec --privileged test-q1ktgr-control-plane cat /kind/version" failed with error: exit status 1]]
  �[38;5;9m[FAILED]�[0m in [SynchronizedBeforeSuite] - /home/prow/go/pkg/mod/sigs.k8s.io/cluster-api/test@v1.6.2/framework/bootstrap/kind_provider.go:183 �[38;5;243m@ 02/23/24 02:22:51.838�[0m
�[38;5;9m[SynchronizedBeforeSuite] [FAILED] [56.569 seconds]�[0m
�[38;5;9m�[1m[SynchronizedBeforeSuite] �[0m
�[38;5;243m/home/prow/go/src/github.com/nutanix-cloud-native/cluster-api-provider-nutanix/test/e2e/e2e_suite_test.go:63�[0m

  �[38;5;9m[FAILED] Failed to create kind cluster "test-q1ktgr": command "docker run --name test-q1ktgr-control-plane --hostname test-q1ktgr-control-plane --label io.x-k8s.kind.role=control-plane --privileged --security-opt seccomp=unconfined --security-opt apparmor=unconfined --tmpfs /tmp --tmpfs /run --volume /var --volume /lib/modules:/lib/modules:ro -e KIND_EXPERIMENTAL_CONTAINERD_SNAPSHOTTER --detach --tty --label io.x-k8s.kind.cluster=test-q1ktgr --net kind --restart=on-failure:1 --init=false --cgroupns=private --publish=127.0.0.1:43709:6443/TCP -e KUBECONFIG=/etc/kubernetes/admin.conf kindest/node:v1.27.1" failed with error: exit status 125
  WARNING: Your kernel does not support cgroup namespaces.  Cgroup namespace setting discarded.
  125a72046af9e1b497c484ed5327bc245fee1ec2d935fdbae313d777bd7b6b64
  docker: Error response from daemon: OCI runtime create failed: cgroup namespaces aren't enabled in the kernel: unknown.

Next week we are planning on adding a new build cluster to prow that's a EL9 NKE-X which shouldn't have this issue.

@thunderboltsid thunderboltsid force-pushed the jira/krbn-7870 branch 4 times, most recently from 9bbdd57 to 4d037c8 Compare March 7, 2024 19:30
@thunderboltsid thunderboltsid changed the title [WIP] Update test/e2e/config/nutanix.yaml Update component versions for devbox dependencies Mar 7, 2024
@thunderboltsid
Copy link
Contributor Author

/hold cancel

@thunderboltsid thunderboltsid force-pushed the jira/krbn-7870 branch 2 times, most recently from 59074fb to 9dccdc7 Compare March 7, 2024 19:50
@thunderboltsid
Copy link
Contributor Author

/test e2e-capx-conformance

@thunderboltsid
Copy link
Contributor Author

/test e2e-k8s-upgrade

@thunderboltsid thunderboltsid changed the title Update component versions for devbox dependencies Update component versions for CAPI, Kind, and other dependencies Mar 7, 2024
@thunderboltsid
Copy link
Contributor Author

/test e2e-capx-controller-upgrade

main.go Show resolved Hide resolved
@thunderboltsid
Copy link
Contributor Author

/retest

@thunderboltsid
Copy link
Contributor Author

/hold

api/v1alpha4/nutanixcluster_conversion.go Show resolved Hide resolved
controllers/nutanixmachine_controller.go Show resolved Hide resolved
main.go Outdated Show resolved Hide resolved
test/e2e/projects_test.go Outdated Show resolved Hide resolved
api/v1alpha4/nutanixcluster_conversion.go Outdated Show resolved Hide resolved
- Move from k8s.io/utils/pointer to k8s.io/utils/ptr as pointer will
  be deprecated in the coming release.
@thunderboltsid thunderboltsid requested a review from dkoshkin March 8, 2024 12:30
@thunderboltsid
Copy link
Contributor Author

/retest

@thunderboltsid
Copy link
Contributor Author

/test e2e-capx-conformance

@thunderboltsid
Copy link
Contributor Author

the PE credentials had expired causing CSI failures and had to be rotated.
/test e2e-capx-conformance

@thunderboltsid
Copy link
Contributor Author

/hold cancel

@thunderboltsid
Copy link
Contributor Author

/retest

@deepakm-ntnx
Copy link
Contributor

@thunderboltsid
Copy link
Contributor Author

/retest

@thunderboltsid
Copy link
Contributor Author

/test e2e-k8s-conformance

Copy link
Contributor

@tuxtof tuxtof left a comment

Choose a reason for hiding this comment

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

/lgtm /approve

@thunderboltsid thunderboltsid merged commit 0825847 into main Mar 12, 2024
12 of 13 checks passed
@thunderboltsid thunderboltsid deleted the jira/krbn-7870 branch March 12, 2024 12:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants