A client package for running Dagger pipelines in Python.
Project description
Dagger Python SDK
A client package for running Dagger pipelines.
What is the Dagger Python SDK?
The Dagger Python SDK contains everything you need to develop CI/CD pipelines in Python, and run them on any OCI-compatible container runtime.
Example
# say.py
import sys
import anyio
import dagger
async def main(args: list[str]):
async with dagger.Connection() as client:
# build container with cowsay entrypoint
ctr = (
client.container()
.from_("python:alpine")
.with_exec(["pip", "install", "cowsay"])
.with_entrypoint(["cowsay"])
)
# run cowsay with requested message
result = await ctr.with_exec(args).stdout()
print(result)
if __name__ == "__main__":
anyio.run(main, sys.argv[1:])
Run with:
$ python say.py "Simple is better than complex"
_____________________________
| Simple is better than complex |
=============================
\
\
^__^
(oo)\_______
(__)\ )\/\
||----w |
|| ||
Learn more
Development
Requirements:
Start environment with poetry install
.
Run tests with poetry run poe test
.
Reformat code with poetry run poe fmt
or just check with poetry run poe lint
.
Re-regenerate client with poetry run poe generate
.
Build reference docs with poetry run poe docs
.
Tip: You don't need to prefix the previous commands with poetry run
if you activate the virtualenv with poetry shell
.
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
Built Distribution
Hashes for dagger_io-0.3.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2cedbea78ed206aa3db5449af6a5952f0244d7345214ed233d8443d510dd0575 |
|
MD5 | 236fae6fdf41d844cd3158137408c468 |
|
BLAKE2b-256 | 8da8412678af2a5847053abe4459cd64bba24b25a1d89f7769248316330c8fa4 |