/
githubmirror
/
act
Обзор
Документация
Войти
/
githubmirror
/
act
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
pkg/runner/step_factory.go
46 строк
1 KB
Markus Wolf
feat: split job steps into its own files/structs (#1004)
23 мар 2022, 00:13
Не верифицирован
23 мар 2022, 00:13
2bb3e74
Код
Авторство
О чём код?
package runner import ( "fmt" "github.com/nektos/act/pkg/model" ) type stepFactory interface { newStep(step *model.Step, rc *RunContext) (step, error) } type stepFactoryImpl struct{} func (sf *stepFactoryImpl) newStep(stepModel *model.Step, rc *RunContext) (step, error) { switch stepModel.Type() { case model.StepTypeInvalid: return nil, fmt.Errorf("Invalid run/uses syntax for job:%s step:%+v", rc.Run, stepModel) case model.StepTypeRun: return &stepRun{ Step: stepModel, RunContext: rc, }, nil case model.StepTypeUsesActionLocal: return &stepActionLocal{ Step: stepModel, RunContext: rc, readAction: readActionImpl, runAction: runActionImpl, }, nil case model.StepTypeUsesActionRemote: return &stepActionRemote{ Step: stepModel, RunContext: rc, readAction: readActionImpl, runAction: runActionImpl, }, nil case model.StepTypeUsesDockerURL: return &stepDocker{ Step: stepModel, RunContext: rc, }, nil } return nil, fmt.Errorf("Unable to determine how to run job:%s step:%+v", rc.Run, stepModel) }