- name: Rust Development Tools
  hosts: all
  connection: local
  tasks:
    - name: Download install script
      ansible.builtin.get_url:
        url: https://sh.rustup.rs
        dest: /tmp/install-rustup.sh
      when: development
    - name: Install Rustup
      become: true
      become_user: '{{ item.key }}'
      ansible.builtin.command:
        argv:
          - sh
          - /tmp/install-rustup.sh
          - --default-toolchain
          - stable
          - --profile
          - default
          - --no-modify-path
        creates: '/home/{{ item.key }}/.cargo'
      when: development
      loop: '{{ users | dict2items }}'
    - name: Update Rust Toolchains
      include_tasks: ./toolchains.yml
      when: development
      loop: '{{ users | dict2items }}'
      loop_control:
        loop_var: user
