Skip to content

Commit

Permalink
test: set TMPDIR in block of role invocation
Browse files Browse the repository at this point in the history
Setting TMPDIR globally causes problems on some platforms.
Instead, set it at the `block` level and put the role
invocation inside the block.

Signed-off-by: Rich Megginson <[email protected]>
  • Loading branch information
richm committed Sep 13, 2024
1 parent d10f2ad commit c2899e0
Showing 1 changed file with 14 additions and 18 deletions.
32 changes: 14 additions & 18 deletions tests/tests_hostkeys_unsafe_path.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
---
- name: Test quote with unsafe input
hosts: all
environment:
TMPDIR: "{{ __tmpdir }}"
vars:
__sshd_test_backup_files:
- /etc/ssh/sshd_config
Expand All @@ -21,29 +19,27 @@
path: /tmp/BADFLAG
state: absent

- name: Assert TMPDIR is correctly set
ansible.builtin.assert:
that:
- __tmpdir != ''
- ansible_facts.env.TMPDIR == __tmpdir

- name: "Backup configuration files"
ansible.builtin.include_tasks: tasks/backup.yml

- name: Create BAD TMPDIR
ansible.builtin.file:
state: directory
path: "{{ ansible_facts.env.TMPDIR }}"
path: "{{ __tmpdir }}"
mode: '0755'

- name: Configure sshd with BAD config
ansible.builtin.include_role:
name: ansible-sshd
vars:
sshd_skip_defaults: true
sshd_verify_hostkeys: []
when:
- ansible_facts['os_family'] != 'RedHat' or ansible_facts['distribution_major_version'] | int != 8
- name: Wrap this in a block to set environment
environment:
TMPDIR: "{{ __tmpdir }}"
block:
- name: Configure sshd with BAD config
ansible.builtin.include_role:
name: ansible-sshd
vars:
sshd_skip_defaults: true
sshd_verify_hostkeys: []
when:
- ansible_facts['os_family'] != 'RedHat' or ansible_facts['distribution_major_version'] | int != 8

- name: Verify the options are correctly set
tags: tests::verify
Expand All @@ -64,7 +60,7 @@
- name: Remove BAD TMPDIR
ansible.builtin.file:
state: absent
path: "{{ ansible_facts.env.TMPDIR }}"
path: "{{ __tmpdir }}"

- name: "Restore configuration files"
ansible.builtin.include_tasks: tasks/restore.yml

0 comments on commit c2899e0

Please sign in to comment.