--- - name: "Verify action to take" hosts: localhost tasks: - name: "Check that -e 'action=[stop|start|restart]' was passed in" fail: msg: "The variable 'action' was not passed in with a value of 'stop', 'start' or 'restart' on the command line." when: action not in ["stop", "start", "restart"] - name: "Stop Openbook" hosts: "{{ groups['target']|sort(reverse=True) }}" serial: 1 tasks: - name: "Stop Openbook" service: name: "{{ item.name }}" state: stopped runlevel: "{{ item.runlevel }}" with_items: - { name: openbook, runlevel: default } - { name: openbook-debug, runlevel: default } ignore_errors: True when: action == "stop" - name: "Delete Openbook containers" shell: | for cont in $(docker ps | grep -v 'COMMAND' | awk '{print $1}'); do docker stop ${cont} done docker container prune -f ignore_errors: True when: action in ["stop", "restart"] - name: "Start Openbook" hosts: "{{ groups['target']|sort }}" serial: 1 tasks: - name: "Start Openbook" service: name: "{{ item.name }}" state: started runlevel: "{{ item.runlevel }}" with_items: - { name: openbook, runlevel: default } when: action in ["start", "restart"] and extra_args != "debug" - name: "Start Openbook in debug mode" service: name: "{{ item.name }}" state: started runlevel: "{{ item.runlevel }}" with_items: - { name: openbook-debug, runlevel: default } when: action in ["start", "restart"] and extra_args == "debug" and openbook_start_app == True