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

hack/cleanup-ag: spurious affinity group cleaner #302

Merged
merged 7 commits into from
Aug 4, 2023
Merged

Conversation

rohityadavcloud
Copy link
Member

Issue #, if available:

Related to #240

Description of changes:
This cleanup tool helps to remove CloudStack affinity groups from CAPC management cluster which are not assigned to any instances, which may have been created as a side effect of other operations. This tool checks all the cloudstackaffinitygroups using its CloudStack cluster specific credential(s) and uses cmk to check if the affinity group have no instances assigned. In dry-run, it outputs such affinity groups otherwise it deletes them.

Testing performed:

  • Created a CAPC cluster with affinity groups specified as anti or pro
spec:
  template:
    spec:
      affinity: anti
      offering:
        name: Large
      template:
        name: rockylinux-8-kube-v1.27.2-kvm
  • Delete the machine deployment to simulate upgrade or similar operations
kubectl delete  machinedeployment capc-cluster-md-0
  • Re-applied the capc-cluster yaml, to see new machines being deployed and new affinity groups created
  • However, older affinity groups aren't cleaned up
  • Install dependencies for this tool such as cmk and jq (note: cmk should be latest from main branch or get this pre-rc build: https://github.com/apache/cloudstack-cloudmonkey/releases/tag/6.4.0-rc1)
  • Run this tool in dry-run mode:
./cleanup-ag.sh -d
Checking CloudStack Affinity Group: antiaffinity-capc-cluster-control-plane-746e19e9-ea06-4ca3-b9b1-ebeb4753e6c7-failure-domain-1
Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8x946qk-c7a7a6d9-7d3d-480d-8d46-ff8260b8cd7f-failure-domain-1
Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xfph69-915f82e5-e346-4324-8dd6-b793ea6768e5-failure-domain-1
Found Affinity Group (4db6e60d-942d-48b9-9e8d-f27a911ceaf4) with no instances assigned: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xfph69-915f82e5-e346-4324-8dd6-b793ea6768e5-failure-domain-1
[DRY RUN] Affinity Group (4db6e60d-942d-48b9-9e8d-f27a911ceaf4) antiaffinity-capc-cluster-md-0-7f8d8bf7c8xfph69-915f82e5-e346-4324-8dd6-b793ea6768e5-failure-domain-1 has been removed
Checking CloudStack Affinity Group: proaffinity-capc-cluster2-control-plane-f3cab1ca-32a0-4a41-ad2f-a681bd5a60c8-failure-domain-1
Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dx445dq-df4594c2-9b98-44ab-8901-acfadf68445e-failure-domain-1
Found Affinity Group (a7ea7e9f-b7c8-4607-bc15-3ebe9bc95594) with no instances assigned: proaffinity-capc-cluster2-md-0-74f9cbf9dx445dq-df4594c2-9b98-44ab-8901-acfadf68445e-failure-domain-1
[DRY RUN] Affinity Group (a7ea7e9f-b7c8-4607-bc15-3ebe9bc95594) proaffinity-capc-cluster2-md-0-74f9cbf9dx445dq-df4594c2-9b98-44ab-8901-acfadf68445e-failure-domain-1 has been removed
Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxdqk85-160cd89f-4361-4db4-aaf0-e93c28a0dae0-failure-domain-1
Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxlxx6c-bf59c3c6-bc8d-44e6-917f-ececf69e75bb-failure-domain-1
Found Affinity Group (c800d58c-31a8-493c-b45e-94a8e9f5a149) with no instances assigned: proaffinity-capc-cluster2-md-0-74f9cbf9dxlxx6c-bf59c3c6-bc8d-44e6-917f-ececf69e75bb-failure-domain-1
[DRY RUN] Affinity Group (c800d58c-31a8-493c-b45e-94a8e9f5a149) proaffinity-capc-cluster2-md-0-74f9cbf9dxlxx6c-bf59c3c6-bc8d-44e6-917f-ececf69e75bb-failure-domain-1 has been removed
  • Next, run the tool to cleanup:
> ./cleanup-ag.sh
Checking CloudStack Affinity Group: antiaffinity-capc-cluster-control-plane-746e19e9-ea06-4ca3-b9b1-ebeb4753e6c7-failure-domain-1
Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8x946qk-c7a7a6d9-7d3d-480d-8d46-ff8260b8cd7f-failure-domain-1
Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xfph69-915f82e5-e346-4324-8dd6-b793ea6768e5-failure-domain-1
Found Affinity Group (4db6e60d-942d-48b9-9e8d-f27a911ceaf4) with no instances assigned: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xfph69-915f82e5-e346-4324-8dd6-b793ea6768e5-failure-domain-1
cloudstackaffinitygroup.infrastructure.cluster.x-k8s.io "antiaffinity-capc-cluster-md-0-7f8d8bf7c8xfph69-915f82e5-e346-4324-8dd6-b793ea6768e5-failure-domain-1" deleted
Affinity Group (4db6e60d-942d-48b9-9e8d-f27a911ceaf4) antiaffinity-capc-cluster-md-0-7f8d8bf7c8xfph69-915f82e5-e346-4324-8dd6-b793ea6768e5-failure-domain-1 has been removed
Checking CloudStack Affinity Group: proaffinity-capc-cluster2-control-plane-f3cab1ca-32a0-4a41-ad2f-a681bd5a60c8-failure-domain-1
Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dx445dq-df4594c2-9b98-44ab-8901-acfadf68445e-failure-domain-1
Found Affinity Group (a7ea7e9f-b7c8-4607-bc15-3ebe9bc95594) with no instances assigned: proaffinity-capc-cluster2-md-0-74f9cbf9dx445dq-df4594c2-9b98-44ab-8901-acfadf68445e-failure-domain-1
cloudstackaffinitygroup.infrastructure.cluster.x-k8s.io "proaffinity-capc-cluster2-md-0-74f9cbf9dx445dq-df4594c2-9b98-44ab-8901-acfadf68445e-failure-domain-1" deleted
Affinity Group (a7ea7e9f-b7c8-4607-bc15-3ebe9bc95594) proaffinity-capc-cluster2-md-0-74f9cbf9dx445dq-df4594c2-9b98-44ab-8901-acfadf68445e-failure-domain-1 has been removed
Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxdqk85-160cd89f-4361-4db4-aaf0-e93c28a0dae0-failure-domain-1
Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxlxx6c-bf59c3c6-bc8d-44e6-917f-ececf69e75bb-failure-domain-1
Found Affinity Group (c800d58c-31a8-493c-b45e-94a8e9f5a149) with no instances assigned: proaffinity-capc-cluster2-md-0-74f9cbf9dxlxx6c-bf59c3c6-bc8d-44e6-917f-ececf69e75bb-failure-domain-1
cloudstackaffinitygroup.infrastructure.cluster.x-k8s.io "proaffinity-capc-cluster2-md-0-74f9cbf9dxlxx6c-bf59c3c6-bc8d-44e6-917f-ececf69e75bb-failure-domain-1" deleted
Affinity Group (c800d58c-31a8-493c-b45e-94a8e9f5a149) proaffinity-capc-cluster2-md-0-74f9cbf9dxlxx6c-bf59c3c6-bc8d-44e6-917f-ececf69e75bb-failure-domain-1 has been removed

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

This cleanup tool helps to remove CloudStack affinity groups from CAPC
management cluster which are not assigned to any instances, which may
have been created as a side effect of other operations. This tool checks
all the cloudstackaffinitygroups using its CloudStack cluster specific
credential(s) and uses cmk to check if the affinity group have no
instances assigned. In dry-run, it outputs such affinity groups
otherwise it deletes them.

Signed-off-by: Rohit Yadav <[email protected]>
@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Aug 3, 2023
@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 3, 2023
@netlify
Copy link

netlify bot commented Aug 3, 2023

Deploy Preview for kubernetes-sigs-cluster-api-cloudstack ready!

Name Link
🔨 Latest commit 1fa2dba
🔍 Latest deploy log https://app.netlify.com/sites/kubernetes-sigs-cluster-api-cloudstack/deploys/64cbdf9b03ecda0008995d12
😎 Deploy Preview https://deploy-preview-302--kubernetes-sigs-cluster-api-cloudstack.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Aug 3, 2023
@rohityadavcloud
Copy link
Member Author

/assign @vishesh92

cc @kiranchavala

@codecov-commenter
Copy link

codecov-commenter commented Aug 3, 2023

Codecov Report

Patch and project coverage have no change.

Comparison is base (58fad9f) 24.95% compared to head (1fa2dba) 24.95%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #302   +/-   ##
=======================================
  Coverage   24.95%   24.95%           
=======================================
  Files          59       59           
  Lines        5558     5558           
=======================================
  Hits         1387     1387           
  Misses       4035     4035           
  Partials      136      136           

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

hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
Signed-off-by: Rohit Yadav <[email protected]>
@rohityadavcloud
Copy link
Member Author

Thanks @weizhouapache @vishesh92 - incorporated your comments, pl re-review.

Signed-off-by: Rohit Yadav <[email protected]>
Signed-off-by: Rohit Yadav <[email protected]>
Signed-off-by: Rohit Yadav <[email protected]>
@rohityadavcloud
Copy link
Member Author

/hold

Holding for manual QA cc @kiranchavala

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 3, 2023
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
hack/cleanup-ag.sh Outdated Show resolved Hide resolved
Signed-off-by: Rohit Yadav <[email protected]>
@rohityadavcloud
Copy link
Member Author

rohityadavcloud commented Aug 3, 2023

Thanks @chrisdoherty4 I've addressed the comments;

Sample output:

> ./cleanup-affinity-groups.sh -n default -v -d
[debug] [options] DRY_RUN=true
[debug] [options] VERBOSE=true
[debug] [options] NAMESPACE=default
[debug] [options] KUBECONFIG=/Users/rohit/.kube/config
[debug] Affinity groups in the namespace default:
antiaffinity-capc-cluster-control-plane-746e19e9-ea06-4ca3-b9b1-ebeb4753e6c7-failure-domain-1
antiaffinity-capc-cluster-md-0-7f8d8bf7c8x9hgbs-87c66d26-2f3c-4270-80b9-1ec8718a80fc-failure-domain-1
antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1
proaffinity-capc-cluster2-control-plane-f3cab1ca-32a0-4a41-ad2f-a681bd5a60c8-failure-domain-1
proaffinity-capc-cluster2-md-0-74f9cbf9dxj65ks-d9536d30-07dd-433d-bd93-c78e22f3a1dd-failure-domain-1
proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-control-plane-746e19e9-ea06-4ca3-b9b1-ebeb4753e6c7-failure-domain-1
[debug] Using CloudStack Control Plane URL: http://192.168.1.10:8080/client/api and CloudStack Account: capc and User: capc
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8x9hgbs-87c66d26-2f3c-4270-80b9-1ec8718a80fc-failure-domain-1
[debug] Using CloudStack Control Plane URL: http://192.168.1.10:8080/client/api and CloudStack Account: capc and User: capc
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1
[debug] Using CloudStack Control Plane URL: http://192.168.1.10:8080/client/api and CloudStack Account: capc and User: capc
[info] Found Affinity Group (2aaf526b-d27d-4881-81da-2eacaaa6af18) with no instances assigned: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1
[info] [dryrun] Affinity Group (2aaf526b-d27d-4881-81da-2eacaaa6af18) antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1 has been removed
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-control-plane-f3cab1ca-32a0-4a41-ad2f-a681bd5a60c8-failure-domain-1
[debug] Using CloudStack Control Plane URL: http://192.168.1.10:8080/client/api and CloudStack Account: capc and User: capc
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxj65ks-d9536d30-07dd-433d-bd93-c78e22f3a1dd-failure-domain-1
[debug] Using CloudStack Control Plane URL: http://192.168.1.10:8080/client/api and CloudStack Account: capc and User: capc
[info] Found Affinity Group (8461d42f-2b10-4d2b-b584-532b1cf09f0f) with no instances assigned: proaffinity-capc-cluster2-md-0-74f9cbf9dxj65ks-d9536d30-07dd-433d-bd93-c78e22f3a1dd-failure-domain-1
[info] [dryrun] Affinity Group (8461d42f-2b10-4d2b-b584-532b1cf09f0f) proaffinity-capc-cluster2-md-0-74f9cbf9dxj65ks-d9536d30-07dd-433d-bd93-c78e22f3a1dd-failure-domain-1 has been removed
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1
[debug] Using CloudStack Control Plane URL: http://192.168.1.10:8080/client/api and CloudStack Account: capc and User: capc
[info] Found Affinity Group (2da2d9e4-caf8-4a35-965f-59782512e944) with no instances assigned: proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1
[info] [dryrun] Affinity Group (2da2d9e4-caf8-4a35-965f-59782512e944) proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1 has been removed

Sample output with dryrun:

> ./cleanup-affinity-groups.sh -n default -d
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-control-plane-746e19e9-ea06-4ca3-b9b1-ebeb4753e6c7-failure-domain-1
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8x9hgbs-87c66d26-2f3c-4270-80b9-1ec8718a80fc-failure-domain-1
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1
[info] Found Affinity Group (2aaf526b-d27d-4881-81da-2eacaaa6af18) with no instances assigned: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1
[info] [dryrun] Affinity Group (2aaf526b-d27d-4881-81da-2eacaaa6af18) antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1 has been removed
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-control-plane-f3cab1ca-32a0-4a41-ad2f-a681bd5a60c8-failure-domain-1
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxj65ks-d9536d30-07dd-433d-bd93-c78e22f3a1dd-failure-domain-1
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1
[info] Found Affinity Group (2da2d9e4-caf8-4a35-965f-59782512e944) with no instances assigned: proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1
[info] [dryrun] Affinity Group (2da2d9e4-caf8-4a35-965f-59782512e944) proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1 has been removed

Sample output without dryrun or verbose:

> ./cleanup-affinity-groups.sh -n default
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-control-plane-746e19e9-ea06-4ca3-b9b1-ebeb4753e6c7-failure-domain-1
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8x9hgbs-87c66d26-2f3c-4270-80b9-1ec8718a80fc-failure-domain-1
[info] Checking CloudStack Affinity Group: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1
[info] Found Affinity Group (2aaf526b-d27d-4881-81da-2eacaaa6af18) with no instances assigned: antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1
cloudstackaffinitygroup.infrastructure.cluster.x-k8s.io "antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1" deleted
[info] Affinity Group (2aaf526b-d27d-4881-81da-2eacaaa6af18) antiaffinity-capc-cluster-md-0-7f8d8bf7c8xxbz89-e6760745-3e51-4eb0-8352-3c04ff3fc40a-failure-domain-1 has been removed
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-control-plane-f3cab1ca-32a0-4a41-ad2f-a681bd5a60c8-failure-domain-1
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxj65ks-d9536d30-07dd-433d-bd93-c78e22f3a1dd-failure-domain-1
[info] Checking CloudStack Affinity Group: proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1
[info] Found Affinity Group (2da2d9e4-caf8-4a35-965f-59782512e944) with no instances assigned: proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1
cloudstackaffinitygroup.infrastructure.cluster.x-k8s.io "proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1" deleted
[info] Affinity Group (2da2d9e4-caf8-4a35-965f-59782512e944) proaffinity-capc-cluster2-md-0-74f9cbf9dxxb468-7f429cd3-5ab5-4efe-9508-3bf75bf3f5a9-failure-domain-1 has been removed

@chrisdoherty4
Copy link
Member

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Aug 3, 2023
Copy link
Collaborator

@weizhouapache weizhouapache left a comment

Choose a reason for hiding this comment

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

lgtm

@vishesh92
Copy link
Member

lgtm

Copy link
Contributor

@kiranchavala kiranchavala left a comment

Choose a reason for hiding this comment

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

/lgtm

Tested the tool manually and its working fine with all options


./cleanup-affinity-groups.sh -d
./cleanup-affinity-groups.sh -v
./cleanup-affinity-groups.sh 
./cleanup-affinity-groups.sh -n default
./cleanup-affinity-groups.sh -n default -v -d
./cleanup-affinity-groups.sh -n default -d

@k8s-ci-robot
Copy link
Contributor

@kiranchavala: changing LGTM is restricted to collaborators

In response to this:

/lgtm

Tested the tool manually and its working fine with all options


./cleanup-affinity-groups.sh -d
./cleanup-affinity-groups.sh -v
./cleanup-affinity-groups.sh 
./cleanup-affinity-groups.sh -n default
./cleanup-affinity-groups.sh -n default -v -d
./cleanup-affinity-groups.sh -n default -d

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@rohityadavcloud
Copy link
Member Author

/unhold

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 4, 2023
@rohityadavcloud
Copy link
Member Author

/approve
/lgtm

@k8s-ci-robot
Copy link
Contributor

@rohityadavcloud: you cannot LGTM your own PR.

In response to this:

/approve
/lgtm

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: chrisdoherty4, kiranchavala, rohityadavcloud, weizhouapache

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • OWNERS [chrisdoherty4,rohityadavcloud,weizhouapache]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot merged commit 7c6e3be into main Aug 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants