加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

依赖关系 – 如何为角色指定可安装的预处理程序?

发布时间:2020-12-14 04:31:07 所属栏目:百科 来源:网络整理
导读:应该如何为角色依赖关系定义预处理。 我目前有一个apache角色有一个用户变量,所以在我自己的角色角色 /meta/main.yml我做的事情像: ---dependencies: - { role: apache,user: proxy } 此时的问题是我还没有我指定的用户,当角色尝试在不存在的用户下启动ap
应该如何为角色依赖关系定义预处理。
我目前有一个apache角色有一个用户变量,所以在我自己的角色<角色> /meta/main.yml我做的事情像:
---
dependencies:
  - { role: apache,user: proxy }

此时的问题是我还没有我指定的用户,当角色尝试在不存在的用户下启动apache服务器时,我收到一个错误。

我尝试在< role> /tasks/main.yml中创建一个任务,如:

---
- user: name=proxy

但是,只有在依赖关系(这是预期的)运行apache任务之后才能创建用户。那么,有没有办法创建一个在依赖关系中运行角色之前创建用户的任务?

简短的答案:我不认为该语言允许为角色指定pre_tasks。

您可以通过将用户的创建移动到单独的剧本中,并将包含该剧本而不是角色来作弊/解决。这样的事情

my_fake_role_playbooks / user_and_apache.yml:

- hosts: "{{p_hosts}}"
  pre_tasks:
    user: name=proxy
  roles: [ apache ]

actual_playbook.yml:

- include: my_fake_role_playbooks/user_and_apache.yml p_hosts=[host1,host2]

*代码未经测试。

HTH

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读