在带有环境变量的 Ansible 中使用 curl
Using curl in Ansible with environment variable
我需要下载一个deb包,我使用:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
我已经研究了 http://docs.ansible.com/ansible/uri_module.html 但不确定如何进行整合。
我还设置了代理。我如何在 Ansible 中这样做?
我正在用
- name: Download the 5.1.1 version of filebeat
get_url:
url: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
dest: /home/ubuntu
environment:
http_proxy: http://{{ squid_proxy }}:{{ squid_port }}
https_proxy: https://{{ squid_proxy }}:{{ squid_port }}
validate_certs: no
你应该使用 get_url
module.
- get_url:
url: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
dest: /path/to/destination
它使用 http_proxy
和 https_proxy
环境变量中定义的代理。如果您没有为当前用户定义一个(并且它必须在非交互式会话读取的 rc 文件中),您可以添加到任务中:
- get_url:
url: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
dest: /path/to/destination
validate_certs: false # this might be required for HTTPS proxies with certificates not trusted by the client
environment:
https_proxy: https://my.proxy:8080
此外,如果 HTTPS 代理的证书不受下载计算机的信任,您可能需要将 validate_certs: false
添加到 get_url
参数。
我需要下载一个deb包,我使用:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
我已经研究了 http://docs.ansible.com/ansible/uri_module.html 但不确定如何进行整合。
我还设置了代理。我如何在 Ansible 中这样做?
我正在用
- name: Download the 5.1.1 version of filebeat
get_url:
url: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
dest: /home/ubuntu
environment:
http_proxy: http://{{ squid_proxy }}:{{ squid_port }}
https_proxy: https://{{ squid_proxy }}:{{ squid_port }}
validate_certs: no
你应该使用 get_url
module.
- get_url:
url: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
dest: /path/to/destination
它使用 http_proxy
和 https_proxy
环境变量中定义的代理。如果您没有为当前用户定义一个(并且它必须在非交互式会话读取的 rc 文件中),您可以添加到任务中:
- get_url:
url: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
dest: /path/to/destination
validate_certs: false # this might be required for HTTPS proxies with certificates not trusted by the client
environment:
https_proxy: https://my.proxy:8080
此外,如果 HTTPS 代理的证书不受下载计算机的信任,您可能需要将 validate_certs: false
添加到 get_url
参数。