package main import ( "context" "os" "os/signal" "code.geekeey.de/actions/sdk" ) func main() { action := &SaveArtifactAction{Action: sdk.New()} ctx, cancel := signal.NotifyContext(context.Background(), os.Interrupt) defer cancel() if err := action.Run(ctx); err != nil { action.Errorf("%s", err) os.Exit(1) } } type SaveArtifactAction struct { *sdk.Action repository string path string reference string } func (action *SaveArtifactAction) setup() error { return nil } func (action *SaveArtifactAction) Run(ctx context.Context) error { if err := action.setup(); err != nil { return err } return nil }