From 3ea839815aaf6adeab13355645c510779b732225 Mon Sep 17 00:00:00 2001 From: rhysd Date: Tue, 12 Mar 2024 14:55:15 +0900 Subject: [PATCH] wip --- action_metadata.go | 55 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/action_metadata.go b/action_metadata.go index 94ae4dfdd..eef7deb2d 100644 --- a/action_metadata.go +++ b/action_metadata.go @@ -90,6 +90,61 @@ func (inputs *ActionMetadataOutputs) UnmarshalYAML(n *yaml.Node) error { return nil } +// TODO +type ActionMetadataRunnerKind uint8 + +const ( + // TODO + ActionMetadataRunnerKindJS ActionMetadataRunnerKind = iota + // TODO + ActionMetadataRunnerKindComposite + // TODO + ActionMetadataRunnerKindDocker +) + +func (k ActionMetadataRunnerKind) String() string { + switch k { + case ActionMetadataRunnerKindJS: + return "JavaScript" + case ActionMetadataRunnerKindComposite: + return "Composite" + case ActionMetadataRunnerKindDocker: + return "Docker" + default: + panic(fmt.Sprintf("Unknown kind: %d", k)) + } +} + +// TODO +type ActionRunnerMetadata interface { + // TODO + Kind() ActionMetadataRunnerKind +} + +// TODO +type ActionRunnerJS struct{} + +// Kind implements ActionRunnerMetadata interface +func (r *ActionRunnerJS) Kind() ActionMetadataRunnerKind { + return ActionMetadataRunnerKindJS +} + +// TODO +type ActionRunnerComposite struct{} + +// Kind implements ActionRunnerMetadata interface +func (r *ActionRunnerComposite) Kind() ActionMetadataRunnerKind { + return ActionMetadataRunnerKindComposite +} + +// TODO +type ActionRunnerDocker struct{} + +// Kind implements ActionRunnerMetadata interface +func (r *ActionRunnerDocker) Kind() ActionMetadataRunnerKind { + return ActionMetadataRunnerKindDocker +} + // ActionMetadataRuns is "runs" section of action.yaml. It defines how the action is run. // https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#runs type ActionMetadataRuns struct {