Skip to content

podman

The podman domain has 6 actions. On the meta surface they are all reached through arcane_podman; on the individual surface each one is its own tool; on the dynamic surface run them with arcane_execute_action and the canonical ID.

ActionTitleKind
podman.auto_update_runRun Podman auto-updatedestructive
podman.infoGet Podman inforead
podman.kube_downTear down kube YAMLdestructive
podman.kube_generateGenerate kube YAMLread
podman.kube_playPlay kube YAMLdestructive
podman.statusGet Podman statusread

Run Podman auto-update

Run podman auto-update through the REST API or its systemd unit

  • Kind: destructive — only when dryRun is false or absent; those calls require confirm: true, the others do not
  • Required parameters: none
  • Meta tool: arcane_podman with "action": "auto_update_run"
  • Individual tool: arcane_podman_auto_update_run
  • Arcane route: POST /api/environments/{id}/podman/autoupdate
  • Operation ID: run-podman-autoupdate
  • Since: Arcane v2.17.0
  • Usage: Runs podman auto-update: containers with the label io.containers.autoupdate=registry (or local) whose image has a newer digest are pulled and restarted through their systemd units. On Podman 6.2+ it runs over the REST API and returns one report per container (dryRun only reports, and rollback, tlsVerify, authfile and filters are passed on). On older Podman it starts podman-auto-update.service on the host and returns the unit’s final state (mode systemd, no reports, and dryRun and the other options are refused with 400). 409 when neither is available (see podman.status autoUpdateMode). Sends Arcane’s update notifications for containers it updated. Needs confirm=true unless dryRun=true (a dry run only reports). Needs podman:autoupdate.
  • Related actions: podman.status, podman_quadlet.list, updater.run

Get Podman info

  • Kind: read
  • Required parameters: none
  • Meta tool: arcane_podman with "action": "info"
  • Individual tool: arcane_podman_info
  • Arcane route: GET /api/environments/{id}/podman/info
  • Operation ID: get-podman-info
  • Since: Arcane v2.17.0
  • Usage: Podman’s own podman info for the environment: host (arch, kernel, cgroup manager and version, OCI runtime, network backend, security such as rootless and SELinux), store (graph driver, image and container counts), registries and version. 400 on an environment that is not Podman (see podman.status). Needs podman:read.
  • Related actions: podman.status, system.docker_info

Tear down kube YAML

Remove pods and containers created from Kubernetes YAML

  • Kind: destructive — requires confirm: true
  • Required parameters: yaml
  • Meta tool: arcane_podman with "action": "kube_down"
  • Individual tool: arcane_podman_kube_down
  • Arcane route: POST /api/environments/{id}/podman/kube/down
  • Operation ID: down-podman-kube
  • Since: Arcane v2.17.0
  • Usage: Stops and removes the pods and containers a Kubernetes YAML created (pass the same yaml as podman.kube_play), as podman kube down, and force=true also removes the volumes it created. Returns stopReport and rmReport with the pod IDs. Irreversible. Needs podman:kube.
  • Related actions: podman.kube_play, podman_pod.list, podman_pod.delete

Generate kube YAML

Generate Kubernetes YAML from pods, containers, or volumes

  • Kind: read
  • Required parameters: names
  • Meta tool: arcane_podman with "action": "kube_generate"
  • Individual tool: arcane_podman_kube_generate
  • Arcane route: POST /api/environments/{id}/podman/kube/generate
  • Operation ID: generate-podman-kube
  • Since: Arcane v2.17.0
  • Usage: Writes Kubernetes YAML for existing pods, containers or volumes (names: their names or IDs, from podman_pod.list or container.list), as podman kube generate. type picks the kind (pod by default, or deployment, daemonset, job) and service=true adds a Service. Returns yaml. Nothing is changed, so it is safe to call to back up a pod or move it with podman.kube_play elsewhere. Needs podman:kube.
  • Related actions: podman.kube_play, podman_pod.list

Play kube YAML

Create pods and containers from Kubernetes YAML

  • Kind: destructive — only when replace is true; those calls require confirm: true, the others do not
  • Required parameters: yaml
  • Meta tool: arcane_podman with "action": "kube_play"
  • Individual tool: arcane_podman_kube_play
  • Arcane route: POST /api/environments/{id}/podman/kube/play
  • Operation ID: play-podman-kube
  • Since: Arcane v2.17.0
  • Usage: Creates pods (and their containers, volumes and config maps) from Kubernetes YAML, as podman kube play: yaml is the manifest text, start (default true) starts them, networks attaches them, and replace=true first removes existing pods of the same names: only that needs confirm=true (without replace, a name already in use fails instead of being replaced). Returns pods (id, containers, logs, containerErrors), volumes and serviceContainerId. Images are pulled when missing, so give fully qualified names (docker.io/library/…) unless the host’s registries.conf resolves short ones. Needs podman:kube.
  • Related actions: podman.kube_down, podman.kube_generate, podman_pod.list, podman_pod.get

Get Podman status

Report whether the environment runs Podman and which Podman features it supports

  • Kind: read
  • Required parameters: none
  • Meta tool: arcane_podman with "action": "status"
  • Individual tool: arcane_podman_status
  • Arcane route: GET /api/environments/{id}/podman/status
  • Operation ID: get-podman-status
  • Since: Arcane v2.17.0
  • Usage: Whether the environment’s engine is Podman, and what Arcane can do with it: detected, version, apiVersion, rootless, quadletsSupported (Podman 5.8+), quadletAppsSupported (6.1+), autoUpdateMode (rest on Podman 6.2+, systemd when Arcane reaches the host’s systemd bus, else unavailable) and systemdAvailable with systemdReason. Always answers 200: on a Docker environment detected is false and every other podman, podman_pod, podman_quadlet and podman_secret action fails with 400 ‘Podman was not detected on this environment’. Check it first. Needs podman:read.
  • Related actions: podman.info, podman_pod.list, podman_quadlet.list, podman.auto_update_run