diff --git a/act/jobparser/model.go b/act/jobparser/model.go index 476853fd..d2482b74 100644 --- a/act/jobparser/model.go +++ b/act/jobparser/model.go @@ -263,11 +263,13 @@ func ParseRawOn(rawOn *yaml.Node) ([]*Event, error) { if isInvalidOnType(k, act) { return nil, fmt.Errorf("unknown on type: %#v", v) } - acts = nil default: return nil, fmt.Errorf("unknown on type: %#v", branches) } } + if k == "workflow_dispatch" || k == "workflow_call" { + acts = nil + } res = append(res, &Event{ Name: k, acts: acts, diff --git a/act/jobparser/model_test.go b/act/jobparser/model_test.go index 7c73172b..96f999db 100644 --- a/act/jobparser/model_test.go +++ b/act/jobparser/model_test.go @@ -190,7 +190,14 @@ func TestParseRawOn(t *testing.T) { }, }, { - input: "on:\n workflow_dispatch:\n inputs:\n test:\n type: string", + input: ` +on: + workflow_dispatch: + inputs: + test: + type: string + silently: ignore +`, result: []*Event{ { Name: "workflow_dispatch", @@ -198,7 +205,17 @@ func TestParseRawOn(t *testing.T) { }, }, { - input: "on:\n workflow_call:\n inputs:\n test:\n type: string\n outputs:\n output:\n value: something", + input: ` +on: + workflow_call: + inputs: + test: + type: string + outputs: + output: + value: something + silently: ignore +`, result: []*Event{ { Name: "workflow_call",