Giter Site home page Giter Site logo

saantiaguilera / go-pipeline Goto Github PK

View Code? Open in Web Editor NEW
26.0 4.0 2.0 335 KB

Build, execute and represent pipelines (aka workflows / templates) in Go

License: GNU General Public License v3.0

Go 100.00%
pipeline pipeline-framework pipeline-processor flowframework faas-flow workflow flow flow-control template template-library

go-pipeline's Introduction



Pipeline

Build Status Coverage Go Report Card GoDoc Release

Pipeline is a GPL3-licensed Go package for building, executing and representing pipelines (aka workflows / templates).

Getting started

  • API documentation and examples are available via godoc.
  • The examples directory contains more elaborate example applications.
  • No specific mocks are needed for testing, every element is completely decoupled and atomic. You can create your own ones however you deem fit.

API stability

Pipeline follows semantic versioning and provides API stability via the gopkg.in service. You can import a version with a guaranteed stable API via http://gopkg.in/saantiaguilera/go-pipeline.v1

go-pipeline's People

Contributors

saantiaguilera avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

go-pipeline's Issues

How to handle errors?

Hi, nice library but I have a question, short of wrapping stages with lifecycle then kicking off another flow is there a cleaner way to handle error branches so they can also be included in the generated svg? As it stands my UML is incomplete because it does not show error paths. Using tags and context is awkward for error handling as well because it requires a lot of extra logic and wrapping of conditional groups at different steps to check for errors.

Playing with it

I have several questions.

  1. recreate svg
    For what I understood, the program also makes the svg. But when I rename an example one, it doesn't recreate that. Did I misunderstood?

  2. read form config (like toml)
    What if I could set up a pipeline via some config file. I would be able to build all the possibilities that I want, but have that config-file that will use only the parts needed.
    Let's say, I build a CRM but my customers have different wishes after a new user registers. I could then easily have them pick some predefined config (or even have them by themselves) That would mean that it's going to behave more like BPML (Perhaps even read that to drive the pipeline). I see a lot of possibilities here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.