# vim: set filetype=yaml.ansible : --- - name: Set default cargo values ansible.builtin.set_fact: cargo: install_methods: - system - name: Configure cargo when: - "'cargo' not in __configured" block: - name: Set cargo install method when: - cargo_install_method is undefined ansible.builtin.set_fact: cargo_install_method: "{{ install_method if install_method in cargo.install_methods else cargo.install_methods[0] }}" - name: Add dependencies when: - cargo_pkgdeps is defined loop: "{{ cargo_pkgdeps }}" loop_control: loop_var: dep ansible.builtin.include_tasks: "pkgs/{{ dep }}.yml" - name: Append cargo to install list when: - cargo_install_method == "system" block: - name: Queue cargo install ansible.builtin.set_fact: pkg_sys: "{{ pkg_sys + [cargo_pkgname] }}" - name: Finalize cargo configuration ansible.builtin.set_fact: __configured: "{{ __configured | combine ( { 'cargo': cargo_install_method } ) }}"