Ansible 中如何调用架构事实?

2024-03-08

我正在寻找事实,其中包含以下信息:

$ dpkg --print-architecture
amd64

我找不到它了:

$ ansible host -m setup | grep amd64
        "BOOT_IMAGE": "/boot/vmlinuz-4.19.0-6-amd64", 
    "ansible_kernel": "4.19.0-6-amd64", 
        "BOOT_IMAGE": "/boot/vmlinuz-4.19.0-6-amd64", 

Using ansible.builtin.shell这是一个坏主意。因为它每次都会改变状态。我建议使用映射可靠的事实 https://docs.ansible.com/ansible/latest/user_guide/playbooks_vars_facts.html.

---
vars:
  deb_architecture: {
    "aarch64": "arm64",
    "x86_64": "amd64"
  }
tasks:
- name: Debug message
  ansible.builtin.debug:
    msg: "{{ [ansible_architecture] | map('extract', deb_architecture) | first }}"

# like example add docker repo
- name: Add Docker APT repository
  ansible.builtin.apt_repository:
    repo: deb [arch={{ [ansible_architecture] | map('extract', deb_architecture) | first }}] https://download.docker.com/{{ ansible_system | lower }}/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} stable
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ansible 中如何调用架构事实? 的相关文章

  • 无法将属性与数字进行比较。错误:“‘AnsibleUnsafeText’和‘int’实例之间不支持”

    getent database passwd debug var getent passwd dict2items selectattr value 1 gt 1000 map attribute key list 输出是 TASK deb
  • 使用 Python API 2.0.0.1 运行 Ansible Playbook

    安塞布尔版本 2 0 0 1 我现在已经四处寻找了很多 我发现的大多数文档要么不完整 要么已弃用 这篇文章适用于1 8 4版本 即 https stackoverflow com questions 27590039 running ans
  • Ansible 和硬件检查

    我必须使用 ansible 检查 Linux 机器上的不同硬件和配置元素 我完全不确定如何做到这一点 RAM 磁盘空间 DNS CPU 我知道我几乎可以找到我想要的所有事实都在 ansible 中 但我不明白如何使用它 例如 我必须检查 R
  • 如何配置 Ansible 跳过两个堡垒主机?

    我想编写一个 Ansible 剧本 使用 Ansible 2 7 5 它将在到达目标服务器之前跳过两个主机来执行诸如安装 docker 和 python 等操作 我能够让 Ansible 通过一台主机跳转到server1通过将其添加到我的h
  • 如何读取/理解目标主机上的ansible日志(由syslog编写)

    当你在某个主机上执行 ansible 时 它 会写入该主机上的 syslog 如下所示 Dec 1 15 00 22 run tools python ansible
  • 在ansible中合并字典

    我目前正在构建一个使用 ansible 安装 PHP 的角色 并且在合并字典时遇到一些困难 我尝试了多种方法来做到这一点 但我无法让它像我想要的那样工作 A vars file my default values key value my
  • ansible:基于 extra-vars 文件的任务顺序

    我有包含 10 个任务的 ansible 剧本 任务的顺序因用例而异 因此我必须为每个用例创建 extraVar yml 文件 并且 extraVar yml 将定义任务的顺序 怎么做 Example 剧本 tasks name task1
  • Ansible 无法运行任何命令或 shell

    我在 RPi 上运行任何命令或 shell 时遇到问题 当我使用以下代码时 name Example command ansible builtin command cmd cat etc motd 我收到此错误 Unsupported p
  • 如何更改 ansible_default_ipv4?

    我想将 ansible default ipv4 更改为指向 eth1 而不是 eth0 我可以在剧本中或通过 extra vars 选项来执行此操作吗 ansible 使用命令 https github com ansible ansib
  • Ansible local_action 指令

    我对 Ansible 很陌生 有一个简单的问题来了解我的理解local action指示 这是否意味着该命令完全在本地执行 假设你有这样的东西 local action command which nginx register check
  • Ansible bitbucket 克隆存储库配置 ssh 错误

    我之前发布过这个问题 但那里的答案不再有效 总之 当使用 Ansible 配置我的 vagrant box 时 在尝试使用 ssh 克隆我的 bitbucket 私有存储库时 我遇到了一个神秘的错误 该错误指出 权限被拒绝 公钥 然而 如果
  • 使用 lineinfile 和 blockinfile 编辑文件还是仅使用模板复制整个文件?

    我开始使用 Ansible 编写一个剧本 为我们的应用程序部署临时环境 我试图了解对文件应用更改的最佳实践是否是在控制计算机上本地更改它们 然后将它们传播到远程服务器 或者是否应该在剧本内操作文件 通过剧本操作文件在可读性和文档方面似乎更好
  • local_action:shell 连接文件时出错

    我的剧本中有这样的错误 为什么以及如何解决它 获取远程主机的更新列表 将列表连接到一个文件中 name Save update deb packs in file on ansible host copy content update de
  • 在特定主机组上运行 ansible

    我正在尝试使用以下命令运行 ansible ansible playbook provision yml l webserver 我的主机文件包含以下主机组 webclient 172 29 4 75 webserver 172 29 4
  • 如何使用ansible运行询问用户输入的脚本?

    我想使用 ansible 运行 shell 脚本 但 shell 脚本需要用户输入才能成功执行 例如 我的 shell 脚本询问唯一的 idossec agent 通过ansible我可以预定义我的unique id user input
  • 从 Ansible 中的文件结果中提取文件名

    我正在尝试使用 Ansible 的结果find模块 它返回在特定文件夹中找到的文件列表 问题是 当我迭代结果时 我没有文件名 我只有它们的完整路径 包括名称 有没有一种简单的方法来使用find result item下面提供file nam
  • 如何在 Ansible 中制作幂等 shell

    我正在使用 Ansible 在尝试使 shell 执行幂等时遇到一些问题 我做的第一件事是安装python apt 包因为我需要它来使用 apt 模块来安装其他软件包 但每次我运行我的playbookshell 任务始终运行 我想使其幂等
  • Ansible 创建可以访问所有表的 postgresql 用户?

    这应该很简单 我想要创建一个 Ansible 语句来创建一个 Postgres 用户 该用户具有特定数据库的连接权限以及对该特定数据库中所有表的选择 插入 更新 删除权限 我尝试了以下方法 name Create postgres user
  • 本地主机中的 Ansible SSH 连接错误

    当我针对本地主机启动我的剧本时 出现此错误 TASK setup fatal 127 0 0 1 UNREACHABLE gt changed false msg SSH encountered an unknown error durin
  • Ansible 条带空白

    当我尝试在 nxos 设备上运行某些命令时 输出末尾有一个空格 我必须将输出与现有变量列表进行比较 末尾的空格导致比较错误 如何在字符串列表中使用 strip 函数 name Current TACACS server host befor

