Remove empty steps when decoding Job
(#49)
Follow #48 Empty steps are invalid, so remove them when decoding `Job` from YAML. Reviewed-on: https://gitea.com/gitea/act/pulls/49 Reviewed-by: Jason Song <i@wolfogre.com> Co-authored-by: Zettat123 <zettat123@gmail.com> Co-committed-by: Zettat123 <zettat123@gmail.com>
This commit is contained in:
parent
6b1010ad07
commit
721857e4a0
4 changed files with 27 additions and 0 deletions
|
@ -42,6 +42,11 @@ func TestParse(t *testing.T) {
|
||||||
options: nil,
|
options: nil,
|
||||||
wantErr: false,
|
wantErr: false,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "empty_step",
|
||||||
|
options: nil,
|
||||||
|
wantErr: false,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
|
|
|
@ -40,6 +40,13 @@ func (w *SingleWorkflow) jobs() ([]string, []*Job, error) {
|
||||||
if err := item.Decode(job); err != nil {
|
if err := item.Decode(job); err != nil {
|
||||||
return nil, nil, fmt.Errorf("yaml.Unmarshal: %w", err)
|
return nil, nil, fmt.Errorf("yaml.Unmarshal: %w", err)
|
||||||
}
|
}
|
||||||
|
steps := make([]*Step, 0, len(job.Steps))
|
||||||
|
for _, s := range job.Steps {
|
||||||
|
if s != nil {
|
||||||
|
steps = append(steps, s)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
job.Steps = steps
|
||||||
jobs = append(jobs, job)
|
jobs = append(jobs, job)
|
||||||
expectKey = true
|
expectKey = true
|
||||||
}
|
}
|
||||||
|
|
8
pkg/jobparser/testdata/empty_step.in.yaml
vendored
Normal file
8
pkg/jobparser/testdata/empty_step.in.yaml
vendored
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
name: test
|
||||||
|
jobs:
|
||||||
|
job1:
|
||||||
|
name: job1
|
||||||
|
runs-on: linux
|
||||||
|
steps:
|
||||||
|
- run: echo job-1
|
||||||
|
-
|
7
pkg/jobparser/testdata/empty_step.out.yaml
vendored
Normal file
7
pkg/jobparser/testdata/empty_step.out.yaml
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
name: test
|
||||||
|
jobs:
|
||||||
|
job1:
|
||||||
|
name: job1
|
||||||
|
runs-on: linux
|
||||||
|
steps:
|
||||||
|
- run: echo job-1
|
Loading…
Add table
Reference in a new issue