Skip to content

Commit

Permalink
test: set TMPDIR in block of role invocation (#300)
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 authored Sep 16, 2024
1 parent d10f2ad commit 3331fa7
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 3331fa7

Please sign in to comment.