以安装 istio 为例,这是一个 playbook 脚本,用于在没有 istioctl 的主机上安装 istioctl
name: ISTIOCTL | Check installation
stat:
path: "{{ istioctl_binary_dir }}/istioctl"
changed_when: False
register: istioctl_binary
name: ISTIOCTL | Download and unarchive binary
unarchive:
remote_src: yes
src: "{{ istioctl_src_url }}"
dest: "{{ istioctl_source_dir }}"
creates: "{{ istioctl_source_dir }}/{{ istioctl_name }}"
when: not istioctl_binary.stat.exists
name: ISTIOCTL | Link Istio binary
file:
src: "{{ istioctl_source_dir }}/{{ istioctl_name }}/bin/istioctl"
dest: "{{ istioctl_binary_dir }}/istioctl"
owner: root
group: root
mode: 0755
state: link
它的好处是在我安装 istioctl 后执行这段代码并且它不会重新安装
但是即使修改了istioctl_src_url中的版本号,也无法升级istioctl。 我想要一个好的剧本来实现以下目标
我正在寻找的答案是包含代码的答案