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 卷添加元数据(例如,标签 com.example.key=value)。

name

string / 必需

卷的名称。

options

list / elements=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 / elements=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

返回值

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

描述

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)