Skip to content

Instantly share code, notes, and snippets.

@StevenACoffman
Last active August 30, 2018 22:31
Show Gist options
  • Select an option

  • Save StevenACoffman/404ded244bdbe5a9d6583018f724748b to your computer and use it in GitHub Desktop.

Select an option

Save StevenACoffman/404ded244bdbe5a9d6583018f724748b to your computer and use it in GitHub Desktop.
argo vs brigade

Argo vs. Brigade some of the key differences are

  • K8s CRD vs. javascript execution service

  • Declarative YAML vs. javascript

  • Argo has built-in artifact support for input/output handling

  • Argo does not have event handling yet (working on it :-)

    As of dec 2017

Similarities

  • Both tools are designed for batch workflows involving a Directed Acyclic Graph (DAG) of steps
  • Both tools provide flow control for error handling and conditional logic based on the output of upstream steps
  • Both tools are open sourced with the Apache License and actively maintained by a community of contributors

Differences

  • Airflow seems tightly coupled to the Python ecosystem, while Argo provides flexibility to schedule steps in heterogeneous runtimes (anything that can run in a container)
  • Argo natively schedules steps to run in a Kubernetes cluster, potentially across several hosts. While Airflow has a contributed feature to schedule jobs on Mesos clusters, there's possibly less integration there (I haven't tried this)
  • Airflow DAGs are expressed in a Python-based DSL, while Argo DAGs are expressed in a YAML syntax that is understood natively by and deployable directly to Kubernetes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment