--- - name: Check Free Disk Space hosts: windows gather_facts: false tasks: - name: "Check Free Disk Space in C:" win_shell: | $freeSpace = [math]::Round((Get-PSDrive C | Select-Object Free).Free / 1GB, 2) Write-Output $freeSpace register: freediskspace - name: Report Free Disk Space debug: msg: "Free disk space on C: drive: {{ freediskspace.stdout | trim }} GB" when: freediskspace is defined and freediskspace.stdout is defined - name: Fail if there is not Enough Space fail: msg: "the node {{ inventory_hostname }} has insufficient disk space: {{ freediskspace.stdout | trim }} GB (minimum required: 20 GB)" when: - freediskspace.stdout | trim | float < 20