浏览代码

convert action migration: allow to import any command action

EnabledCommands are initialized after the migration so allow any
command, they will be denied if not allowed and this is temporary.
The migration will be removed in the future

Signed-off-by: Nicola Murino <[email protected]>
Nicola Murino 4 周之前
父节点
当前提交
7f03dc0fab
共有 1 个文件被更改,包括 12 次插入0 次删除
  1. 12 0
      internal/dataprovider/dataprovider.go

+ 12 - 0
internal/dataprovider/dataprovider.go

@@ -4797,8 +4797,20 @@ func updateEventActions() error {
 	if err != nil {
 		return err
 	}
+	enabledCommands := slices.Clone(EnabledActionCommands)
+	defer func() {
+		EnabledActionCommands = enabledCommands
+	}()
+
 	for _, action := range convertedActions {
 		providerLog(logger.LevelInfo, "updating placeholders for event action %q", action.Name)
+		if action.Options.CmdConfig.Cmd != "" {
+			// EnabledActionCommands are initialized after the data provider,
+			// so all commands should be allowed here temporarily.
+			if !slices.Contains(EnabledActionCommands, action.Options.CmdConfig.Cmd) {
+				EnabledActionCommands = append(EnabledActionCommands, action.Options.CmdConfig.Cmd)
+			}
+		}
 		if err := provider.updateEventAction(&action); err != nil {
 			return fmt.Errorf("unable to save updated event action %q: %w", action.Name, err)
 		}