Skip to content

Commit 2c5b983

Browse files
committed
fix: address coderabbit review comments
1 parent 00087f1 commit 2c5b983

2 files changed

Lines changed: 31 additions & 4 deletions

File tree

test/extended/edge_topologies/utils/apis/baremetalhost.go

Lines changed: 28 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,37 @@ func FindFencingCredentialsByNodeName(oc *exutil.CLI, nodeName string) (*Fencing
4646
return nil, fmt.Errorf("list secrets in %s: %w", FencingCredentialsNamespace, err)
4747
}
4848

49+
expected := map[string]struct{}{
50+
fencingCredentialsPrefix + shortName: {},
51+
fencingCredentialsPrefix + nodeName: {},
52+
}
53+
4954
for _, secret := range list.Items {
50-
if strings.HasPrefix(secret.Name, fencingCredentialsPrefix) && strings.Contains(secret.Name, shortName) {
55+
if _, ok := expected[secret.Name]; ok {
56+
getRequired := func(key string) (string, error) {
57+
v, exists := secret.Data[key]
58+
if !exists || len(v) == 0 {
59+
return "", fmt.Errorf("secret %s missing required key %q", secret.Name, key)
60+
}
61+
return string(v), nil
62+
}
63+
address, err := getRequired("address")
64+
if err != nil {
65+
return nil, err
66+
}
67+
username, err := getRequired("username")
68+
if err != nil {
69+
return nil, err
70+
}
71+
password, err := getRequired("password")
72+
if err != nil {
73+
return nil, err
74+
}
5175
return &FencingCredentials{
5276
SecretName: secret.Name,
53-
Address: string(secret.Data["address"]),
54-
Username: string(secret.Data["username"]),
55-
Password: string(secret.Data["password"]),
77+
Address: address,
78+
Username: username,
79+
Password: password,
5680
CertificateVerification: string(secret.Data["certificateVerification"]),
5781
}, nil
5882
}

test/extended/edge_topologies/utils/apis/redfish.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ import (
1414
// ParseRedfishAddress parses a Redfish address into its components.
1515
// Input format: "redfish+https://host:port/redfish/v1/Systems/1" (IPv6 uses bracket notation).
1616
func ParseRedfishAddress(address string) (host, port, path string, err error) {
17+
if !strings.HasPrefix(address, "redfish+") {
18+
return "", "", "", fmt.Errorf("invalid Redfish address: %q: missing redfish+ prefix", address)
19+
}
1720
stripped := strings.TrimPrefix(address, "redfish+")
1821
parsed, err := url.Parse(stripped)
1922
if err != nil {

0 commit comments

Comments
 (0)