Egress Weatherstack¶
Responsibility¶
Weather data capability provider for Weatherstack. Workflows call it via service_call steps and the capability registry — no orchestrator code changes required.
Capabilities:
egress.weatherstack.current— current weather for a locationegress.weatherstack.historical— historical weather (historical_daterequired)egress.weatherstack.forecast— forecast (forecast_daysoptional, up to 14)weatherstack.connection— workflow connection type (access_key)
Architecture¶
This is a capability provider (see Deploy integration contract):
- Registers with
capability-registryat startup - Orchestrator discovers endpoints dynamically
- No
EGRESS_*_URLenv var on orchestrator
Connection Model¶
name: weatherstack
type: weatherstack
access_key: "$secret:weatherstack-access-key"
Reference file: flows/connections/weatherstack.yaml.
The access key can also be set on the egress pod via WEATHERSTACK_ACCESS_KEY (Kubernetes secret meshflows-weatherstack).
Example Workflow¶
- Workflow:
flows/workflows/weatherstack_current_demo.yaml - HTTP trigger:
POST /v1/api/examples/weatherstack-current - Payload (JSON or XML):
{"query": "Amsterdam", "units": "m"}
<weather>
<query>Amsterdam</query>
<units>m</units>
</weather>
Deploy¶
- Image:
meshflows/egress-weatherstack - Deployment:
egress-weatherstack - Optional secret (CI or manual):
meshflows-weatherstackwith keyaccess_key - Example:
engine/deploy/k8s/egress-weatherstack-secret.example.yaml
Health¶
GET /healthzGET /readyzGET /internal/capabilities