containers.podman.podman_volume 模块 – 管理 Podman 卷

注意

此模块是 containers.podman 集合(版本 1.16.2)的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。 它不包含在 ansible-core 中。 要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install containers.podman。 您需要满足其他要求才能使用此模块,请参阅 要求 了解详细信息。

要在 playbook 中使用它,请指定:containers.podman.podman_volume

containers.podman 1.1.0 中的新增功能

概要

  • 管理 Podman 卷

要求

在执行此模块的主机上需要以下要求。

  • podman

参数

参数

注释

debug

boolean

返回有助于调查的其他信息。

选项

  • false ← (默认)

  • true

driver

string

指定卷驱动程序名称(默认为 local)。

executable

string

如果 podman 可执行文件不在运行 podman 的机器上的 $PATH 中,则指定其路径

默认值: "podman"

label

dictionary

向 Pod 卷添加元数据(例如,label com.example.key=value)。

name

string / 必需

卷的名称。

options

list / 元素=string

设置特定于驱动程序的选项。 例如 “device=tpmfs”、“type=tmpfs”。 由于 podman 中的更改,不支持 UID 和 GID 的幂等性。

quadlet_dir

path

要写入 quadlet 文件的目录的路径。 默认情况下,对于 root 用户,它将设置为 /etc/containers/systemd/,对于非 root 用户,则设置为 ~/.config/containers/systemd/

quadlet_file_mode

any

quadlet 文件的权限。

quadlet_file_mode 可以指定为八进制数字或符号模式(例如,u+rwxu=rw,g=r,o=r)。 对于八进制数字格式,您必须添加前导零,以便 Ansible 的 YAML 解析器知道它是八进制数字(如 064401777),或者将其引用起来(如 '644''1777'),以便 Ansible 接收一个字符串并可以将其自己的转换从字符串转换为数字。 如果不遵循这些规则之一,则给 Ansible 一个数字将最终得到一个十进制数字,这将产生意外的结果。

如果未指定 quadlet_file_mode 并且 quadlet 文件存在,则在设置新创建文件的模式时将使用默认的 '0640' 掩码。

如果未指定 quadlet_file_mode 并且 quadlet 文件确实存在,则将使用现有文件的模式。

指定 quadlet_file_mode 是确保以正确权限创建文件的最佳方式。

quadlet_filename

string

要写入的 quadlet 文件的名称。 默认情况下,它采用 name 值。

quadlet_options

list / 元素=string

quadlet 文件的选项。 以行列表的形式提供通常网络参数选项中缺少的选项。

recreate

boolean

即使存在也重新创建卷。

选项

  • false ← (默认)

  • true

state

string

卷的状态,默认为 “present”

选项

  • "present" ← (默认)

  • "absent"

  • "mounted"

  • "unmounted"

  • "quadlet"

示例

# What modules does for example
- name: Create a volume
  containers.podman.podman_volume:
    state: present
    name: volume1
    label:
      key: value
      key2: value2
    options:
      - "device=/dev/loop1"
      - "type=ext4"

- name: Create a Quadlet file for a volume
  containers.podman.podman_volume:
    state: quadlet
    name: quadlet_volume
    quadlet_filename: custom-name
    quadlet_file_mode: '0640'
    quadlet_options:
      - Group=192
      - Copy=true
      - Image=quay.io/centos/centos:latest

返回值

此处记录了常见的返回值 此处,以下是此模块独有的字段

描述

volume

dictionary

如果存在,则卷的检查结果。

返回: 始终

示例: {"CreatedAt": "2023-11-30T16:41:31.310865559+02:00", "Driver": "local", "Labels": {}, "LockNumber": 18, "MountCount": 0, "Mountpoint": "/home/user/.local/share/containers/storage/volumes/volname/_data", "Name": "volname", "NeedsChown": true, "NeedsCopyUp": true, "Options": {}, "Scope": "local"}

作者

  • Sagi Shnaidman (@sshnaidm)