|
|
|
|
|
|
|
# This cannot run against localhost, it damages /etc
|
|
|
|
|
|
|
|
- name: integration/glibc_caches/resolv_conf.yml
|
|
|
|
gather_facts: true
|
|
|
|
become: true
|
|
|
|
hosts: test-targets
|
|
|
|
vars:
|
|
|
|
ansible_become_pass: has_sudo_pubkey_password
|
|
|
|
tasks:
|
|
|
|
- mitogen_test_gethostbyname:
|
|
|
|
name: www.google.com
|
|
|
|
register: out
|
|
|
|
when:
|
|
|
|
- ansible_facts.virtualization_type == "docker"
|
|
|
|
- ansible_facts.python.version_info[:2] >= [2, 5]
|
|
|
|
|
|
|
|
- name: Backup resolv.conf
|
|
|
|
shell: cp /etc/resolv.conf /tmp/resolv.conf
|
|
|
|
when:
|
|
|
|
- ansible_facts.virtualization_type == "docker"
|
|
|
|
- ansible_facts.python.version_info[:2] >= [2, 5]
|
|
|
|
|
|
|
|
- name: Truncate resolv.conf
|
|
|
|
shell: echo > /etc/resolv.conf
|
|
|
|
when:
|
|
|
|
- ansible_facts.virtualization_type == "docker"
|
|
|
|
- ansible_facts.python.version_info[:2] >= [2, 5]
|
|
|
|
|
|
|
|
- mitogen_test_gethostbyname:
|
|
|
|
name: www.google.com
|
|
|
|
register: out
|
|
|
|
ignore_errors: true
|
|
|
|
when:
|
|
|
|
- ansible_facts.virtualization_type == "docker"
|
|
|
|
- ansible_facts.python.version_info[:2] >= [2, 5]
|
|
|
|
|
|
|
|
- name: Restore resolv.conf
|
|
|
|
shell: cat /tmp/resolv.conf > /etc/resolv.conf
|
|
|
|
when:
|
|
|
|
- ansible_facts.virtualization_type == "docker"
|
|
|
|
- ansible_facts.python.version_info[:2] >= [2, 5]
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- out.failed
|
|
|
|
- '"Name or service not known" in out.msg or
|
|
|
|
"Temporary failure in name resolution" in out.msg'
|
|
|
|
fail_msg: |
|
|
|
|
out={{ out }}
|
|
|
|
when:
|
|
|
|
- ansible_facts.virtualization_type == "docker"
|
|
|
|
- ansible_facts.python.version_info[:2] >= [2, 5]
|
|
|
|
tags:
|
|
|
|
- resolv_conf
|