]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
k8s: Fix clusterIP when we restore a headless service.
authorEric Bollengier <eric@baculasystems.com>
Wed, 19 Jul 2023 15:29:23 +0000 (17:29 +0200)
committerEric Bollengier <eric@baculasystems.com>
Thu, 14 Sep 2023 11:57:01 +0000 (13:57 +0200)
bacula/src/plugins/fd/kubernetes-backend/baculak8s/plugins/k8sbackend/service.py

index 8e59d1ee8dbaf481994bdf189d1b2ff7b300f283..955ad05aaec0acbbbbbd6babb0fc11e8cf1d7397 100644 (file)
@@ -58,11 +58,14 @@ def services_restore_namespaced(corev1api, file_info, file_content):
         spec=srv.spec,
         metadata=metadata
     )
-    # clean some data
-    services.spec.cluster_ip = None
-    # When libraries were upgraded to kubernetes 26, this change was needed.
-    if services.spec.cluster_i_ps:
-        services.spec.cluster_i_ps  = None
+    # If it is headless service, we need put 'None' in cluster_ip.
+    # In other case, we need put None to assign another IP in cluster.
+    if services.spec.cluster_ip != 'None':
+        # clean some data
+        services.spec.cluster_ip = None
+        # When libraries were upgraded to kubernetes 26, this change was needed.
+        if services.spec.cluster_i_ps:
+            services.spec.cluster_i_ps  = None
     if file_info.objcache is not None:
         # object exist so we replace it
         response = corev1api.replace_namespaced_service(k8sfile2objname(file_info.name),