dependencies - 如何为角色指定 ansible 前置任务?

标签 dependencies ansible role

应该如何为角色依赖性定义前置任务。 我目前有一个apache具有用户变量的角色,因此在我自己的角色 <role>/meta/main.yml 中我做了类似的事情:

---
dependencies:
  - { role: apache, user: proxy }

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

我尝试在<role>/tasks/main.yml中创建任务像:

---
- user: name=proxy

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

最佳答案

我使用pre_tasks在角色之前执行一些任务,感谢Kashyap .

#!/usr/bin/env ansible-playbook

---
- hosts: all
  become: true
  pre_tasks:
    - name: start tasks and sent notifiaction to HipChat
      hipchat:
        color: purple
        token: "{{ hipchat_token }}"
        room: "{{ hipchat_room }}"
        msg: "[Start] Run 'foo/setup.yml' playbook on {{ ansible_nodename }}."

  roles:
    - chusiang.vim-and-vi-mode

  vars:
    ...

  tasks:
    - name: include main task
      include: tasks/main.yml

  post_tasks:
    - name: finish tasks and sent notifiaction to HipChat
      hipchat:
        color: green
        token: "{{ hipchat_token }}"
        room: "{{ hipchat_room }}"
        msg: "[Finish] Run 'foo/setup.yml' playbook on {{ ansible_nodename }}."

# vim:ft=ansible :

关于dependencies - 如何为角色指定 ansible 前置任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29258759/

相关文章:

mysql - 在ansible中创建具有mysql角色的复制用户时出错

java - 查找最小必要的 java 类路径

java - 从已编译的类中推断出公开可用的 Java 代码的版本

java - 当类依赖不存在时避免崩溃

docker - docker多阶段构建期间的Gradle依赖项缓存?

ssh - ansible ssh连接错误

ansible - 如何在剧本中过滤收集事实?

Azure Active Directory 角色管理

c# - ASP.NET 自定义角色管理

Spring security jdbcAuthentication 不适用于默认角色处理