--- # Copyright (c) Ansible Project # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later - block: - name: Install cargo package: name: cargo state: present - set_fact: has_cargo: true when: - ansible_system != 'FreeBSD' - ansible_distribution != 'MacOSX' - ansible_distribution != 'RedHat' or ansible_distribution_version is version('8.0', '>=') - ansible_distribution != 'CentOS' or ansible_distribution_version is version('7.0', '>=') - ansible_distribution != 'Ubuntu' or ansible_distribution_version is version('18', '>=') - block: - name: Install rust (containing cargo) package: name: rust state: present - set_fact: has_cargo: true when: - ansible_system == 'FreeBSD' and ansible_distribution_version is version('13.0', '>') - block: - name: Download rustup get_url: url: https://sh.rustup.rs dest: /tmp/sh.rustup.rs mode: "0750" force: true - name: Install rustup cargo command: /tmp/sh.rustup.rs -y - set_fact: rustup_cargo_bin: "{{ lookup('env', 'HOME') }}/.cargo/bin/cargo" when: - ansible_distribution != 'CentOS' or ansible_distribution_version is version('7.0', '>=')