@@ -20,15 +20,14 @@ import (
20
20
"context"
21
21
"fmt"
22
22
sysos "os"
23
- "regexp"
24
- "strings"
25
23
26
24
"github.com/gophercloud/gophercloud/v2"
27
25
"github.com/gophercloud/gophercloud/v2/openstack/compute/v2/servers"
28
26
v1 "k8s.io/api/core/v1"
29
27
cloudprovider "k8s.io/cloud-provider"
30
28
"k8s.io/cloud-provider-openstack/pkg/client"
31
29
"k8s.io/cloud-provider-openstack/pkg/metrics"
30
+ "k8s.io/cloud-provider-openstack/pkg/util"
32
31
"k8s.io/cloud-provider-openstack/pkg/util/errors"
33
32
"k8s.io/klog/v2"
34
33
)
@@ -109,23 +108,6 @@ func (i *InstancesV2) InstanceShutdown(ctx context.Context, node *v1.Node) (bool
109
108
return false , nil
110
109
}
111
110
112
- func sanitizeLabel (input string ) (string , error ) {
113
- // Replace non-alphanumeric characters (except '-', '_', '.') with '-'
114
- reg := regexp .MustCompile (`[^-a-zA-Z0-9_.]+` )
115
- sanitized := reg .ReplaceAllString (input , "-" )
116
-
117
- // Ensure the label starts and ends with an alphanumeric character
118
- sanitized = strings .Trim (sanitized , "-_." )
119
-
120
- // Ensure the label is not longer than 63 characters
121
- if len (sanitized ) > 63 {
122
- sanitized = sanitized [:63 ]
123
- }
124
-
125
- // Convert to lowercase
126
- return strings .ToLower (sanitized ), nil
127
- }
128
-
129
111
// InstanceMetadata returns the instance's metadata.
130
112
func (i * InstancesV2 ) InstanceMetadata (ctx context.Context , node * v1.Node ) (* cloudprovider.InstanceMetadata , error ) {
131
113
srv , err := i .getInstance (ctx , node )
@@ -152,7 +134,7 @@ func (i *InstancesV2) InstanceMetadata(ctx context.Context, node *v1.Node) (*clo
152
134
return nil , err
153
135
}
154
136
155
- availabilityZone , err := sanitizeLabel (server .AvailabilityZone )
137
+ availabilityZone , err := util . SanitizeLabel (server .AvailabilityZone )
156
138
if err != nil {
157
139
return nil , err
158
140
}
0 commit comments