From 29b71272c604d57a6fc6ab67341bde3a16a56d70 Mon Sep 17 00:00:00 2001 From: Alejandro Tjaarda <alexdecb@yahoo.es> Date: Tue, 1 Oct 2024 22:41:31 +0000 Subject: [PATCH] operator: implemented bridge generation method that allows compliant name generation --- src/kubernetes-api/internal/utils/utils.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/kubernetes-api/internal/utils/utils.go b/src/kubernetes-api/internal/utils/utils.go index 11553e9..6568881 100644 --- a/src/kubernetes-api/internal/utils/utils.go +++ b/src/kubernetes-api/internal/utils/utils.go @@ -103,3 +103,19 @@ func GenerateDatapathID(switchName string) string { return dpid } + +type BridgeParams struct { + NodeName string + ProviderName string +} + +func GetBridgeName(params BridgeParams) string { + hash := sha256.New() + hash.Write([]byte(fmt.Sprintf("%s%s", params.NodeName, params.ProviderName))) + hashedBytes := hash.Sum(nil) + dpidBytes := hashedBytes[:4] + + // Convert the bytes to a hexadecimal string + dpid := hex.EncodeToString(dpidBytes) + return fmt.Sprintf("br-%s", dpid) +} -- GitLab