Skip to content

Commit 23c3858

Browse files
Adam StaffordAdam Stafford
authored andcommitted
restructuring
1 parent a45d29e commit 23c3858

File tree

3 files changed

+13
-8
lines changed

3 files changed

+13
-8
lines changed

operatorapi/error.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ var (
4040
errAccessDenied = errors.New("access denied")
4141
errTooFewNodes = errors.New("at least 4 nodes are required in cluster")
4242
errTooFewSchedulableNodes = errors.New("at least 4 schedulable nodes are required in cluster")
43+
errFewerThanFourNodes = errors.New("at least 4 nodes are required in request")
4344
)
4445

4546
// prepareError receives an error object and parse it against k8sErrors, returns the right error code paired with a generic error message
@@ -166,6 +167,10 @@ func prepareError(err ...error) *models.Error {
166167
errorCode = 507
167168
errorMessage = errTooFewSchedulableNodes.Error()
168169
}
170+
if errors.Is(err[0], errFewerThanFourNodes) {
171+
errorCode = 507
172+
errorMessage = errFewerThanFourNodes.Error()
173+
}
169174
}
170175
return &models.Error{Code: errorCode, Message: swag.String(errorMessage), DetailedMessage: swag.String(err[0].Error())}
171176
}

operatorapi/operator_nodes.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ func registerNodesHandlers(api *operations.OperatorAPI) {
5656

5757
// getMaxAllocatableMemory get max allocatable memory given a desired number of nodes
5858
func getMaxAllocatableMemory(ctx context.Context, clientset v1.CoreV1Interface, numNodes int32) (*models.MaxAllocatableMemResponse, error) {
59-
if numNodes == 0 {
60-
return nil, errors.New("error NumNodes must be greater than 0")
59+
if numNodes < 4 {
60+
return nil, errors.New("error NumNodes must be at least 4")
6161
}
6262

6363
// get all nodes from cluster

portal-ui/src/screens/Console/Tenants/AddTenant/Steps/TenantSize.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ const TenantSize = ({
9797
}: ITenantSizeProps) => {
9898
const [validationErrors, setValidationErrors] = useState<any>({});
9999
const [errorFlag, setErrorFlag] = useState<boolean>(false);
100+
const [error, setError] = useState<string>("");
100101
const usableInformation = ecParityCalc.storageFactors.find(
101102
(element) => element.erasureCode === ecParity
102103
);
@@ -143,10 +144,8 @@ const TenantSize = ({
143144
updateField("maxAllocableMemo", maxMemory);
144145
})
145146
.catch((err: any) => {
146-
if (err.errorMessage === "at least 4 nodes are required in cluster" || err.errorMessage === "at least 4 schedulable nodes are required in cluster") {
147-
setErrorFlag(true);
148-
console.log("here")
149-
}
147+
setErrorFlag(true);
148+
setError(err.errorMessage);
150149
console.error(err);
151150
});
152151
}
@@ -226,7 +225,6 @@ const TenantSize = ({
226225

227226
useEffect(() => {
228227
const parsedSize = getBytes(volumeSize, sizeFactor, true);
229-
230228
const commonValidation = commonFormValidation([
231229
{
232230
fieldKey: "nodes",
@@ -240,7 +238,7 @@ const TenantSize = ({
240238
required: true,
241239
value: nodes,
242240
customValidation: errorFlag,
243-
customValidationMessage: "Too few schedulable nodes",
241+
customValidationMessage: error,
244242
},
245243
{
246244
fieldKey: "volume_size",
@@ -294,6 +292,8 @@ const TenantSize = ({
294292
limitSize,
295293
selectedStorageClass,
296294
isPageValid,
295+
errorFlag,
296+
error
297297
]);
298298

299299
/* End Validation of pages */

0 commit comments

Comments
 (0)