- name: Ensure RabbitMQ installed win_chocolatey: name: rabbitmq state: present - name: Ensure that rabbitmq_management plugin disabled win_rabbitmq_plugin: names: rabbitmq_management state: disabled - name: Enable rabbitmq_management plugin in check mode win_rabbitmq_plugin: names: rabbitmq_management state: enabled check_mode: yes register: enable_plugin_in_check_mode - name: Check that enabling plugin in check mode succeeds with a change assert: that: - enable_plugin_in_check_mode.changed == true - name: Enable rabbitmq_management plugin in check mode again win_rabbitmq_plugin: names: rabbitmq_management state: enabled check_mode: yes register: enable_plugin_in_check_mode_again - name: Check that enabling plugin in check mode does not make changes assert: that: - enable_plugin_in_check_mode_again.changed == true - name: Enable rabbitmq_management plugin win_rabbitmq_plugin: names: rabbitmq_management state: enabled register: enable_plugin - name: Check that enabling plugin succeeds with a change assert: that: - enable_plugin.changed == true - enable_plugin.enabled == ['rabbitmq_management'] - name: Enable enabled rabbitmq_management plugin win_rabbitmq_plugin: names: rabbitmq_management state: enabled register: enable_plugin_again - name: Check that enabling enabled plugin succeeds without a change assert: that: - enable_plugin_again.changed == false - enable_plugin_again.enabled == [] - name: Enable new plugin when 'new_only' option is 'no' (by default) and there are installed plugins win_rabbitmq_plugin: names: rabbitmq_mqtt state: enabled check_mode: yes register: enable_plugin_without_new_only - name: Check that 'new_only == no' option enables new plugin and disables the old one assert: that: - enable_plugin_without_new_only.changed == true - enable_plugin_without_new_only.enabled == ['rabbitmq_mqtt'] - enable_plugin_without_new_only.disabled == ['rabbitmq_management'] - name: Enable new plugin when 'new_only' option is 'yes' and there are installed plugins win_rabbitmq_plugin: names: rabbitmq_mqtt state: enabled new_only: yes check_mode: yes register: enable_plugin_with_new_only - name: Check that 'new_only == yes' option just enables new plugin assert: that: - enable_plugin_with_new_only.changed == true - enable_plugin_with_new_only.enabled == ['rabbitmq_mqtt'] - enable_plugin_with_new_only.disabled == [] - name: Disable rabbitmq_management plugin in check mode win_rabbitmq_plugin: names: rabbitmq_management state: disabled check_mode: yes register: disable_plugin_in_check_mode - name: Check that disabling plugin in check mode succeeds with a change assert: that: - disable_plugin_in_check_mode.changed == true - name: Disable rabbitmq_management plugin in check mode again win_rabbitmq_plugin: names: rabbitmq_management state: disabled check_mode: yes register: disable_plugin_in_check_mode_again - name: Check that disabling plugin in check mode does not make changes assert: that: - disable_plugin_in_check_mode_again.changed == true - name: Disable rabbitmq_management plugin win_rabbitmq_plugin: names: rabbitmq_management state: disabled register: disable_plugin - name: Check that disabling plugin succeeds with a change assert: that: - disable_plugin.changed == true - disable_plugin.disabled == ['rabbitmq_management'] - name: Disable disabled rabbitmq_management plugin win_rabbitmq_plugin: names: rabbitmq_management state: disabled register: disable_plugin_again - name: Check that disabling disabled plugin succeeds without a change assert: that: - disable_plugin_again.changed == false - disable_plugin_again.disabled == []