Coder Social home page Coder Social logo

tektite-io / flowpipe Goto Github PK

View Code? Open in Web Editor NEW

This project forked from turbot/flowpipe

0.0 0.0 0.0 9.55 MB

Flowpipe is a cloud scripting engine. Automation and workflow to connect your clouds to the people, systems and data that matters.

Home Page: https://flowpipe.io

License: GNU Affero General Public License v3.0

Shell 0.63% JavaScript 0.29% Python 0.03% Go 85.72% Makefile 0.17% HTML 0.43% HCL 9.72% Dockerfile 0.33% TypeScript 2.59% CSS 0.09%

flowpipe's Introduction

libraries   pipelines   maintained by

Flowpipe: Workflow for DevOps. Automation and workflow to connect your clouds to the people, systems and data that matter.

Connect people and tools. Connect your cloud data to people and systems using email, chat & APIs. Workflow steps can even run containers, custom functions, and more.

Orchestrate your cloud. Build simple steps into complex workflows. Run and test locally. Compose solutions across clouds using open source mods.

Respond to events. Run workflows manually or on a schedule. Trigger pipelines from webhooks or changes in data.

Code, not clicks. Build and deploy DevOps workflows like infrastructure. Code in HCL and deploy from version control.

Demo Time!

Watch on YouTube →

Flowpipe Demo

Getting Started

The downloads page shows you how but tl;dr:

Linux or WSL

sudo /bin/sh -c "$(curl -fsSL https://flowpipe.io/install/flowpipe.sh)"

MacOS

brew tap turbot/tap
brew install flowpipe

Now, create and run your first pipeline →

Libraries and samples

Flowpipe library mods are available for services including AWS, Azure, GCP, GitHub, Jira, Okta, PagerDuty, SendGrid, Slack, Teams, Zendesk ... and many more!

Check out Flowpipe samples for ready-to-run samples that use various library mods.

Developing

Developing Flowpipe

Prerequisites:

  • Golang Version 1.21 or higher.

Clone github.com/flowpipe and github.com/turbot/pipe-fittings repositories:

git clone [email protected]:turbot/flowpipe
git clone [email protected]:turbot/pipe-fittings
cd flowpipe

Build will build flowpipe binary in the current directory:

make

Check the version:

./flowpipe --version
Flowpipe v0.0.1-local.1

Flowpipe local version will always be v0.0.1-local.1. The real version is generated during the release process.

Try it!

./flowpipe pipeline list --mod-location ./internal/es/estest/test_suite_mod/
MOD                   NAME                                                                                                        DESCRIPTION
mod.mod_depend_a      mod_depend_a.pipeline.echo_one_depend_a
mod.test_suite_mod    test_suite_mod.pipeline.any_param
mod.test_suite_mod    test_suite_mod.pipeline.bad_email_with_expr
mod.test_suite_mod    test_suite_mod.pipeline.bad_http_ignored                                                                    Ignored bad HTTP step.
mod.test_suite_mod    test_suite_mod.pipeline.bad_http_not_ignored                                                                Pipeline with a HTTP step that will fail. Error is not ignored.
</snip>

Now run a simple pipeline:

./flowpipe pipeline run --mod-location ./internal/es/estest/test_suite_mod/ simple
[flowpipe] Execution ID: exec_clsm62ko47mjp5f74730
[simple] Starting pipeline
[simple.echo] Starting transform
[simple.echo] Output echo_1 = echo 1
[simple.echo] Output echo_2 = echo 2
[simple.echo] Complete 2ms
[simple] Output val = Hello World
[simple] Complete 12ms exec_clsm62ko47mjp5f74730

That's it! You're ready to start developing.

There are other third party tools that are required for the full development suite. These are not required for basic development. To make development easy, we have built a DevContainer that has all the required tools installed. See the Developer Setup section for more details.

Developer Setup
  1. Install Docker

  2. Install VS Code

  3. Pull the Dev Container: docker pull ghcr.io/turbot/flowpipe-devcontainer:latest

  4. In VS Code install devcontainer extension.

  5. Open flowpipe in Dev Containers: Open Folder in Container... option.

  6. Run make to build the Flowpipe binary.

Open Source & Contributing

This repository is published under the AGPL 3.0 license. Please see our code of conduct. Contributors must sign our Contributor License Agreement as part of their first pull request. We look forward to collaborating with you!

Flowpipe is a product produced from this open source software, exclusively by Turbot HQ, Inc. It is distributed under our commercial terms. Others are allowed to make their own distribution of the software, but cannot use any of the Turbot trademarks, cloud services, etc. You can learn more in our Open Source FAQ.

Get Involved

Join #flowpipe on Slack →

Want to help but don't know where to start? Pick up one of the help wanted issues:

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.