So putting it all together...
"""Run tests for a single Python version."""
import sys
import anyio
import dagger
import os
async def docker_image_build():
platforms = ["linux/amd64", "linux/arm64"]
async with dagger.Connection(dagger.Config(log_output=sys.stderr)) as client:
src = client.host().directory("./")
variants = []
for platform in platforms:
blog = (
client.container(platform=dagger.Platform(platform))
.build(
context = src,
dockerfile = "Dockerfile",
build_args=[
dagger.BuildArg("PKG_NAME", os.environ.get("PKG_NAME", "default-value"))
]
)
)
variants.append(blog)
image = await client.container().publish("ttl.sh/test_image:1h", platform_variants=variants)
print(f"Image is accessible at >>>>>>> {image}")
if __name__ == "__main__":
anyio.run(docker_image_build)