From dd8e82b37c380b3b661903ed39b3c8a9537b018c Mon Sep 17 00:00:00 2001 From: Travis Glenn Hansen Date: Fri, 24 Sep 2021 10:18:06 -0600 Subject: [PATCH] use csi handle instead of name, use lodash for more robust behavior Signed-off-by: Travis Glenn Hansen --- bin/k8s-csi-cleaner | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/bin/k8s-csi-cleaner b/bin/k8s-csi-cleaner index 84d6616..b4459cc 100755 --- a/bin/k8s-csi-cleaner +++ b/bin/k8s-csi-cleaner @@ -18,6 +18,7 @@ * CSI_ENDPOINT="localhost:50051" */ +const _ = require("lodash"); const k8s = require("@kubernetes/client-node"); const prompt = require("prompt"); @@ -43,7 +44,8 @@ var protoDescriptor = grpc.loadPackageDefinition(packageDefinition); var csi = protoDescriptor.csi.v1; //console.log(csi); -var connectionEndpoint = process.env.CSI_ENDPOINT || "unix:///csi-data/csi.sock"; +var connectionEndpoint = + process.env.CSI_ENDPOINT || "unix:///csi-data/csi.sock"; var clientIdentity = new csi.Identity( connectionEndpoint, @@ -124,10 +126,10 @@ async function main() { let volume_id = csiVolume.volume.volume_id; //console.log(`processing csi volume ${volume_id}`); let k8sVolume = k8sVolumes.find((i_k8sVolume) => { - return i_k8sVolume.metadata.name == volume_id; + let volume_handle = _.get(i_k8sVolume, "spec.csi.volumeHandle", null); + return volume_handle == volume_id; }); - //let delete = false; if (!k8sVolume) { console.log(`volume ${volume_id} is NOT in k8s`); if (process.env.DRY_RUN == "1") {