From 48e38d0b725df3b53501a157a32dfa9540a6ea98 Mon Sep 17 00:00:00 2001 From: Never Date: Thu, 26 Aug 2021 15:10:39 +0800 Subject: [PATCH] fix : check if metadata.annotations is null --- .../client/extended/kubectl/KubectlRollout.java | 9 +++++---- .../kubectl/util/deployment/DeploymentHelper.java | 1 + 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/extended/src/main/java/io/kubernetes/client/extended/kubectl/KubectlRollout.java b/extended/src/main/java/io/kubernetes/client/extended/kubectl/KubectlRollout.java index 31a4cf41c0..b861345822 100644 --- a/extended/src/main/java/io/kubernetes/client/extended/kubectl/KubectlRollout.java +++ b/extended/src/main/java/io/kubernetes/client/extended/kubectl/KubectlRollout.java @@ -148,8 +148,7 @@ private void deploymentViewHistory(V1Deployment deployment, AppsV1Api api) throw List revisions = new ArrayList<>(historyInfo.keySet()); revisions.sort(Long::compareTo); for (Long revision : revisions) { - String changeCause = - historyInfo.get(revision).getMetadata().getAnnotations().get(CHANGE_CAUSE_ANNOTATION); + String changeCause = getChangeCause(historyInfo.get(revision).getMetadata()); if (changeCause == null || changeCause.isEmpty()) { changeCause = ""; } @@ -214,8 +213,7 @@ private void parseHistory(List historyList, PodTemplatePar List revisions = new ArrayList<>(historyInfo.keySet()); revisions.sort(Long::compareTo); for (Long revision : revisions) { - String changeCause = - historyInfo.get(revision).getMetadata().getAnnotations().get(CHANGE_CAUSE_ANNOTATION); + String changeCause = getChangeCause(historyInfo.get(revision).getMetadata()); if (changeCause == null || changeCause.isEmpty()) { changeCause = ""; } @@ -250,6 +248,9 @@ private boolean isControlledBy(KubernetesObject obj, KubernetesObject owner) { // getChangeCause returns the change-cause annotation of the input object private String getChangeCause(V1ObjectMeta meta) { + if (meta.getAnnotations() == null) { + return null; + } return meta.getAnnotations().get(CHANGE_CAUSE_ANNOTATION); } diff --git a/extended/src/main/java/io/kubernetes/client/extended/kubectl/util/deployment/DeploymentHelper.java b/extended/src/main/java/io/kubernetes/client/extended/kubectl/util/deployment/DeploymentHelper.java index 3ab0453ca7..60890eaa28 100644 --- a/extended/src/main/java/io/kubernetes/client/extended/kubectl/util/deployment/DeploymentHelper.java +++ b/extended/src/main/java/io/kubernetes/client/extended/kubectl/util/deployment/DeploymentHelper.java @@ -64,6 +64,7 @@ public static V1ReplicaSet getAllReplicaSets( * @return the revision number */ public static Long revision(V1ObjectMeta meta) { + if (meta.getAnnotations() == null) return 0L; String v = meta.getAnnotations().get(REVISION_ANNOTATION); return v == null ? 0L : Long.parseLong(v); }