问题标签 [ansible-module]
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.
powershell - 解析从 Ansble 到 powershell 的变量
我创建了自己的模块。该模块执行一个 powershellscript。
但是现在我需要给他们一些变量,我该怎么做。
我已经尝试过这个:
$data = 获取内容 $args[0] | 外串 | ConvertFrom-Json
但这不起作用。
你有什么建议吗?
ansible - 如何使用 ansible 模块执行 helm 的 linux 命令?
我正在运行这个命令:
使用shell模块为所有 helm 图表存储 helm 生成的 yaml ,这是此命令的概括:
但我收到错误:
致命:[console.sb]:失败!=> {"msg": "该任务包含一个带有未定义变量的选项。错误是:无法在模板字符串中查找名称或访问属性 ({{helm_cli_path}}/helm --kubeconfig {{kube_config} } install {{install-name}} {{helm_chart}}/ --dry-run --debug > {{charts_dir}}/{{install_name}}.yaml)。\n确保您的变量名不包含无效字符像'-':不支持的操作数类型 - :
我已确保 {{ }} 中的所有变量都是正确的并在正确的位置定义。请建议我在这里使用正确的 yaml 任务描述/合适的 ansible 模块。
ansible - 我想替换与特定模式/行相关的单词
假设一个文件(socket.cfg)具有以下内容
现在我只想更改行中包含“socket1”的IP,其余的应该保持不变。给我的数据只有 socket1 和要更改的 IP。
我确实尝试过 lineinfile 并替换模块,但整个模式发生了变化。请帮帮我。它类似于像这样的 sed 命令sed /socket1/<Ip_pattern>/<replacing_IP>
所以这转到 socket1 行选择 IP 并仅替换它。我想要这样的东西。
ansible - Ansible on a linux like OS 回答我需要回答的问题是
我有一个可以通过 ssh 进入的 DataDomain 系统。我需要在 DataDomain 上自动执行一个过程,该过程在命令后提出一个问题:
我确实尝试使用 Ansible 并使用原始模块
这是失败的:
以下 ansible-playbook 也失败了:
期望模块不接受原始并且也失败了。
知道如何回答问题并回答“是”吗?
ansible - 通过在本地存储更改的机器的主机名来增强剧本
我试图通过在本地存储更改的机器的主机名来增强我的剧本,并且我想尽可能多地使用 ansible 模块,这就是为什么我选择使用 th copy 模块来进行存储:
我的剧本看起来像这样:
但以下错误不断弹出:
所以我想知道是不是因为我使用的复制参数?究竟是哪一个?
python - Ansible 模块开发 - 重用选项
我正在开发一些用于与 REST API 交互的 ansible 模块。当我写它们时,我发现我正在复制/粘贴常用选项。例如,在模块 1 中:
然后在 module2 中,它与相同的 REST API 交互,因此需要许多相同的选项:
这里的设置和要求非常相似。我还复制/粘贴了大部分DOCUMENTATION
字符串,为简洁起见,我在这里省略了。
我想知道这是否被认为是好的做法。我可以将其中一些东西(包括基本DOCUMENTATION
字符串)提取到一个公共文件中,或者将功能包装在我为每个模块扩展的基类中......我真的不确定在这种情况下什么是最佳实践,我在 Ansible 模块开发中没有看到任何关于继承的内容。有人可以给我一些建议吗?这些也是我编写的第一个 Ansible 模块,因此也将不胜感激任何其他建议,非常感谢!
ansible - 由于不必要的字符比较两个数组时出现问题
我必须从 mysql 查询中获取两个数组,并且我想进行主机比较。例如 mysql 结果的结果类似于 list1 & list2。
如您所见,来自 mysql 查询的 list2 发回了带有一些不必要字符的主机,我想删除它们,因为在进行比较时,条件为假。
这是 Ansible 的输出:
我怎样才能解决这个问题 ?
jenkins - Ansible 通过 Jenkins Job 同步模块执行失败
我尝试通过 Jenkins Job 使用同步 Ansible 模块,但我遇到了执行问题:
这是我关于此任务的 Ansible 剧本:
您对这个错误的含义有任何想法吗?
ansible - Ansible ImportError:无法导入名称“prepare_multipart”问题
我正在运行以下 uri 模块以在重新启动后查找 jenkins 页面的状态。但不幸的是,我收到一个错误,因为 Ansible ImportError: cannot import name 'prepare_multipart' 问题
模块:
输出:
额外细节:
一些博客说这是由于多个ansible安装(通过yum,pip ..等)。但是这里我有ansible控制器,它只使用pip和我运行这个模块的节点安装了ansible,没有ansible已安装。目标是使用 terraform 配置的。
你能指导我如何解决这个问题吗
ansible - ansible:如何执行仅安装在delegate_to上而不安装在控制器上的自定义模块?
ansible
在尝试执行以下操作时,我遇到了一个(对我来说)意想不到的问题:
控制器在哪里myhost1
执行ansible-playbook -v myplaybook.ansible.yml
。在目标主机myhost2
community.postgresql.postgresql_query
上安装ansible-galaxy install
并满足依赖项(特别是psycopg2
)。
问题:
ansible
因为在控制器上找不到postgresql_query
模块,所以在实际评估剧本之前就爆炸了,但运行它的全部目的myhost2
是避免首先在控制器上安装此类依赖项。
同样,我也希望能够像这样执行上述操作,但出于同样的原因,这显然行不通:
问题
如何仅评估ansible
在目标或委托主机上的任务中调用的模块?