- hosts: mongodb gather_facts: no vars: ansible_python_interpreter: /usr/local/bin/python tasks: - name: Test MongoDB connection mongodb_ping: login_user: "{{ jms_account.username }}" login_password: "{{ jms_account.secret }}" login_host: "{{ jms_asset.address }}" login_port: "{{ jms_asset.port }}" login_database: "{{ jms_asset.spec_info.db_name }}" ssl: "{{ jms_asset.spec_info.use_ssl }}" ssl_ca_certs: "{{ jms_asset.secret_info.ca_cert }}" ssl_certfile: "{{ jms_asset.secret_info.client_key }}" connection_options: - tlsAllowInvalidHostnames: "{{ jms_asset.spec_info.allow_invalid_cert}}" register: db_info - name: Display MongoDB version debug: var: db_info.server_version when: db_info is succeeded - name: Change MongoDB password mongodb_user: login_user: "{{ jms_account.username }}" login_password: "{{ jms_account.secret }}" login_host: "{{ jms_asset.address }}" login_port: "{{ jms_asset.port }}" login_database: "{{ jms_asset.spec_info.db_name }}" ssl: "{{ jms_asset.spec_info.use_ssl }}" ssl_ca_certs: "{{ jms_asset.secret_info.ca_cert }}" ssl_certfile: "{{ jms_asset.secret_info.client_key }}" connection_options: - tlsAllowInvalidHostnames: "{{ jms_asset.spec_info.allow_invalid_cert}}" db: "{{ jms_asset.spec_info.db_name }}" name: "{{ account.username }}" password: "{{ account.secret }}" ignore_errors: true when: db_info is succeeded - name: Verify password mongodb_ping: login_user: "{{ account.username }}" login_password: "{{ account.secret }}" login_host: "{{ jms_asset.address }}" login_port: "{{ jms_asset.port }}" login_database: "{{ jms_asset.spec_info.db_name }}" ssl: "{{ jms_asset.spec_info.use_ssl }}" ssl_ca_certs: "{{ jms_asset.secret_info.ca_cert }}" ssl_certfile: "{{ jms_asset.secret_info.client_key }}" connection_options: - tlsAllowInvalidHostnames: "{{ jms_asset.spec_info.allow_invalid_cert}}"