dellemc.openmanage.ome_firmware_catalog 模块 – 在 OpenManage Enterprise 或 OpenManage Enterprise Modular 上创建、修改或删除固件目录

注意

此模块是 dellemc.openmanage 集合 (版本 9.9.0) 的一部分。

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

要安装它,请使用: ansible-galaxy collection install dellemc.openmanage。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在剧本中使用它,请指定: dellemc.openmanage.ome_firmware_catalog

dellemc.openmanage 2.0.0 中的新增功能

概要

  • 此模块允许在 OpenManage Enterprise 或 OpenManage Enterprise Modular 上创建、修改或删除固件目录。

要求

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

  • python >= 3.9.6

参数

参数

注释

ca_path

路径

在 dellemc.openmanage 5.0.0 中添加

包含用于验证的 CA 证书的隐私增强邮件 (PEM) 文件。

catalog_description

字符串

目录的描述。

catalog_id

列表 / 元素=整数

在 dellemc.openmanage 3.4.0 中添加

目录的 ID。

此选项与 *catalog_name* 互斥。

当 *state* 为 absent 时,提供受支持的固件目录 ID 列表。

catalog_name

列表 / 元素=字符串

要创建的固件目录的名称。

此选项与 *catalog_id* 互斥。

当 *state* 为 absent 时,提供受支持的固件目录名称列表。

check_certificate

布尔值

当 *repository_type* 为 HTTPS 时,忽略证书警告。如果为 true。如果不是,则不忽略证书警告。

选项

  • false ← (默认)

  • true

file_name

字符串

与 *source_path* 关联的目录文件名。

当 *repository_type* 为 DELL_ONLINE 时,此选项将被忽略。

hostname

字符串 / 必填

OpenManage Enterprise 或 OpenManage Enterprise Modular 的 IP 地址或主机名。

job_wait

布尔值

在 dellemc.openmanage 3.4.0 中添加

提供等待作业完成的选项。

此选项适用于 *state* 为 present 的情况。

选项

  • false

  • true ← (默认)

job_wait_timeout

整数

在 dellemc.openmanage 3.4.0 中添加

*job_wait* 的最大等待时间(以秒为单位)。仅在此持续时间内跟踪作业。

此选项适用于 *job_wait* 为 true 的情况。

默认值: 600

new_catalog_name

字符串

在 dellemc.openmanage 3.4.0 中添加

固件目录的新名称。

password

字符串

OpenManage Enterprise 或 OpenManage Enterprise Modular 密码。

如果未提供密码,则使用环境变量 OME_PASSWORD

示例:export OME_PASSWORD=password

port

整数

OpenManage Enterprise 或 OpenManage Enterprise Modular 的 HTTPS 端口。

默认值: 443

repository_domain

字符串

存储库的域名。

当 *repository_type* 为 DELL_ONLINE 时,此选项将被忽略。

repository_password

字符串

访问存储库的密码。

当 *repository_type* 为 CIFS 时,此选项是必需的。

当 *repository_type* 为 DELL_ONLINE 时,此选项将被忽略。

注意 提供此选项时,模块始终报告已更改的状态。

repository_type

字符串

存储库的类型。支持的类型为 NFS、CIFS、HTTP、HTTPS 和 DELL_ONLINE。

选项

  • "NFS"

  • "CIFS"

  • "HTTP"

  • "HTTPS"

  • "DELL_ONLINE"

repository_username

字符串

存储目录的存储库用户名。

当 *repository_type* 为 CIFS 时,此选项是必需的。

当 *repository_type* 为 DELL_ONLINE 时,此选项将被忽略。

source

字符串

存储在本地网络上固件目录的系统IP地址。

默认情况下,当repository_typeDELL_ONLINE 时,此选项设置为downloads.dell.com。

source_path

字符串

指定目录文件位置的完整路径,不包括文件名。

repository_typeDELL_ONLINE 时,此选项将被忽略。

state

字符串

在 dellemc.openmanage 3.4.0 中添加

present 创建或修改目录。

absent 删除现有目录。

选项

  • "present" ← (默认)

  • "absent"

timeout

整数

在 dellemc.openmanage 5.0.0 中添加

套接字级别超时(以秒为单位)。

默认值: 30

username

字符串

OpenManage Enterprise 或 OpenManage Enterprise Modular 用户名。

如果未提供用户名,则使用环境变量 OME_USERNAME

示例:export OME_USERNAME=username

validate_certs

布尔值

在 dellemc.openmanage 5.0.0 中添加

如果为 false,则不会验证SSL证书。

仅在使用自签名证书的个人控制站点上配置 false

在集合版本 5.0.0 之前,validate_certs 默认值为 false

选项

  • false

  • true ← (默认)

x_auth_token

字符串

在 dellemc.openmanage 9.3.0 中添加

身份验证令牌。

如果未提供 x_auth_token,则使用环境变量 OME_X_AUTH_TOKEN

示例:export OME_X_AUTH_TOKEN=x_auth_token

备注

注意

  • 如果提供了repository_password,则模块始终报告已更改的状态。

  • 从可以直接访问 Dell OpenManage Enterprise 或 OpenManage Enterprise Modular 的系统运行此模块。

  • 此模块支持 IPv4 和 IPv6 地址。

  • 此模块支持 check_mode

示例

---
- name: Create a catalog from HTTPS repository
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    catalog_name: "catalog_name"
    catalog_description: "catalog_description"
    repository_type: "HTTPS"
    source: "downloads.dell.com"
    source_path: "catalog"
    file_name: "catalog.gz"
    check_certificate: true

- name: Create a catalog from HTTP repository
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    catalog_name: "catalog_name"
    catalog_description: "catalog_description"
    repository_type: "HTTP"
    source: "downloads.dell.com"
    source_path: "catalog"
    file_name: "catalog.gz"

- name: Create a catalog using CIFS share
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    catalog_name: "catalog_name"
    catalog_description: "catalog_description"
    repository_type: "CIFS"
    source: "192.167.0.1"
    source_path: "cifs/R940"
    file_name: "catalog.gz"
    repository_username: "repository_username"
    repository_password: "repository_password"
    repository_domain: "repository_domain"

- name: Create a catalog using NFS share
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    catalog_name: "catalog_name"
    catalog_description: "catalog_description"
    repository_type: "NFS"
    source: "192.166.0.2"
    source_path: "/nfs/R940"
    file_name: "catalog.xml"

- name: Create a catalog using repository from Dell.com
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    catalog_name: "catalog_name"
    catalog_description: "catalog_description"
    repository_type: "DELL_ONLINE"
    check_certificate: true

- name: Modify a catalog using a repository from CIFS share
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    catalog_name: "catalog_name"
    catalog_description: "new catalog_description"
    repository_type: "CIFS"
    source: "192.167.0.2"
    source_path: "cifs/R941"
    file_name: "catalog1.gz"
    repository_username: "repository_username"
    repository_password: "repository_password"
    repository_domain: "repository_domain"

- name: Modify a catalog using a repository from Dell.com
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    catalog_id: 10
    new_catalog_name: "new_catalog_name"
    repository_type: "DELL_ONLINE"
    catalog_description: "catalog_description"

- name: Delete catalog using catalog name
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    state: absent
    catalog_name: ["catalog_name1", "catalog_name2"]

- name: Delete catalog using catalog id
  dellemc.openmanage.ome_firmware_catalog:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    state: absent
    catalog_id: [11, 34]

返回值

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

描述

associated_baselines

列表 / 元素=字典

与目录关联的基线的 ID。

返回:stateabsent

示例: [{"BaselineId": 24, "BaselineName": "new"}, {"BaselineId": 25, "BaselineName": "c7"}, {"BaselineId": 27, "BaselineName": "c4"}]

catalog_id

整数

已删除目录的ID。

返回:stateabsent

示例: 10123

catalog_status

字典

目录操作的详细信息。

返回:statepresent

示例: {"AssociatedBaselines": [], "BaseLocation": null, "BundlesCount": 0, "Filename": "catalog.gz", "Id": 12, "LastUpdated": null, "ManifestIdentifier": null, "ManifestVersion": null, "NextUpdate": null, "PredecessorIdentifier": null, "ReleaseDate": null, "ReleaseIdentifier": null, "Repository": {"CheckCertificate": true, "Description": "HTTPS Desc", "DomainName": null, "Id": null, "Name": "catalog4", "Password": null, "RepositoryType": "HTTPS", "Source": "company.com", "Username": null}, "Schedule": null, "SourcePath": "catalog", "Status": null, "TaskId": 10094}

error_info

字典

HTTP错误的详细信息。

返回:发生HTTP错误时

示例: {"error": {"@Message.ExtendedInfo": [{"Message": "Unable to create or update the catalog because a repository with the same name already exists.", "Resolution": "Enter a different name and retry the operation.", "Severity": "Critical"}], "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information."}}

job_id

整数

目录任务的作业 ID。

返回:目录作业处于运行状态时

示例: 10123

msg

字符串

固件目录操作的总体状态。

返回:始终

示例: "Successfully triggered the job to create a catalog with Task ID : 10094"

作者

  • Sajna Shetty(@Sajna-Shetty)

  • Jagadeesh N V(@jagadeeshnv)