Skip to main content

inmanta-module-podman

pypi version build status

This package is an adapter that is meant to be used with the inmanta orchestrator: https://docs.inmanta.com

Features

This module allows to manage podman resources, on a unix host. It contains the following resources:

  1. podman::Network: to manage a podman network (subnets, routes, dns, driver, labels, options, ...).
  2. podman::NetworkDiscovery: to discover existing podman networks owned by a user on a host.
  3. podman::Pod: to manage a podman pod, including its networking, port publishing, id mapping and shared resources.
  4. podman::Container: to manage a podman container (image, command, environment, volumes, networks, healthcheck, security label, resource limits, auto-update, ...).
  5. podman::Image, podman::ImageFromRegistry and podman::ImageFromSource: to make sure a container image is present on a host, either pulled from a registry or built from a Containerfile.
  6. podman::ImageDiscovery: to discover existing container images owned by a user on a host.
  7. podman::AutoUpdate: to configure the podman auto-update service for a given user.
  8. podman::services::SystemdContainer, podman::services::SystemdPod and podman::services::SystemdAutoUpdate: to wrap a container, a pod or the auto-update service into a systemd service. These services can either be generated as plain systemd unit files (calling the podman cli) or as quadlet unit files.

Example

The following example shows how to run a container as a systemd service, using a quadlet unit file. The container is a simple nginx web server, exposing its port 80 on the host port 8080.

import mitogen
import podman
import podman::container_like
import podman::services
import std

host = std::Host(
    name="localhost",
    os=std::linux,
    via=mitogen::Local(),
)

# Make sure the container image is present on the host
image = podman::ImageFromRegistry(
    host=host,
    name="docker.io/library/nginx:latest",
)

# Define the container
web = podman::Container(
    host=host,
    name="nginx-web",
    image=image.name,
    publish=[
        podman::container_like::Publish(host_port="8080", container_port="80"),
    ],
)

# Wrap the container into a systemd service, using a quadlet unit file
podman::services::SystemdContainer(
    container=web,
    state="running",
    enabled=true,
    systemd_unit_dir="/etc/systemd/system",
    systemd_container_dir="/etc/containers/systemd",
    quadlet=true,
)

Find more examples in the tests folder of this module!

Metadata

Release files for inmanta-module-podman 1.13.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for inmanta-module-podman 1.13.2
File Size Uploaded
inmanta_module_podman-1.13.2.tar.gz 38.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for inmanta-module-podman 1.13.2
File Interpreter ABI Platform
inmanta_module_podman-1.13.2-py3-none-any.whl Python 3 none any Details

Total release size: 82.6 kB

Release files / inmanta_module_podman-1.13.2.tar.gz

Download URL inmanta_module_podman-1.13.2.tar.gz
Size 38.3 kB
Tags Source
SHA-256 checksum
How to use checksums
374cd9c58abb5222f8102b0d2fb678630355f2cfe35a4364f3a5b69670208650
BLAKE2b-256 checksum
How to use checksums
ee66ddbc5aa74521dbd49c06b32970c9c215f709cf44802423c5161373817f92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / inmanta_module_podman-1.13.2-py3-none-any.whl

Download URL inmanta_module_podman-1.13.2-py3-none-any.whl
Size 44.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5e1d56b6215f34a13bad587ebfe5a50559f3ce3bd577233940a5e12c3c0c634e
BLAKE2b-256 checksum
How to use checksums
88714db958845c24b4b9ef6017fabac3f25fa2f030dfe828a887a3ba7fcbc319
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.13.2 This release

2 release files

1.13.1

2 release files

1.13.0

2 release files

1.12.0

2 release files

1.11.3

2 release files

1.11.1

2 release files

1.11.0

2 release files

1.10.1

2 release files

1.9.0

2 release files

1.8.1

2 release files

1.8.0

2 release files

1.7.0

2 release files

1.6.0

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.0

1 release file

1.2.0

1 release file

1.1.0

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.0

1 release file

0.5.0

1 release file

0.4.2

1 release file

0.4.1

1 release file

0.4.0

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page