diff options
Diffstat (limited to '0157-bugfix-for-nri-init.patch')
-rw-r--r-- | 0157-bugfix-for-nri-init.patch | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/0157-bugfix-for-nri-init.patch b/0157-bugfix-for-nri-init.patch new file mode 100644 index 0000000..4751173 --- /dev/null +++ b/0157-bugfix-for-nri-init.patch @@ -0,0 +1,80 @@ +From 08b996a54c6330e704cbc9271f348a62e24fe880 Mon Sep 17 00:00:00 2001 +From: zhongtao <zhongtao17@huawei.com> +Date: Wed, 18 Dec 2024 22:43:26 +1400 +Subject: [PATCH 157/158] bugfix for nri init + +Signed-off-by: zhongtao <zhongtao17@huawei.com> +--- + src/daemon/common/nri/nri_convert.cc | 7 ++++--- + src/daemon/nri/nri_plugin_ops.cc | 28 +++++++++++++--------------- + 2 files changed, 17 insertions(+), 18 deletions(-) + +diff --git a/src/daemon/common/nri/nri_convert.cc b/src/daemon/common/nri/nri_convert.cc +index d862d992..6e571d9a 100644 +--- a/src/daemon/common/nri/nri_convert.cc ++++ b/src/daemon/common/nri/nri_convert.cc +@@ -196,7 +196,6 @@ auto PodSandboxToNRI(const std::shared_ptr<const sandbox::Sandbox> &sandbox, nri + pod._namespace = util_strdup_s(sandbox->GetSandboxConfig().metadata().namespace_().c_str()); + } + +- + pod.labels = Transform::ProtobufMapToJsonMapForString(sandbox->GetSandboxConfig().labels(), tmpError); + if (pod.labels == nullptr) { + ERROR("Failed to transform labels to nri for pod : %s, : %s", pod.name, tmpError.GetMessage().c_str()); +@@ -971,9 +970,11 @@ auto ContainerToNRIByID(const std::string &id, nri_container &con) -> bool + goto out; + } + +- con.pod_sandbox_id = util_strdup_s(cont->common_config->sandbox_info->id); +- ret = true; ++ if (cont->common_config->sandbox_info!= nullptr && cont->common_config->sandbox_info->id != nullptr) { ++ con.pod_sandbox_id = util_strdup_s(cont->common_config->sandbox_info->id); ++ } + ++ ret = true; + out: + container_unref(cont); + return ret; +diff --git a/src/daemon/nri/nri_plugin_ops.cc b/src/daemon/nri/nri_plugin_ops.cc +index e2f88b63..7953f7de 100644 +--- a/src/daemon/nri/nri_plugin_ops.cc ++++ b/src/daemon/nri/nri_plugin_ops.cc +@@ -42,22 +42,20 @@ bool nri_adaption_init(void) + { + Errors error; + +- if (!conf_get_nri_support()) { +- return true; +- } +- +- nri_runtime_callbacks callbacks; +- callbacks.register_plugin = nri_registry_containers; +- callbacks.update_containers = nri_update_containers; +- if (nri_runtime_service_init(callbacks) != 0) { +- ERROR("Failed to init runtime service\n"); +- return false; +- } ++ if (conf_get_nri_support()) { ++ nri_runtime_callbacks callbacks; ++ callbacks.register_plugin = nri_registry_containers; ++ callbacks.update_containers = nri_update_containers; ++ if (nri_runtime_service_init(callbacks) != 0) { ++ ERROR("Failed to init runtime service\n"); ++ return false; ++ } + +- if (conf_get_nri_external_support()) { +- if (!start_external_listener()) { +- ERROR("Failed to start external listener\n"); +- goto clean_out; ++ if (conf_get_nri_external_support()) { ++ if (!start_external_listener()) { ++ ERROR("Failed to start external listener\n"); ++ goto clean_out; ++ } + } + } + +-- +2.25.1 + |