diff --git a/playbook.yaml b/playbook.yaml index da32da2..f060f51 100644 --- a/playbook.yaml +++ b/playbook.yaml @@ -175,9 +175,19 @@ dest: "{{ home }}/.vim/colors" src: "{{ home }}/.vim/pack/git-plugins/start/vim-colorschemes/colors" state: link + - name: Register rustc version + ansible.builtin.shell: rustc --version | awk '{ print $2 }' + args: + executable: /usr/local/bin/zsh + changed_when: false + register: rustc_version - name: Install cargo packages ansible.builtin.command: - cmd: "cargo install '{{ item.package }}@{{ item.version | default('*', true) }}' --locked" + cmd: >- + cargo install {{ item.package }}@{{ + rustc_version.stdout is version('1.83.0', '>=', version_type='semver') + | ternary(item.version, '') + | default('*', true) }} --locked creates: "{{ home }}/.cargo/bin/{{ item.bin }}" loop: - package: cargo-update @@ -193,6 +203,7 @@ bin: starship version: 1.20.1 - name: Update cargo packages + when: rustc_version.stdout is version('1.83.0', '>=', version_type='semver') ansible.builtin.command: cmd: cargo install-update --all register: cargo_update