ansible/test/integration/targets/yum/tasks/proxy.yml
Paul Harvey cd75074fc5 fix yum proxy regex (closes #47797) (#47800)
* Modify yum/tasks/proxy.yml to usernames that expose regex bug

* Fix bad regex backref/interpolation w/yum proxy username

A yum proxy username that begins with a number was being
interpolated as part of the backref, resulting in an error:
"sre_constants.error: invalid group reference"

Closes #47797
2018-10-30 16:35:37 +01:00

96 lines
2.5 KiB
YAML

- name: test yum proxy settings
block:
- yum:
name: 'https://s3.amazonaws.com/ansible-ci-files/test/integration/targets/yum/tinyproxy-1.10.0-3.el7.x86_64.rpm'
state: installed
- lineinfile:
path: /etc/tinyproxy/tinyproxy.conf
line: "BasicAuth 1testuser 1testpassword"
state: present
# systemd doesn't play nice with this in a container for some reason
- shell: tinyproxy
changed_when: false
- lineinfile:
path: /etc/yum.conf
line: "proxy=http://1testuser:1testpassword@127.0.0.1:8888"
state: present
- yum:
name: 'https://s3.amazonaws.com/ansible-ci-files/test/integration/targets/yum/ninvaders-0.1.1-18.el7.x86_64.rpm'
state: installed
register: yum_proxy_result
- assert:
that:
- "yum_proxy_result.changed"
- "'msg' in yum_proxy_result"
- "'rc' in yum_proxy_result"
- yum:
name: ninvaders
state: absent
- lineinfile:
path: /etc/yum.conf
line: "proxy=http://1testuser:1testpassword@127.0.0.1:8888"
state: absent
- lineinfile:
path: /etc/yum.conf
line: "proxy=http://127.0.0.1:8888"
state: present
- lineinfile:
path: /etc/yum.conf
line: "proxy_username=1testuser"
state: present
- lineinfile:
path: /etc/yum.conf
line: "proxy_password=1testpassword"
state: present
- yum:
name: 'https://s3.amazonaws.com/ansible-ci-files/test/integration/targets/yum/ninvaders-0.1.1-18.el7.x86_64.rpm'
state: installed
register: yum_proxy_result
- assert:
that:
- "yum_proxy_result.changed"
- "'msg' in yum_proxy_result"
- "'rc' in yum_proxy_result"
always:
- yum:
name: tinyproxy
state: absent
- yum:
name: ninvaders
state: absent
- lineinfile:
path: /etc/yum.conf
line: "proxy=http://1testuser:1testpassword@127.0.0.1:8888"
state: absent
- lineinfile:
path: /etc/yum.conf
line: "proxy=http://127.0.0.1:8888"
state: absent
- lineinfile:
path: /etc/yum.conf
line: "proxy_username=1testuser"
state: absent
- lineinfile:
path: /etc/yum.conf
line: "proxy_password=1testpassword"
state: absent
when:
- (ansible_distribution in ['RedHat', 'CentOS', 'ScientificLinux'] and ansible_distribution_major_version|int == 7)