wmill
The core client for the Windmill platform.
Usage
Basic Usage
The wmill package has several methods at the top-level for the most frequent operations you will need.
The following are some common examples:
import time
import wmill
def main():
# Get the value of a variable
wmill.get_variable("u/user/variable_path")
# Run a script synchronously and get the result
wmill.run_script("f/pathto/script", args={"arg1": "value1"})
# Get the value of a resource
wmill.get_resource("u/user/resource_path")
# Set the script's state
wmill.set_state({"ts": time.time()})
# Get the script's state
wmill.get_state()
Advanced Usage
The wmill package also exposes the Windmill class, which is the core client for the Windmill platform.
import time
from wmill import Windmill
def main():
client = Windmill(
# token=... <- this is optional. otherwise the client will look for the WM_TOKEN env var
)
# Get the current version of the client
client.version
# Get the current user
client.user
# Convenience get and post methods exist for https://app.windmill.dev/openapi.html#/
# these are thin wrappers around the httpx library's get and post methods
# list worker groups
client.get("/configs/list_worker_groups")
# create a group
client.post(
f"/w/{client.workspace}/groups/create",
json={
"name": "my-group",
"summary": "my group summary",
}
)
# Get and set the state of the script
now = time.time()
client.state = {"ts": now}
assert client.state == {"ts": now}
# Run a job asynchronously
job_id = client.run_script_async(path="path/to/script")
# Get its status
client.get_job_status(job_id)
# Get its result
client.get_result(job_id)
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wmill-1.780.0.tar.gz
(32.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
wmill-1.780.0-py3-none-any.whl
(32.6 kB
view details)
File details
Details for the file wmill-1.780.0.tar.gz.
File metadata
- Download URL: wmill-1.780.0.tar.gz
- Upload date:
- Size: 32.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.11.3 Linux/6.14.0-1017-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce58c0c3a7fbe3cf69532cde52229615ca376dc74e0b7146dc2e220883e85efe
|
|
| MD5 |
23761c081de727a6f4a10d87f0e5a2d9
|
|
| BLAKE2b-256 |
5452be12d8e42d2255ad987efccc5d0207aa1509d307b090413a60b1412d89a9
|
File details
Details for the file wmill-1.780.0-py3-none-any.whl.
File metadata
- Download URL: wmill-1.780.0-py3-none-any.whl
- Upload date:
- Size: 32.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.11.3 Linux/6.14.0-1017-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd5a419fb49e4dfc5d6846f596274eaf232c3be414ad6635c667590fefaf82f3
|
|
| MD5 |
9ee6f3305ce659b4c4e37ec74e575dd9
|
|
| BLAKE2b-256 |
a3e16697eda346aeeb6928ef59c6fde42e5b00fe264e2775511d0b4f711f6ea9
|