Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

Community Maintained Python client for Argo Workflows

Project description

Argo Workflows Python Client

Python client for Argo Workflows

Argo Version: 2.11.8

Installation

pip install argo-workflows

Examples

A quick start example with one of the example workflow

import yaml
import requests
from argo.workflows.client import (ApiClient,
                                   WorkflowServiceApi,
                                   Configuration,
                                   V1alpha1WorkflowCreateRequest)

# assume we ran `kubectl -n argo port-forward deployment/argo-server 2746:2746`

config = Configuration(host="http://localhost:2746")
client = ApiClient(configuration=config)
service = WorkflowServiceApi(api_client=client)
WORKFLOW = 'https://raw.githubusercontent.com/argoproj/argo/v2.11.8/examples/dag-diamond-steps.yaml'

resp = requests.get(WORKFLOW)
manifest: dict = yaml.safe_load(resp.text)

service.create_workflow('argo', V1alpha1WorkflowCreateRequest(workflow=manifest))

Documentation for API Endpoints

All URIs are relative to http://localhost

Class Method HTTP request Description
ArchivedWorkflowServiceApi deleteArchivedWorkflow DELETE /api/v1/archived-workflows/{uid}
ArchivedWorkflowServiceApi getArchivedWorkflow GET /api/v1/archived-workflows/{uid}
ArchivedWorkflowServiceApi listArchivedWorkflows GET /api/v1/archived-workflows
ClusterWorkflowTemplateServiceApi createClusterWorkflowTemplate POST /api/v1/cluster-workflow-templates
ClusterWorkflowTemplateServiceApi deleteClusterWorkflowTemplate DELETE /api/v1/cluster-workflow-templates/{name}
ClusterWorkflowTemplateServiceApi getClusterWorkflowTemplate GET /api/v1/cluster-workflow-templates/{name}
ClusterWorkflowTemplateServiceApi lintClusterWorkflowTemplate POST /api/v1/cluster-workflow-templates/lint
ClusterWorkflowTemplateServiceApi listClusterWorkflowTemplates GET /api/v1/cluster-workflow-templates
ClusterWorkflowTemplateServiceApi updateClusterWorkflowTemplate PUT /api/v1/cluster-workflow-templates/{name}
CronWorkflowServiceApi createCronWorkflow POST /api/v1/cron-workflows/{namespace}
CronWorkflowServiceApi deleteCronWorkflow DELETE /api/v1/cron-workflows/{namespace}/{name}
CronWorkflowServiceApi getCronWorkflow GET /api/v1/cron-workflows/{namespace}/{name}
CronWorkflowServiceApi lintCronWorkflow POST /api/v1/cron-workflows/{namespace}/lint
CronWorkflowServiceApi listCronWorkflows GET /api/v1/cron-workflows/{namespace}
CronWorkflowServiceApi updateCronWorkflow PUT /api/v1/cron-workflows/{namespace}/{name}
EventServiceApi receiveEvent POST /api/v1/events/{namespace}/{discriminator}
InfoServiceApi getInfo GET /api/v1/info
InfoServiceApi getUserInfo GET /api/v1/userinfo
InfoServiceApi getVersion GET /api/v1/version
WorkflowServiceApi createWorkflow POST /api/v1/workflows/{namespace}
WorkflowServiceApi deleteWorkflow DELETE /api/v1/workflows/{namespace}/{name}
WorkflowServiceApi getWorkflow GET /api/v1/workflows/{namespace}/{name}
WorkflowServiceApi lintWorkflow POST /api/v1/workflows/{namespace}/lint
WorkflowServiceApi listWorkflows GET /api/v1/workflows/{namespace}
WorkflowServiceApi podLogs GET /api/v1/workflows/{namespace}/{name}/{podName}/log
WorkflowServiceApi resubmitWorkflow PUT /api/v1/workflows/{namespace}/{name}/resubmit
WorkflowServiceApi resumeWorkflow PUT /api/v1/workflows/{namespace}/{name}/resume
WorkflowServiceApi retryWorkflow PUT /api/v1/workflows/{namespace}/{name}/retry
WorkflowServiceApi setWorkflow PUT /api/v1/workflows/{namespace}/{name}/set
WorkflowServiceApi stopWorkflow PUT /api/v1/workflows/{namespace}/{name}/stop
WorkflowServiceApi submitWorkflow POST /api/v1/workflows/{namespace}/submit
WorkflowServiceApi suspendWorkflow PUT /api/v1/workflows/{namespace}/{name}/suspend
WorkflowServiceApi terminateWorkflow PUT /api/v1/workflows/{namespace}/{name}/terminate
WorkflowServiceApi watchEvents GET /api/v1/stream/events/{namespace}
WorkflowServiceApi watchWorkflows GET /api/v1/workflow-events/{namespace}
WorkflowTemplateServiceApi createWorkflowTemplate POST /api/v1/workflow-templates/{namespace}
WorkflowTemplateServiceApi deleteWorkflowTemplate DELETE /api/v1/workflow-templates/{namespace}/{name}
WorkflowTemplateServiceApi getWorkflowTemplate GET /api/v1/workflow-templates/{namespace}/{name}
WorkflowTemplateServiceApi lintWorkflowTemplate POST /api/v1/workflow-templates/{namespace}/lint
WorkflowTemplateServiceApi listWorkflowTemplates GET /api/v1/workflow-templates/{namespace}
WorkflowTemplateServiceApi updateWorkflowTemplate PUT /api/v1/workflow-templates/{namespace}/{name}

Documentation for Models

Code generation

The generated SDK will correspond to the argo version specified in the ARGO_VERSION file.

If you wish to generate code yourself, you can do so by reproducing the build environment (image): make builder_image, then running make builder_make to generate the client.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for argo-workflows, version 5.0.0
Filename, size File type Python version Upload date Hashes
Filename, size argo_workflows-5.0.0-py3-none-any.whl (452.5 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size argo-workflows-5.0.0.tar.gz (282.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page