随机推荐

  • Kotlin和Unity开发错误

    我使用Android Studio和Unity开发 将Library打包成aar文件 然后将aar文件作为Unity插件 当我使用Java时 没有问题 但是当使用Kotlin时 就会抛出异常 谢谢 例外 AndroidJavaExcepti
  • Class#allocate 及其用途

    读完后http www seejohncode com 2012 03 16 ruby class allocate http www seejohncode com 2012 03 16 ruby class allocate 并进一步研
  • 在 android 中使用 HTML5 日期输入元素

    元素
  • PyMongo 游标迭代

    我正在寻找在 python 中创建和处理游标的方式 就像游标在 mongo 中本地工作的方式一样 我知道预期的方法是执行 result collection find 并执行 结果记录 但我希望将迭代功能包装在一个类中 我希望能够创建一个新
  • 推送到 bitbucket 存储库时出现“致命:身份验证失败”错误

    我正在尝试在 Windows 7 终端中进行身份验证 git Push 以前工作过 但现在我得到 致命 身份验证失败https bitbucket srv https bitbucket srv 但是我可以通过浏览器登录到同一个存储库 这是
  • VM cloudera - 用户cloudera和权限?

    我下载并安装了 VM Cloudera 4 4 来使用 Hadoop 我已经在我的工作平台上建立了一个集群 所以我知道一点 hadoop 是如何工作的 所以我认为我的问题来自于我对linux以及他的用户和群体的误解 使用蜂巢 我尝试使用 s
  • 如何使用业务对象绑定rdlc报告?

    我有一个名为的业务对象 TeamMaster 其中我定义了三个属性 Id Name 和 Flg 在我的 rdlc 报告中我申请TeamMaster对象作为数据源 现在 我在表单的页面加载事件中编写以下代码 在其中添加报表查看器控件并将报表定
  • jQuery 拖放 - 只允许列表中的一项

    我使用这个例子jQuery UI 可排序 http jqueryui com demos sortable empty lists 我在拖放方面遇到问题 表号 3 sortable3应该只能收到一件物品 这是我的 HTML div clas
  • 使用 CNAME 时是否可以创建正确的 SPF 和 DMARC DNS 记录?

    在我的设置中 我有一个托管在 Heroku 上的网站 example app 然后 我使用 Sendgrid 从 Heroku 服务器向忘记密码的用户发送电子邮件 该电子邮件是使用 Google 的 Gsuite 注册的 所以我也从 Goo
  • 如何初始化常量 CLSID

    类 ID GUID 通常使用由破折号分隔的十六进制数字序列来指定 例如 557cf406 1a04 11d3 9a73 0000f81ef32e 这不是可用于直接初始化 CLSID 结构的文字 我发现了两种初始化结构的方法 但它们都有点尴尬
  • 如何使用collectionview流布局来获得正确的视图?

    我正在使用此代码来获得正确的类型 但没有获得我想要的视图 任何人都可以告诉我我哪里错了 override func viewDidAppear animated Bool super viewDidAppear animated scree
  • 在 Python 中导航嵌套 JSON 的最佳方式?

    我尝试了不同的 for 循环尝试迭代这个 JSON 但我不知道如何做到这一点 我有一个数字列表 想要将其与每个 数据 对象下的 键 值 例如 Aatrox Ahri Akali 等 进行比较 如果数字匹配 则存储 名称 另一个列表中的值 例
  • 升级到Android studio 3.4 - Aapt2InternalException:AAPT2:守护进程启动失败

    将 Android studio 升级到 3 4 后 我在构建新项目时遇到错误 导致 org gradle api tasks TaskExecutionException 任务 app mergeDebugResources 执行失败 引
  • ASP.Net 无法发送电子邮件

    我正在尝试使用下面的代码从 asp net C 发送电子邮件 using System using System Collections Generic using System Linq using System Net Mail usi
  • facebook like 按钮评论框不会在提交时关闭,并且不会发布任何内容

    尝试将 Facebook 社交按钮插件与评论框集成 喜欢 不喜欢功能运行良好 并且它正确地反映在我在 Facebook 上的活动日志中 然而 一旦我在评论框中输入评论并单击 发布到 Facebook 什么也没有发生 当我提交时 评论框不会关
  • 如何移动 REST 资源?

    我正在尝试从以下位置移动资源 buckets 1 to buckets 2这样 初始状态 桶 1 foo 桶 2 HTTP 404 最终状态 buckets 1 HTTP 301 到 buckets 2 桶 2 foo 要求服务器以这种方式
  • 参数类型“Object”无法分配给参数类型“Map ?”

    我遇到过这个错误 The argument type Object can t be assigned to the parameter type Map
  • 创建动态数组,但出现分段错误错误

    我想创建一个动态数组 其中包含用户输入 但在第一次输入后 我不断收到分段错误错误 我知道分段错误是由于错误的内存访问引起的 有没有办法定位代码中的错误 include
  • 更好的画布运动模糊

    它已经之前问过 https stackoverflow com questions 5304199 html canvas motion blur with transparent background 但接受的解决方案对我不起作用 从字面
  • Ansible 中如何调用架构事实?

    我正在寻找事实 其中包含以下信息 dpkg print architecture amd64 我找不到它了 ansible host m setup grep amd64 BOOT IMAGE boot vmlinuz 4 19 0 6 a