From e78d890c0960d171dad5a5d5b06444bdd6acb914 Mon Sep 17 00:00:00 2001 From: Dawa Ometto Date: Mon, 9 Feb 2026 12:44:12 +0100 Subject: [PATCH] role uv: refactor uv alias installation The new SRC-External component also installs the required aliasses for uv and uv pip. Make creating those conditional, and create the aliases in the same way (files instead of symlinks) as the external component does, in order to avoid conflicts. --- playbooks/roles/uv/tasks/main.yml | 52 +++++++++++++++++-------------- 1 file changed, 28 insertions(+), 24 deletions(-) diff --git a/playbooks/roles/uv/tasks/main.yml b/playbooks/roles/uv/tasks/main.yml index 143be72a..ce70c652 100644 --- a/playbooks/roles/uv/tasks/main.yml +++ b/playbooks/roles/uv/tasks/main.yml @@ -1,31 +1,35 @@ --- -- name: Install uv with pipx +- name: Install uv when: uv_force_install - ansible.builtin.include_role: - name: pipx_install_systemwide - vars: - pipx_install_systemwide_package: uv - pipx_install_location: "{{ uu_pipx_bin }}" - pipx_install_systemwide_profile: "" # deactivate adding uv path to /etc/profile. We're creating aliases instead. + block: + - name: Install uv with pipx + when: uv_force_install + ansible.builtin.include_role: + name: pipx_install_systemwide + vars: + pipx_install_systemwide_package: uv + pipx_install_location: "{{ uu_pipx_bin }}" + pipx_install_systemwide_profile: "" # deactivate adding uv path to /etc/profile. We're creating aliases instead. -- name: Install uv alias - ansible.builtin.file: - path: /usr/local/bin/uv - src: "{{ uu_pipx_bin }}/uv" - state: link - mode: "0755" - owner: root - group: root + - name: Install uv alias + ansible.builtin.copy: + dest: /usr/local/bin/uv + mode: "0755" + owner: root + group: root + content: | + #!/bin/bash + {{ uu_pipx_bin }}/uv "$@" -- name: Install uv pip alias - ansible.builtin.copy: - dest: /usr/local/bin/uv_pip - mode: "0755" - owner: root - group: root - content: | - #!/bin/bash - /usr/local/bin/uv pip "$@" + - name: Install uv pip alias + ansible.builtin.copy: + dest: /usr/local/bin/uv_pip + mode: "0755" + owner: root + group: root + content: | + #!/bin/bash + {{ uu_pipx_bin }}/uv pip "$@" - name: Define python versions to be installed ansible.builtin.set_fact: