diff --git a/operatorapi/tenants.go b/operatorapi/tenants.go index 56425d943..f191a2cce 100644 --- a/operatorapi/tenants.go +++ b/operatorapi/tenants.go @@ -1541,7 +1541,6 @@ func getTenantLogsResponse(session *models.Principal, params operator_api.GetTen func setTenantLogsResponse(session *models.Principal, params operator_api.SetTenantLogsParams) (bool, *models.Error) { ctx, cancel := context.WithCancel(params.HTTPRequest.Context()) defer cancel() - opClientClientSet, err := cluster.OperatorClient(session.STSSessionToken) if err != nil { return false, restapi.ErrorWithContext(ctx, err, restapi.ErrUnableToGetTenantUsage) @@ -1725,6 +1724,7 @@ func setTenantLogsResponse(session *models.Principal, params operator_api.SetTen minTenant.Spec.Log.Db.Annotations = dbAnnotations minTenant.Spec.Log.Db.NodeSelector = dbNodeSelector minTenant.Spec.Log.Db.Image = params.Data.DbImage + minTenant.Spec.Log.Db.InitImage = params.Data.DbInitImage minTenant.Spec.Log.Db.ServiceAccountName = params.Data.DbServiceAccountName minTenant.Spec.Log.Db.SecurityContext, err = convertModelSCToK8sSC(params.Data.DbSecurityContext) if err != nil { diff --git a/portal-ui/src/screens/Console/Tenants/TenantDetails/EditTenantMonitoringScreen.tsx b/portal-ui/src/screens/Console/Tenants/TenantDetails/EditTenantMonitoringScreen.tsx index 6482707f0..320ae3050 100644 --- a/portal-ui/src/screens/Console/Tenants/TenantDetails/EditTenantMonitoringScreen.tsx +++ b/portal-ui/src/screens/Console/Tenants/TenantDetails/EditTenantMonitoringScreen.tsx @@ -60,7 +60,7 @@ import { setRunAsUser, setRunAsNonRoot, } from "../TenantDetails/tenantMonitoringSlice"; -import { clearValidationError } from "../utils"; +import { clearValidationError, imagePattern, numericPattern } from "../utils"; import SecurityContextSelector from "../securityContextSelector"; interface ITenantMonitoring { @@ -359,7 +359,7 @@ const TenantMonitoring = ({ classes }: ITenantMonitoring) => { cleanValidation(`image`); }} key={`image`} - pattern={"^[a-zA-Z0-9-./:]{1,253}$"} + pattern={imagePattern} error={validationErrors[`image`] || ""} /> @@ -377,7 +377,7 @@ const TenantMonitoring = ({ classes }: ITenantMonitoring) => { cleanValidation(`sidecarImage`); }} key={`sidecarImage`} - pattern={"^[a-zA-Z0-9-./:]{1,253}$"} + pattern={imagePattern} error={validationErrors[`sidecarImage`] || ""} /> @@ -395,7 +395,7 @@ const TenantMonitoring = ({ classes }: ITenantMonitoring) => { cleanValidation(`initImage`); }} key={`initImage`} - pattern={"^[a-zA-Z0-9-./:]{1,253}$"} + pattern={imagePattern} error={validationErrors[`initImage`] || ""} /> @@ -413,7 +413,7 @@ const TenantMonitoring = ({ classes }: ITenantMonitoring) => { cleanValidation(`diskCapacityGB`); }} key={`diskCapacityGB`} - pattern={"[0-9]*"} + pattern={numericPattern} error={validationErrors[`diskCapacityGB`] || ""} overlayObject={ { placeholder={"CPU Request"} name={`cpuRequest`} value={cpuRequest} - pattern={"[0-9]*"} + pattern={numericPattern} onChange={(event: React.ChangeEvent) => { if (event.target.validity.valid) { dispatch(setCPURequest(event.target.value)); @@ -457,7 +457,7 @@ const TenantMonitoring = ({ classes }: ITenantMonitoring) => { } cleanValidation(`memRequest`); }} - pattern={"[0-9]*"} + pattern={numericPattern} key={`memRequest`} error={validationErrors[`memRequest`] || ""} overlayObject={ diff --git a/portal-ui/src/screens/Console/Tenants/TenantDetails/LoggingDBDetails.tsx b/portal-ui/src/screens/Console/Tenants/TenantDetails/LoggingDBDetails.tsx index 1185e73b5..0ff25d416 100644 --- a/portal-ui/src/screens/Console/Tenants/TenantDetails/LoggingDBDetails.tsx +++ b/portal-ui/src/screens/Console/Tenants/TenantDetails/LoggingDBDetails.tsx @@ -57,7 +57,7 @@ import { import SecurityContextSelector from "../securityContextSelector"; -import { clearValidationError } from "../utils"; +import { clearValidationError, imagePattern, numericPattern } from "../utils"; const styles = (theme: Theme) => createStyles({ @@ -222,7 +222,7 @@ const LoggingDBDetails = ({ cleanValidation(`dbImage`); }} key={`dbImage`} - pattern={"^[a-zA-Z0-9-./:]{1,253}$"} + pattern={imagePattern} error={validationErrors[`dbImage`] || ""} /> @@ -240,7 +240,7 @@ const LoggingDBDetails = ({ cleanValidation(`dbInitImage`); }} key={`dbInitImage`} - pattern={"^[a-zA-Z0-9-./:]{1,253}$"} + pattern={imagePattern} error={validationErrors[`dbInitImage`] || ""} /> @@ -251,7 +251,7 @@ const LoggingDBDetails = ({ placeholder={"DB CPU Request"} name={`dbCPURequest`} value={dbCpuRequest} - pattern={"[0-9]*"} + pattern={numericPattern} onChange={(event: React.ChangeEvent) => { if (event.target.validity.valid) { dispatch(setDBCPURequest(event.target.value)); @@ -275,7 +275,7 @@ const LoggingDBDetails = ({ } cleanValidation(`dbMemRequest`); }} - pattern={"[0-9]*"} + pattern={numericPattern} key={`dbMemRequest`} error={validationErrors[`dbMemRequest`] || ""} overlayObject={ diff --git a/portal-ui/src/screens/Console/Tenants/TenantDetails/LoggingDetails.tsx b/portal-ui/src/screens/Console/Tenants/TenantDetails/LoggingDetails.tsx index f84e2db14..2938927b9 100644 --- a/portal-ui/src/screens/Console/Tenants/TenantDetails/LoggingDetails.tsx +++ b/portal-ui/src/screens/Console/Tenants/TenantDetails/LoggingDetails.tsx @@ -44,7 +44,7 @@ import { IKeyValue, ITenantAuditLogs } from "../ListTenants/types"; import KeyPairEdit from "./KeyPairEdit"; import InputUnitMenu from "../../Common/FormComponents/InputUnitMenu/InputUnitMenu"; import SecurityContextSelector from "../securityContextSelector"; -import { clearValidationError } from "../utils"; +import { clearValidationError, imagePattern, numericPattern } from "../utils"; import { setImage, setDiskCapacityGB, @@ -228,7 +228,7 @@ const TenantAuditLogging = ({ cleanValidation(`image`); }} key={`image`} - pattern={"^[a-zA-Z0-9-./:]{1,253}$"} + pattern={imagePattern} error={validationErrors[`image`] || ""} /> @@ -247,7 +247,7 @@ const TenantAuditLogging = ({ cleanValidation(`diskCapacityGB`); }} key={`diskCapacityGB`} - pattern={"[0-9]*"} + pattern={numericPattern} error={validationErrors[`diskCapacityGB`] || ""} overlayObject={ ) => { if (event.target.validity.valid) { dispatch(setCPURequest(event.target.value)); @@ -292,7 +292,7 @@ const TenantAuditLogging = ({ } cleanValidation(`memRequest`); }} - pattern={"[0-9]*"} + pattern={numericPattern} key={`memRequest`} error={validationErrors[`memRequest`] || ""} overlayObject={ diff --git a/portal-ui/src/screens/Console/Tenants/utils.ts b/portal-ui/src/screens/Console/Tenants/utils.ts index a2170af09..ad716092d 100644 --- a/portal-ui/src/screens/Console/Tenants/utils.ts +++ b/portal-ui/src/screens/Console/Tenants/utils.ts @@ -35,3 +35,7 @@ export const getRandomString = function (length = 16): string { } return retval; }; + +export const imagePattern = "^[a-zA-Z0-9-_./:]{1,253}$"; + +export const numericPattern = "[0-9]*";