• Stars
    star
    14,835
  • Rank 1,995 (Top 0.04 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created over 7 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Workflow Engine for Kubernetes

Security Status OpenSSF Best Practices OpenSSF Scorecard FOSSA License Status Slack Twitter Follow LinkedIn Release Version Artifact HUB

What is Argo Workflows?

Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes. Argo Workflows is implemented as a Kubernetes CRD (Custom Resource Definition).

  • Define workflows where each step is a container.
  • Model multi-step workflows as a sequence of tasks or capture the dependencies between tasks using a directed acyclic graph (DAG).
  • Easily run compute intensive jobs for machine learning or data processing in a fraction of the time using Argo Workflows on Kubernetes.

Argo is a Cloud Native Computing Foundation (CNCF) graduated project.

Use Cases

Why Argo Workflows?

  • Argo Workflows is the most popular workflow execution engine for Kubernetes.
  • Light-weight, scalable, and easier to use.
  • Designed from the ground up for containers without the overhead and limitations of legacy VM and server-based environments.
  • Cloud agnostic and can run on any Kubernetes cluster.

Read what people said in our latest survey

Try Argo Workflows

You can try Argo Workflows via one of the following:

  1. Interactive Training Material
  2. Access the demo environment

Screenshot

Who uses Argo Workflows?

About 200+ organizations are officially using Argo Workflows

Ecosystem

Just some of the projects that use or rely on Argo Workflows (complete list here):

Client Libraries

Check out our Java, Golang and Python clients.

Quickstart

Documentation

View the docs

Features

An incomplete list of features Argo Workflows provide:

  • UI to visualize and manage Workflows
  • Artifact support (S3, Artifactory, Alibaba Cloud OSS, Azure Blob Storage, HTTP, Git, GCS, raw)
  • Workflow templating to store commonly used Workflows in the cluster
  • Archiving Workflows after executing for later access
  • Scheduled workflows using cron
  • Server interface with REST API (HTTP and GRPC)
  • DAG or Steps based declaration of workflows
  • Step level input & outputs (artifacts/parameters)
  • Loops
  • Parameterization
  • Conditionals
  • Timeouts (step & workflow level)
  • Retry (step & workflow level)
  • Resubmit (memoized)
  • Suspend & Resume
  • Cancellation
  • K8s resource orchestration
  • Exit Hooks (notifications, cleanup)
  • Garbage collection of completed workflow
  • Scheduling (affinity/tolerations/node selectors)
  • Volumes (ephemeral/existing)
  • Parallelism limits
  • Daemoned steps
  • DinD (docker-in-docker)
  • Script steps
  • Event emission
  • Prometheus metrics
  • Multiple executors
  • Multiple pod and workflow garbage collection strategies
  • Automatically calculated resource usage per step
  • Java/Golang/Python SDKs
  • Pod Disruption Budget support
  • Single-sign on (OAuth2/OIDC)
  • Webhook triggering
  • CLI
  • Out-of-the box and custom Prometheus metrics
  • Windows container support
  • Embedded widgets
  • Multiplex log viewer

Community Meetings

We host monthly community meetings where we and the community showcase demos and discuss the current and future state of the project. Feel free to join us! For Community Meeting information, minutes and recordings, please see here.

Participation in Argo Workflows is governed by the CNCF Code of Conduct

Community Blogs and Presentations

Project Resources

Security

See SECURITY.md.

More Repositories

1

argo-cd

Declarative Continuous Deployment for Kubernetes
Go
17,515
star
2

argo-rollouts

Progressive Delivery for Kubernetes
Go
2,676
star
3

argo-events

Event-driven Automation Framework for Kubernetes
Go
2,328
star
4

argo-helm

ArgoProj Helm Charts
Mustache
1,685
star
5

gitops-engine

Democratizing GitOps
Go
1,672
star
6

argocd-example-apps

Example Apps to Demonstrate Argo CD
Jsonnet
1,516
star
7

argoproj

Common project repo for all Argo Projects
Python
595
star
8

applicationset

The ApplicationSet controller manages multiple Argo CD Applications as a single ApplicationSet unit, supporting deployments to large numbers of clusters, deployments of large monorepos, and enabling secure Application self-service.
Go
588
star
9

notifications-engine

Affordable notifications for Kubernetes
Go
271
star
10

argoproj-deployments

Deployment repository for Argoproj CI/CD
HCL
228
star
11

argo-ui

Argoproj shared React components
TypeScript
220
star
12

argo-ci

Continuous integration and delivery for Kubernetes powered by Argo workflows.
TypeScript
200
star
13

rollouts-demo

Go
182
star
14

pkg

Argo shared libraries between argo projects
Go
36
star
15

data-pipeline

Python
36
star
16

argo-schema-generator

Tool that generates a kustomize schema file for Argo CD, Argo Rollouts, Argo Workflows, and Argo Events
Go
28
star
17

argo-ml-demo

Demonstration of using an Argo workflow for an ML application
Python
28
star
18

argo-site

JavaScript
15
star
19

argo-cd-ui

TypeScript
15
star
20

homebrew-tap

Homebrew Tap for argo
Ruby
14
star
21

argo-cd-hello-world-app

A basic golang app with a travis pipeline that deploys into a k8s cluster using Argo-CD
Makefile
14
star
22

argocon21

JavaScript
8
star
23

ui-lib

TypeScript
5
star
24

argoproj.github.io

Generated from https://github.com/argoproj/argo-site
HTML
5
star
25

argo-cd-hello-world-config

Shell
4
star
26

argo-conformance-program

A standard to ensure interoperability, protect users, and prevent surprises when using commercial offerings with Argo in the name.
4
star
27

community-contrib-docs

3
star
28

argo-events-old

This repo is now obsolete. Please check out https://github.com/argoproj/argo-events
3
star
29

image-processing-demo

Python
3
star
30

kubecon-sandbox

KubeCon Sandbox for demonstrating Argo CD
Shell
3
star
31

.github

3
star
32

kubeflow-ks

Example repo that stores the ksonnet files of Kubeflow v0.3.0
Shell
2
star
33

katacoda-scenarios

Shell
1
star