mirror of
https://code.forgejo.org/forgejo/runner.git
synced 2025-08-06 17:40:58 +00:00
refactor: default empty if: statement to if: success() in evaluator & remove FixIfStatement()
(#990)
* refactor: default empty `if:` statement to `if: success()` in evaluator Previously the code to default an empty `if:` statement in the yaml file was implemented in different files in the model package. Now an empty `if:` statement defaults to `success()` in the expression evaluator. * refactor: remove obsolete `FixIfStatement` functions The introduction of the expression evaluator seems to have made these functions obsolete, as the test case `TestRunEvent/issue-598` works even without these functions. Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
This commit is contained in:
parent
5e65159a3d
commit
9150617dec
3 changed files with 3 additions and 54 deletions
|
@ -47,6 +47,9 @@ func NewInterpeter(env *EvaluationEnvironment, config Config) Interpreter {
|
|||
|
||||
func (impl *interperterImpl) Evaluate(input string, isIfExpression bool) (interface{}, error) {
|
||||
input = strings.TrimPrefix(input, "${{")
|
||||
if isIfExpression && input == "" {
|
||||
input = "success()"
|
||||
}
|
||||
parser := actionlint.NewExprParser()
|
||||
exprNode, err := parser.Parse(actionlint.NewExprLexer(input + "}}"))
|
||||
if err != nil {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue