ac9d506a61
* win_nssm: add failing tests for issue #44079 * win_nssm: use Run-Command instead of Invoke-Expression to prevent interpretation issue Fix #44079 * win_nssm: add more failing tests These tests highlight several issues with this module: * Service not started when state=started * Errors with app_parameters (see #25265) * Exception when passing several dependencies separated by comma as specified in doc * win_nssm: fix service not started when state=started Nssm status returns a multiline output that doesn't match any of the strict patterns in the switch statement. * win_nssm: fix incorrect separator in doc for service dependencies The dependencies parameter works with space as separator, but not with comma as shown in the documentation * win_nssm: fix error with app_parameters parameter Fix #25265 * win_nssm: add idempotence tests * win_nssm: fix several idempotence issues and misbehaviors Add missing space between arguments when app_parameters contains several keys. Use Argv-ToString and Escape-Argument to improve arguments handling (parameters with quotes, backslashes or spaces). * win_nssm: test parameters with spaces, quotes or backslashes * win_nssm: restore comma as separator for service dependencies Revert commit ddd4b4b * win_nssm: restore support of string as dict form for app_parameters and remove support of literal YAML dict * win_nssm: wrong variable in tests
44 lines
897 B
YAML
44 lines
897 B
YAML
---
|
|
- name: install NSSM
|
|
win_chocolatey:
|
|
name: NSSM
|
|
state: present
|
|
|
|
- name: ensure testing folder exists
|
|
win_file:
|
|
path: '{{test_win_nssm_path}}'
|
|
state: directory
|
|
|
|
- name: create test user for service execution
|
|
win_user:
|
|
name: '{{test_win_nssm_username}}'
|
|
password: '{{test_win_nssm_password}}'
|
|
state: present
|
|
groups:
|
|
- Users
|
|
|
|
# Run actual tests
|
|
- block:
|
|
- include_tasks: tests.yml
|
|
|
|
always:
|
|
- name: ensure test service is absent
|
|
win_service:
|
|
name: '{{ test_service_name }}'
|
|
state: absent
|
|
|
|
- name: remove test user
|
|
win_user:
|
|
name: '{{test_win_nssm_username}}'
|
|
state: absent
|
|
|
|
- name: cleanup test folder
|
|
win_file:
|
|
path: '{{test_win_nssm_path}}'
|
|
state: absent
|
|
|
|
- name: uninstall NSSM
|
|
win_chocolatey:
|
|
name: NSSM
|
|
state: absent
|
|
failed_when: false
|