Client for Argo Workflows
Argo Workflows Client
Python client for Argo Workflows
pip install argo-workflows
If you're familiar with Kubernetes client, the Argo client follows the same behaviour.
from argo.workflows.client import V1alpha1Api from argo.workflows.config import load_kube_config load_kube_config() # loads local configuration from ~/.kube/config
And to list Workflows from a namespace (say
v1alpha1 = V1alpha1Api() wfs = v1alpha1.list_namespaced_workflows(namespace="argo")
To submit a
Workflow, one would simply load it from a YAML* and submit it as such:
import requests import yaml namespace = "argo" # hello-world example resp = requests.get("https://raw.githubusercontent.com/argoproj/argo/master/examples/hello-world.yaml") resp.raise_for_status() manifest: dict = yaml.safe_load(resp.text) # Submit the Workflow to the `argo` namespace v1alpha1.create_namespaced_workflow(namespace, manifest)
* When working on a higher level of abstraction, check out the Argo Python DSL
The client is generated from the Argo and Kubernetes OpenAPI specification.
We follow semantic versioning, the client starts at version
1.0 which matches Argo release
2.3.0 and continues onwards.
|Argo 2.3||Argo 2.4||Argo 2.5|
✓Exactly the same features / API objects in both client-python and the Kubernetes version.
+client-python has features or api objects that may not be present in the Kubernetes cluster, but everything they have in common will work.
-The Kubernetes cluster has features the client-python library can't use (additional API objects, etc).
These can be then installed directly from github:
pip install -e "git+git://github.com/CermakM/argo-client-python@argo/v2.4.0#egg=argo-workflows"
:warning: The compatibility for such cases is not guaranteed
If you wish to generate code yourself, you can do so by running
make generate with the
ARGO_VERSION environment variable being set to the you want to generate the client for.
in the Makefile:
- make sure to select a compatible
KUBERNETES_BRANCHaccording to Argo's Gopkg.toml
- make sure to select a compatible version of kubernetes-client
- update requirements.txt and Pipfile
For additional configuration check out the Makefile.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size argo_workflows-3.2.0-py3-none-any.whl (134.3 kB)||File type Wheel||Python version py3||Upload date||Hashes View|
|Filename, size argo-workflows-3.2.0.tar.gz (96.6 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for argo_workflows-3.2.0-py3-none-any.whl