You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.8 KiB
YAML
49 lines
1.8 KiB
YAML
- name: integration/ssh/args.yml
|
|
hosts: issue905
|
|
gather_facts: false
|
|
tasks:
|
|
# Test that ansible_ssh_common_args are templated; ansible_ssh_args &
|
|
# ansible_ssh_extra_args aren't directly tested, we assume they're similar.
|
|
# FIXME This test currently relies on variables set in the host group.
|
|
# Ideally they'd be set here, and the host group eliminated, but
|
|
# Mitogen currently fails to template when defined in the play.
|
|
# TODO Replace LocalCommand canary with SetEnv canary, to simplify test.
|
|
# Requires modification of sshd_config files to add AcceptEnv ...
|
|
- name: Test templating of ansible_ssh_common_args et al
|
|
block:
|
|
- name: Ensure no lingering canary files
|
|
file:
|
|
path: "{{ ssh_args_canary_file }}"
|
|
state: absent
|
|
delegate_to: localhost
|
|
|
|
- name: Reset connections to force new ssh execution
|
|
meta: reset_connection
|
|
|
|
- name: Perform SSH connection, to trigger side effect
|
|
ping:
|
|
|
|
# LocalCommand="touch {{ ssh_args_canary_file }}" in ssh_*_args
|
|
- name: Stat for canary file created by side effect
|
|
stat:
|
|
path: "{{ ssh_args_canary_file }}"
|
|
delegate_to: localhost
|
|
register: ssh_args_canary_stat
|
|
|
|
- assert:
|
|
that:
|
|
- ssh_args_canary_stat.stat.exists == true
|
|
quiet: true
|
|
success_msg: "Canary found: {{ ssh_args_canary_file }}"
|
|
fail_msg: |
|
|
ssh_args_canary_file={{ ssh_args_canary_file }}
|
|
ssh_args_canary_stat={{ ssh_args_canary_stat }}
|
|
always:
|
|
- name: Cleanup canary files
|
|
file:
|
|
path: "{{ ssh_args_canary_file }}"
|
|
state: absent
|
|
delegate_to: localhost
|
|
tags:
|
|
- issue_905
|