Bladeren bron

Fix `auto_deploy` toggle being disabled for bare-metal sources

Signed-off-by: Mihaela Balutoiu <mbalutoiu@cloudbasesolutions.com>
Mihaela Balutoiu 2 maanden geleden
bovenliggende
commit
3d0b62fc8b

+ 3 - 0
config.ts

@@ -198,6 +198,9 @@ const conf: Config = {
   // The list of providers for which to disable setting the 'Execute Now Options' field
   providersDisabledExecuteOptions: ["metal"],
 
+  // The list of execution option fields to disable for the providers in 'providersDisabledExecuteOptions'
+  providersExecuteOptionsDisabledFields: ["shutdown_instances"],
+
   // The list of the users to hide in the UI
   hiddenUsers: ["barbican", "coriolis"],
 

+ 1 - 0
src/@types/Config.ts

@@ -37,6 +37,7 @@ export type Config = {
   providerSortPriority: { [providerName in ProviderTypes]: number };
   providerNames: { [providerName in ProviderTypes]: string };
   providersDisabledExecuteOptions: [ProviderTypes];
+  providersExecuteOptionsDisabledFields: string[];
   hiddenUsers: string[];
   hiddenUserRoles: string[];
   passwordFields: string[];

+ 11 - 2
src/components/modules/TransferModule/TransferExecutionOptions/TransferExecutionOptions.tsx

@@ -21,6 +21,7 @@ import FieldInput from "@src/components/ui/FieldInput";
 
 import LabelDictionary from "@src/utils/LabelDictionary";
 import KeyboardManager from "@src/utils/KeyboardManager";
+import configLoader from "@src/utils/Config";
 import { executionOptions } from "@src/constants";
 import type { Field } from "@src/@types/Field";
 
@@ -128,9 +129,17 @@ class TransferExecutionOptions extends React.Component<Props, State> {
               value={this.getFieldValue(field)}
               label={LabelDictionary.get(field.name)}
               onChange={value => this.handleValueChange(field, value)}
-              disabled={this.props.disableExecutionOptions}
+              disabled={
+                this.props.disableExecutionOptions &&
+                configLoader.config.providersExecuteOptionsDisabledFields.includes(
+                  field.name,
+                )
+              }
               description={
-                this.props.disableExecutionOptions
+                this.props.disableExecutionOptions &&
+                configLoader.config.providersExecuteOptionsDisabledFields.includes(
+                  field.name,
+                )
                   ? "The execution options are disabled for the source provider"
                   : LabelDictionary.getDescription(field.name)
               }