Skip to Content
Advanced FeaturesWorkflow Endpoints

Workflow Endpoints

When a workflow service exposes network endpoints (configured via the network section in your workflow definition), the fuzzball workflow endpoints command retrieves the public URL(s) for those endpoints.

Usage

$ fuzzball workflow endpoints WORKFLOW_ID [SERVICE_NAME] [ENDPOINT_NAME]

Arguments:

ArgumentRequiredDescription
WORKFLOW_IDYesThe ID of a running workflow
SERVICE_NAMENoFilter results to a specific service
ENDPOINT_NAMENoFilter results to a specific endpoint within a service

Examples

Get all endpoints for a workflow:

$ fuzzball workflow endpoints <workflow_id> SERVICE ENDPOINT URL jupyter web https://endpoints.example.com/endpoints/accounts/.../jupyter/web/ api-server grpc https://endpoints.example.com/endpoints/accounts/.../api-server/grpc/

Get all endpoints for a specific service:

$ fuzzball workflow endpoints <workflow_id> jupyter

Get a specific endpoint by name:

$ fuzzball workflow endpoints <workflow_id> jupyter web

Output the results as JSON (useful for scripting):

$ fuzzball workflow endpoints <workflow_id> --json

Configuring endpoints in a workflow

Endpoints are declared in the network section of a service definition. For example, a Jupyter service that exposes a web endpoint:

services: jupyter: image: uri: docker://jupyter/base-notebook:latest script: | #!/bin/bash jupyter lab --ip=0.0.0.0 --no-browser resource: cpu: cores: 2 memory: size: 4GB network: ports: - name: web port: 8888 protocol: tcp endpoints: - name: web port-name: web protocol: https type: path scope: user

See the workflow syntax reference for full details on the network configuration options.