Skip to main content

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


Release history Release notifications | RSS feed

Download files

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

Source Distribution

argo-workflows-5.0.0.tar.gz (282.6 kB view details)

Uploaded Source

Built Distribution

argo_workflows-5.0.0-py3-none-any.whl (452.5 kB view details)

Uploaded Python 3

File details

Details for the file argo-workflows-5.0.0.tar.gz.

File metadata

  • Download URL: argo-workflows-5.0.0.tar.gz
  • Upload date:
  • Size: 282.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.11

File hashes

Hashes for argo-workflows-5.0.0.tar.gz
Algorithm Hash digest
SHA256 50aa8d9b1c9c54b457775a7d751a3c5c2fccdf91f28964834c6a597ebee69783
MD5 3efac0845c4779d3c89d03aca4c31538
BLAKE2b-256 cdae6466b3685d3df3687f6e7c289d82b449e4d53a09403d8ce67f007038c69f

See more details on using hashes here.

File details

Details for the file argo_workflows-5.0.0-py3-none-any.whl.

File metadata

  • Download URL: argo_workflows-5.0.0-py3-none-any.whl
  • Upload date:
  • Size: 452.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.11

File hashes

Hashes for argo_workflows-5.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 97ae1068ba61f493bad82633dda4035e71991db1ed0c4965a08d72efe3811243
MD5 83379193fe34412eea34aec1ec808c30
BLAKE2b-256 b16a8f13d5124b111e8e054594d23782ea9c5dadda0517d1dd9ad08c7c055732

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page