Просмотр исходного кода

chore: Cleanup executor shell passing (#556)

James Read 1 год назад
Родитель
Сommit
88f639d29f

+ 3 - 3
service/internal/executor/arguments.go

@@ -46,13 +46,13 @@ func parseCommandForReplacements(rawShellCommand string, values map[string]strin
 	return rawShellCommand, usedArguments, nil
 }
 
-func parseActionArguments(rawShellCommand string, values map[string]string, action *config.Action, actionTitle string, entityPrefix string) (string, error) {
+func parseActionArguments(values map[string]string, action *config.Action, actionTitle string, entityPrefix string) (string, error) {
 	log.WithFields(log.Fields{
 		"actionTitle": actionTitle,
-		"cmd":         rawShellCommand,
+		"cmd":         action.Shell,
 	}).Infof("Action parse args - Before")
 
-	rawShellCommand, usedArgs, err := parseCommandForReplacements(rawShellCommand, values)
+	rawShellCommand, usedArgs, err := parseCommandForReplacements(action.Shell, values)
 
 	if err != nil {
 		return "", err

+ 4 - 4
service/internal/executor/arguments_test.go

@@ -33,14 +33,14 @@ func TestArgumentValueNullable(t *testing.T) {
 		"count": "",
 	}
 
-	out, err := parseActionArguments(a1.Shell, values, &a1, a1.Title, "")
+	out, err := parseActionArguments(values, &a1, a1.Title, "")
 
 	assert.Equal(t, "echo 'Releasing  hounds'", out)
 	assert.Nil(t, err)
 
 	a1.Arguments[0].RejectNull = true
 
-	_, err = parseActionArguments(a1.Shell, values, &a1, a1.Title, "")
+	_, err = parseActionArguments(values, &a1, a1.Title, "")
 
 	assert.NotNil(t, err)
 }
@@ -61,7 +61,7 @@ func TestArgumentNameNumbers(t *testing.T) {
 		"person1name": "Fred",
 	}
 
-	out, err := parseActionArguments(a1.Shell, values, &a1, a1.Title, "")
+	out, err := parseActionArguments(values, &a1, a1.Title, "")
 
 	assert.Equal(t, "echo 'Tickling Fred'", out)
 	assert.Nil(t, err)
@@ -81,7 +81,7 @@ func TestArgumentNotProvided(t *testing.T) {
 
 	values := map[string]string{}
 
-	out, err := parseActionArguments(a1.Shell, values, &a1, a1.Title, "")
+	out, err := parseActionArguments(values, &a1, a1.Title, "")
 
 	assert.Equal(t, "", out)
 	assert.Equal(t, err.Error(), "Required arg not provided: personName")

+ 1 - 1
service/internal/executor/executor.go

@@ -395,7 +395,7 @@ func stepParseArgs(req *ExecutionRequest) bool {
 	req.Arguments["ot_executionTrackingId"] = req.TrackingID
 	req.Arguments["ot_username"] = req.AuthenticatedUser.Username
 
-	req.finalParsedCommand, err = parseActionArguments(req.Action.Shell, req.Arguments, req.Action, req.logEntry.ActionTitle, req.EntityPrefix)
+	req.finalParsedCommand, err = parseActionArguments(req.Arguments, req.Action, req.logEntry.ActionTitle, req.EntityPrefix)
 
 	if err != nil {
 		req.logEntry.Output = err.Error()

+ 2 - 2
service/internal/executor/executor_test.go

@@ -82,7 +82,7 @@ func TestArgumentNameCamelCase(t *testing.T) {
 		"personName": "Fred",
 	}
 
-	out, err := parseActionArguments(a1.Shell, values, a1, a1.Title, "")
+	out, err := parseActionArguments(values, a1, a1.Title, "")
 
 	assert.Equal(t, "echo 'Tickling Fred'", out)
 	assert.Nil(t, err)
@@ -104,7 +104,7 @@ func TestArgumentNameSnakeCase(t *testing.T) {
 		"person_name": "Fred",
 	}
 
-	out, err := parseActionArguments(a1.Shell, values, a1, a1.Title, "")
+	out, err := parseActionArguments(values, a1, a1.Title, "")
 
 	assert.Equal(t, "echo 'Tickling Fred'", out)
 	assert.Nil(t, err)