问题标签 [ansible-role]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
284 浏览

ansible - 无法通过Ansible安装python、pip相关应用

我正在使用下面的 ansible yml 文件来安装 python、pip 等。

roles/python/main.yml

当我ansible-playbook在这个脚本上运行时,我得到以下

它们没有错误,但我检查了这些应用程序没有安装在远程主机上。我的 yml 文件有什么问题?有什么地方可以检查错误是什么?

以下是我的剧本:

python.yml

下面是我运行的命令:

ansible-playbook -i hosts python.yml

0 投票
2 回答
83 浏览

ansible - 如何让主机从该角色中运行某个角色

我正在尝试设置一个 Zookeeper 集群,为了设置指向 ZK 节点的 url,我想知道哪些是运行当前角色的主机的 ip 地址。

我知道从剧本中我可以通过一个变量传递主机,但是在角色中检查这个会很好。

0 投票
4 回答
16660 浏览

node.js - 为 Ansible 安装 NodeJS LTS

我正在寻找合适的 Ansible Role 或 Ansible YAML 文件,用于在 Ubuntu 16.04.3 xenial 系统上安装 NodeJS LTS。我尝试了来自 Galaxy 的 10 多个 Ansible 角色,但没有发现其中任何一个有效(抛出错误,例如potentially dangerous to add this PPA etc..

谁能提供任何 Ansible 剧本或建议我在 Ubuntu 16.04 上安装 NodeJS LTS 的角色?

0 投票
2 回答
2054 浏览

ansible - 在以前的失败之后,如何始终运行一些 ansible 角色?

我有一套看起来像的剧本

当前的问题是,我们拥有的前 4 个角色ignore_errors: true都不是一个好的做法,因为它很难读取输出和调试。

被滥用的唯一原因ignore_errors是我们希望能够在最后执行 collect_logs,而不管结果如何。

我们如何重构它以删除 ignore_errors 并拥有更多的快速失败策略。

请注意,我们有很多调用 collect_logs 角色的剧本,因此“在剧本中移动代码”并不是真正重用它的方法。

0 投票
1 回答
5855 浏览

vagrant - 如何使用 Vagrant 自动安装 Ansible Galaxy 角色?

仅使用一个剧本,那么不可能让 Ansible 自动安装依赖角色。至少根据这个SO thread

但是,我有使用Vagrant和 Vagrant 的Ansible local provisioner的额外“优势” 。我可以应用任何技巧吗?

0 投票
2 回答
9771 浏览

ansible - Ansible 角色全局变量

我使用角色来部署我的机器,角色有变量,但有时我有多个角色,我想把一个全局变量文件放在根文件夹中,所以可以使用vars/global.yml覆盖 role/vars/main.yml

但是如果根文件夹中有全局变量,只需覆盖基于角色的变量并实现 vars/global 代替。

有什么东西可以重用角色和变量吗?

0 投票
1 回答
1289 浏览

vagrant - 是否可以忽略 Ansible 中缺少的角色?

我在一个项目中使用 Vagrant+Ansible。我想让用户可以选择提供一个名为“工作区”的角色,该角色将包含在配置中。这允许用户设置自己喜欢的提示、编辑器等。

如果在剧本中指定了一个不存在的角色,整个事情就会崩溃

错误!找不到角色“工作区”...

我希望它简单地忽略它并继续前进。我尝试添加failed_when: false,但不出所料,它没有效果。是否可以制定一个when: ...可以检查角色是否存在的条件?还是有另一种方法可以很好地解决这个问题?

0 投票
1 回答
627 浏览

loops - 任务内动态变量的Ansible角色检查路径

我有几个可用于设置多个配置目录的 ansible 角色任务。问题是我有一个配置列表,需要使用特定路径进行设置,但前提是它们不存在。

然而问题是你不能统计这样的路径:

我得到的错误是:

条件检查 'not {{ service_home }}/{{ item }}.conf.d.stat.exists' 失败。错误是:意外的“/”第 1 行

有没有办法设置一个动态变量完整路径然后测试它?看来我也不能在这里设定一个事实。

[更新]:刚刚阅读另一个问题,试图用一个非常相似的循环概念做一些事情。此时简单地使用 shell 脚本/模板是正确的方法吗?

0 投票
1 回答
350 浏览

dependencies - 如何在星系之外添加角色依赖?

我正在创建一组公司的 Ansible 角色。其中一个依赖于另一个。

所有这些角色都托管在其特定的 Gitlab 存储库中(显然,每个角色一个)。

而不是搞乱requirements.yml,我更喜欢使用我的文件的dependencies标签。meta/main.yml但是我找不到使用哪种语法来创建依赖链接而不在 Ansible Galaxy 中声明它们(这显然是不可能的)。

我怎样才能做到这一点 ?

0 投票
2 回答
551 浏览

ansible - Ansible:如何使用远程文件中的一行上的模式/子字符串的值填充变量?

我有一个带有文件的远程服务器。该文件中的一行如下:

我想将角色中的变量设置为该行上等号之后的值(如果有的话)(它可能是哈希,也可能是空字符串)。

这样做最不可怕的方法是什么?