sdk-go

module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 12, 2020 License: Apache-2.0

README

Go SDK for Serverless Workflow

Here you will find all the specification types defined by our Json Schemas, in Go.

Current status of features implemented in the SDK is listed in the table below:

Feature Status
Parse workflow JSON and YAML definitions
Programmatically build workflow definitions 🚫
Validate workflow definitions (Schema)
Validate workflow definitions (Integrity) 🚫
Generate workflow diagram (SVG) 🚫

How to use

Run the following command in the root of your Go's project:

$ go get github.com/serverlessworkflow/sdk-go

Your go.mod file should be updated to add a dependency from the Serverless Workflow specification.

To use the generated types, import the package in your go file like this:

import "github.com/serverlessworkflow/sdk-go/model"

Then just reference the package in your Go file like myfunction := model.Function{}.

Parsing Serverless Workflow files

Serverless Workflow Specification supports YAML and JSON files for Workflow definitions. To transform such files into a Go data structure, use:

package sw

import (

"github.com/serverlessworkflow/sdk-go/model"
"github.com/serverlessworkflow/sdk-go/parser"
)

func ParseWorkflow(filePath string) (*model.Workflow, error) {
	workflow, err := parser.FromFile(filePath)
    if err != nil {
        return nil, err
    } 
    return workflow, nil
} 

The Workflow structure then can be used in your application.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL