fix(app): persisted volume fixes [EE-6554] (#10975)
Co-authored-by: testa113 <testa113>pull/10981/head
parent
fa63432695
commit
59f642ea56
|
@ -372,6 +372,10 @@ class KubernetesCreateApplicationController {
|
|||
|
||||
onChangePersistedFolder(values) {
|
||||
this.$scope.$evalAsync(() => {
|
||||
this.state.persistedFoldersUseExistingVolumes = values.some((pf) => pf.existingVolume);
|
||||
if (!this.state.isEdit && this.state.persistedFoldersUseExistingVolumes) {
|
||||
this.formValues.DataAccessPolicy = this.ApplicationDataAccessPolicies.Shared;
|
||||
}
|
||||
this.formValues.PersistedFolders = values;
|
||||
if (values && values.length && !this.supportGlobalDeployment()) {
|
||||
this.onChangeDeploymentType(this.ApplicationDeploymentTypes.Replicated);
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
import { Box, Boxes } from 'lucide-react';
|
||||
|
||||
import { BoxSelector, BoxSelectorOption } from '@@/BoxSelector';
|
||||
import { FormSection } from '@@/form-components/FormSection';
|
||||
import { TextTip } from '@@/Tip/TextTip';
|
||||
|
||||
import { AppDataAccessPolicy } from '../types';
|
||||
|
||||
|
@ -20,13 +22,18 @@ export function DataAccessPolicyFormSection({
|
|||
const options = getOptions(value, isEdit, persistedFoldersUseExistingVolumes);
|
||||
|
||||
return (
|
||||
<BoxSelector
|
||||
slim
|
||||
options={options}
|
||||
value={value}
|
||||
onChange={onChange}
|
||||
radioName="data_access_policy"
|
||||
/>
|
||||
<FormSection title="Data access policy" titleSize="sm">
|
||||
<TextTip color="blue">
|
||||
Specify how the data will be used across instances.
|
||||
</TextTip>
|
||||
<BoxSelector
|
||||
slim
|
||||
options={options}
|
||||
value={value}
|
||||
onChange={onChange}
|
||||
radioName="data_access_policy"
|
||||
/>
|
||||
</FormSection>
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -65,7 +72,7 @@ function getOptions(
|
|||
}
|
||||
return '';
|
||||
},
|
||||
disabled: () => persistedFoldersUseExistingVolumes,
|
||||
disabled: () => isEdit && value !== 'Shared',
|
||||
},
|
||||
] as const;
|
||||
}
|
||||
|
|
|
@ -204,7 +204,7 @@ export function PersistedFolderItem({
|
|||
isDisabled={
|
||||
(isEdit && isExistingPersistedFolder()) ||
|
||||
applicationValues.Containers.length > 1 ||
|
||||
availableVolumes.length <= 1
|
||||
availableVolumes.length < 1
|
||||
}
|
||||
data-cy={`k8sAppCreate-pvcSelect_${index}`}
|
||||
/>
|
||||
|
|
|
@ -103,8 +103,8 @@ function existingVolumeValidation(): SchemaOf<ExistingVolume> {
|
|||
Storage: string().required(),
|
||||
storageClass: storageClassValidation(),
|
||||
CreationDate: string().required(),
|
||||
ApplicationOwner: string().required(),
|
||||
ApplicationName: string().required(),
|
||||
ApplicationOwner: string(),
|
||||
ApplicationName: string(),
|
||||
PreviousName: string(),
|
||||
MountPath: string(),
|
||||
Yaml: string(),
|
||||
|
|
|
@ -19,8 +19,8 @@ export type ExistingVolume = {
|
|||
Storage: string;
|
||||
storageClass: StorageClass;
|
||||
CreationDate: string;
|
||||
ApplicationOwner: string;
|
||||
ApplicationName: string;
|
||||
ApplicationOwner?: string;
|
||||
ApplicationName?: string;
|
||||
PreviousName?: string;
|
||||
MountPath?: string;
|
||||
Yaml?: string;
|
||||
|
|
Loading…
Reference in New Issue