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.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2899e02d3d7f3cf9c44aabdf21ec79767a06c12151e8edab75574a2aaa7d0114 |
|
MD5 | 367edd4da57c281dc62f4a437569090a |
|
BLAKE2b-256 | da89c18aa9d923cf480a48a0b387e8da08b903644d97c77d72bb8464548c3e77 |