--- - name: Set initial facts block: - set_fact: crowdsec_install_mode='none' - set_fact: crowdsec_current_version='' tags: crowdsec - name: Check if crowdsec is installed stat: path=/usr/local/bin/crowdsec register: crowdsec_bin tags: crowdsec - name: Check installed version shell: | crowdsec -version 2>&1 | perl -ne 'm/version: v(\d+(\.\d+)*)/ && print $1' register: crowdsec_current_version changed_when: False when: crowdsec_bin.stat.exists tags: crowdsec - name: Set install mode set_fact: crowdsec_install_mode='install' when: not crowdsec_bin.stat.exists tags: crowdsec - name: Set upgrade mode set_fact: crowdsec_install_mode='upgrade' when: - crowdsec_bin.stat.exists - crowdsec_current_version.stdout != crowdsec_version tags: crowdsec # Create a random db password if needed - block: - import_tasks: ../includes/get_rand_pass.yml vars: - pass_file: "/etc/crowdsec/meta/ansible_db_pass" - complex: False - set_fact: crowdsec_db_pass={{ rand_pass }} when: - crowdsec_db_pass is not defined - crowdsec_lapi_enabled tags: crowdsec