4.9. 创建集合命名空间

集合的命名空间必须存在,才能成功导入。您可以通过查看集合 tarball filename 的第一个部分来查找命名空间名称。例如,集合 ansible-netcommon-3.0.0.tar.gz 的命名空间是 ansible

流程

  1. 登录到私有自动化中心 web 控制台。
  2. 进入 CollectionsNamespaces
  3. Create
  4. 提供命名空间名称。
  5. Create

4.9.1. 使用 GUI 导入集合 tarball

  1. 登录到私有自动化中心 web 控制台。
  2. 进入 CollectionsNamespaces
  3. 点您要将集合导入到的命名空间的 View 集合
  4. Upload collection
  5. 文件夹图标并选择集合的 tarball。
  6. Upload

这将打开"我的导入"页面。您可以查看导入的状态,以及导入的文件和模块的各种详情。

4.9.1.1. 在 CLI 中使用 ansible-galaxy 导入集合 tarball

您可以使用命令行界面而不是 GUI 将集合导入到私有自动化中心。

  1. 将集合 tarball 复制到私有自动化中心。
  2. 通过 SSH 登录到私有自动化中心服务器。
  3. 将自签名 root CA 证书添加到自动化中心的信任存储中。

    # cp /etc/pulp/certs/root.crt \
        /etc/pki/ca-trust/source/anchors/automationhub-root.crt
    # update-ca-trust
  4. 使用 hub 配置更新 /etc/ansible/ansible.cfg 文件。使用令牌或用户名和密码进行身份验证。

    [galaxy]
    server_list = private_hub
    
    [galaxy_server.private_hub]
    url=https://<hub_fqdn>/api/galaxy/
    token=<token_from_private_hub>
  5. 使用 ansible-galaxy 命令导入集合。
$ ansible-galaxy collection publish <collection_tarball>
注意

创建集合前面属于的命名空间,或发布集合将失败。