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.
ansible/test/integration/targets/supervisorctl/tasks/test_start.yml

136 lines
4.5 KiB
YAML

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

- name: start py1 service (without auth)
supervisorctl:
name: 'pys:py1'
state: started
config: '{{ remote_dir }}/supervisord.conf'
register: result
when: credentials.username == ''
- name: start py1 service (with auth)
supervisorctl:
name: 'pys:py1'
state: started
server_url: http://127.0.0.1:9001
username: '{{ credentials.username }}'
password: '{{ credentials.password }}'
register: result_with_auth
when: credentials.username != ''
- command: "supervisorctl -c {{ remote_dir }}/supervisord.conf {% if credentials.username %}-u {{ credentials.username }} -p {{ credentials.password }}{% endif %} status"
- name: check that service is started
assert:
that:
- (result is success and result_with_auth is skip) or (result is skip and result_with_auth is changed)
- (result is changed and result_with_auth is skip) or (result is skip and result_with_auth is changed)
- name: check that service is running (part1) # py1.log content is checked below
script: "files/sendProcessStdin.py 'pys:py1' 2 \
'{{ credentials.username }}' '{{ credentials.password }}'"
- name: try again to start py1 service (without auth)
supervisorctl:
name: pys:py1
state: started
config: '{{ remote_dir }}/supervisord.conf'
register: result
when: credentials.username == ''
- name: try again to start py1 service (with auth)
supervisorctl:
name: pys:py1
state: started
server_url: http://127.0.0.1:9001
username: '{{ credentials.username }}'
password: '{{ credentials.password }}'
register: result_with_auth
when: credentials.username != ''
- name: check that service is already running
assert:
that:
- (result is success and result_with_auth is skip) or (result is skip and result_with_auth is success)
- (result is not changed and result_with_auth is skip) or (result is skip and result_with_auth is not changed)
- import_tasks: stop_supervisord.yml
# supervisord has been stopped, check logfile
- name: check that service has done what it was expected (part 2)
shell: 'test "$(tail -2 {{ remote_dir }}/py1.log | head -1)" = ">>> 2"'
# restart supervisord and py1 service for next tasks
- import_tasks: start_supervisord.yml
- name: start py1 service (without auth)
supervisorctl:
name: 'pys:py1'
state: started
config: '{{ remote_dir }}/supervisord.conf'
register: result
when: credentials.username == ''
- name: start py1 service (with auth)
supervisorctl:
name: 'pys:py1'
state: started
server_url: http://127.0.0.1:9001
username: '{{ credentials.username }}'
password: '{{ credentials.password }}'
register: result_with_auth
when: credentials.username != ''
- name: check that service is started
assert:
that:
- (result is success and result_with_auth is skip) or (result is skip and result_with_auth is changed)
- (result is changed and result_with_auth is skip) or (result is skip and result_with_auth is changed)
#############################################################
- name: Check an error occurs when wrong credentials are used
supervisorctl:
name: pys:py1
state: started
server_url: http://127.0.0.1:9001
username: '{{ credentials.username }}wrong_creds'
password: '{{ credentials.password }}same_here'
register: result
failed_when: result is not skip and (result is success or result is not failed)
when: credentials.username != ''
- name: Check an error occurs when wrong URL is used
supervisorctl:
name: pys:py1
state: started
server_url: http://127.0.0.1:9002
register: result
failed_when: result is success or result is not failed
- name: Check an error occurs when wrong config path is used
supervisorctl:
name: 'pys:py1'
state: started
config: '{{ remote_dir }}/supervisord_not_here.conf'
register: result
failed_when: result is success or result is not failed
- name: Check an error occurs wrong name is used (without auth)
supervisorctl:
name: 'invalid'
state: started
config: '{{ remote_dir }}/supervisord.conf'
register: result
failed_when: result is skip or (result is success or result is not failed)
when: credentials.username == ''
- name: Check an error occurs wrong name is used (with auth)
supervisorctl:
name: 'invalid'
state: started
config: '{{ remote_dir }}/supervisord.conf'
username: '{{ credentials.username }}wrong_creds'
password: '{{ credentials.password }}same_here'
register: result
failed_when: result is skip or (result is success or result is not failed)
when: credentials.username != ''