mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
win_get_url: ignore defender false positive in tests (#56812)
This commit is contained in:
parent
2a9b9d63ba
commit
124400f319
2 changed files with 52 additions and 0 deletions
test/integration/targets/win_get_url
|
@ -0,0 +1,40 @@
|
||||||
|
#!powershell
|
||||||
|
|
||||||
|
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||||
|
|
||||||
|
#Requires -Module Ansible.ModuleUtils.Legacy
|
||||||
|
|
||||||
|
$params = Parse-Args $args -supports_check_mode $true
|
||||||
|
|
||||||
|
$path = Get-AnsibleParam -obj $params -name "path" -type "path" -failifempty $true
|
||||||
|
$state = Get-AnsibleParam -obj $params -name "state" -type "str" -default "present" -validateset "absent", "present"
|
||||||
|
|
||||||
|
$result = @{
|
||||||
|
changed = $false
|
||||||
|
}
|
||||||
|
|
||||||
|
# This is a test module, just skip instead of erroring out if we cannot set the rule
|
||||||
|
if ($null -eq (Get-Command -Name Get-MpPreference -ErrorAction SilentlyContinue)) {
|
||||||
|
$result.skipped = $true
|
||||||
|
$result.msg = "Skip as cannot set exclusion rule"
|
||||||
|
Exit-Json -obj $result
|
||||||
|
}
|
||||||
|
|
||||||
|
$exclusions = (Get-MpPreference).ExclusionPath
|
||||||
|
if ($null -eq $exclusions) {
|
||||||
|
$exclusions = @()
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($state -eq "absent") {
|
||||||
|
if ($path -in $exclusions) {
|
||||||
|
Remove-MpPreference -ExclusionPath $path
|
||||||
|
$result.changed = $true
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if ($path -notin $exclusions) {
|
||||||
|
Add-MpPreference -ExclusionPath $path
|
||||||
|
$result.changed = $true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Exit-Json -obj $result
|
|
@ -13,6 +13,13 @@
|
||||||
src: files/
|
src: files/
|
||||||
dest: '{{ testing_dir }}'
|
dest: '{{ testing_dir }}'
|
||||||
|
|
||||||
|
# False positive in Windows Defender is flagging the file as a virus and removing it. We need to add an exclusion so
|
||||||
|
# the tests continue to work
|
||||||
|
- name: add exclusion for the SlimFTPd binary
|
||||||
|
win_defender_exclusion:
|
||||||
|
path: '{{ remote_tmp_dir | win_dirname }}'
|
||||||
|
state: present
|
||||||
|
|
||||||
- name: download SlimFTPd binary
|
- name: download SlimFTPd binary
|
||||||
win_get_url:
|
win_get_url:
|
||||||
url: https://ansible-ci-files.s3.amazonaws.com/test/integration/roles/test_win_get_url/SlimFTPd.exe
|
url: https://ansible-ci-files.s3.amazonaws.com/test/integration/roles/test_win_get_url/SlimFTPd.exe
|
||||||
|
@ -59,3 +66,8 @@
|
||||||
win_file:
|
win_file:
|
||||||
path: '{{ slimftpd_link }}'
|
path: '{{ slimftpd_link }}'
|
||||||
state: absent
|
state: absent
|
||||||
|
|
||||||
|
- name: remove exclusion for the SlimFTPd binary
|
||||||
|
win_defender_exclusion:
|
||||||
|
path: '{{ remote_tmp_dir | win_dirname }}'
|
||||||
|
state: absent
|
||||||
|
|
Loading…
Reference in a new issue