gpt4 book ai didi

Ansible set_fact 本地并在远程主机上使用

转载 作者:行者123 更新时间:2023-12-05 02:59:16 25 4
gpt4 key购买 nike

我正在尝试在本地获取一个版本并将其用作其他远程主机中的 var

在ansible中使用set_fact模块

本地

    - name: Set code version
shell: wget -O - -o /dev/null wget -O - -o /dev/null https://repo1.maven.org/maven2/org/brutusin/wava/maven-metadata.xml | grep -Po '(?<=<version>)([0-9\.]+(-SNAPSHOT)?)' | sort --version-sort -r| head -n 1
register: shell_output

- name: set version
set_fact:
code_version: "{{ shell_output.stdout }}"
debug: var=code_version
run_once: true

在远程

    - name: test code version
debug:
msg: code version is " {{ code_version }} "

出现以下错误:任务包含一个带有 undefined variable 的选项。错误是:'code_version'

有什么方法可以实现吗??

最佳答案

您可以使用 hostvars 变量访问在其他主机中定义的变量。

例如:

- debug:
msg: "{{ hostvars['localhost']['code_version'] }}"

关于Ansible set_fact 本地并在远程主机上使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58101776/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com