# issue #397, #454: newer Ansibles rely on atexit to cleanup their temporary # directories. Ensure atexit handlers calling shutil.rmtree() run during runner # completion. - name: integration/runner/atexit.yml hosts: test-targets gather_facts: false any_errors_fatal: false vars: path: /tmp/atexit-should-delete-this tasks: - name: Verify a run with a healthy atexit handler custom_python_run_script: script: | import atexit, os, shutil path = '{{path}}' os.mkdir(path, int('777', 8)) atexit.register(shutil.rmtree, path) - name: Stat atexit file stat: path: "{{path}}" register: out - assert: that: - not out.stat.exists fail_msg: | out={{ out }} tags: - atexit