/argo

Argo Workflows: Get stuff done with Kubernetes.

Primary LanguageGoApache License 2.0Apache-2.0

slack

Argoproj - Get stuff done with Kubernetes

Argo Image

Quickstart

kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/stable/manifests/install.yaml

News

KubeCon 2018 in Seattle was the biggest KubeCon yet with 8000 developers attending. We connected with many existing and new Argoproj users and contributions, and gave away a lot of Argo T-shirts at our booth sponsored by Intuit!

We were also super excited to see KubeCon presentations about Argo by Argo developers, users and partners.

If you actively use Argo in your organization and your organization would be interested in participating in the Argo Community, please ask a representative to contact saradhi_sreegiriraju@intuit.com for additional information.

What is Argoproj?

Argoproj is a collection of tools for getting work done with Kubernetes.

  • Argo Workflows - Container-native Workflow Engine
  • Argo CD - Declarative GitOps Continuous Delivery
  • Argo Events - Event-based Dependency Manager
  • Argo Rollouts - Deployment CR with support for Canary and Blue Green deployment strategies

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 in the workflow is a container.
  • Model multi-step workflows as a sequence of tasks or capture the dependencies between tasks using a graph (DAG).
  • Easily run compute intensive jobs for machine learning or data processing in a fraction of the time using Argo Workflows on Kubernetes.
  • Run CI/CD pipelines natively on Kubernetes without configuring complex software development products.

Why Argo Workflows?

  • 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.
  • Easily orchestrate highly parallel jobs on Kubernetes.
  • Argo Workflows puts a cloud-scale supercomputer at your fingertips!

Documentation

Features

  • DAG or Steps based declaration of workflows
  • Artifact support (S3, Artifactory, HTTP, Git, raw)
  • 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

Who uses Argo?

As the Argo Community grows, we'd like to keep track of our users. Please send a PR with your organization name.

Currently officially using Argo:

  1. Adevinta
  2. Admiralty
  3. Adobe
  4. Alibaba Cloud
  5. BlackRock
  6. Canva
  7. Codec
  8. CoreFiling
  9. Cratejoy
  10. Cyrus Biotechnology
  11. Datadog
  12. Equinor
  13. Gardener
  14. Gladly
  15. GitHub
  16. Google
  17. IBM
  18. Interline Technologies
  19. Intuit
  20. Karius
  21. KintoHub
  22. Localytics
  23. Max Kelsen
  24. Mirantis
  25. NVIDIA
  26. OVH
  27. Preferred Networks
  28. Quantibio
  29. SAP Fieldglass
  30. SAP Hybris
  31. Styra
  32. Threekit
  33. Commodus Tech

Community Blogs and Presentations

Project Resources