--- - name: Get latest lazygit version ansible.builtin.shell: | curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": *"v\K[^"]*' register: lazygit_version changed_when: false - name: Download lazygit tar.gz ansible.builtin.get_url: url: "https://github.com/jesseduffield/lazygit/releases/download/v{{ lazygit_version.stdout }}/lazygit_{{ lazygit_version.stdout }}_Linux_x86_64.tar.gz" dest: "/tmp/lazygit.tar.gz" - name: Extract lazygit binary ansible.builtin.unarchive: src: "/tmp/lazygit.tar.gz" dest: "/tmp" creates: "/tmp/lazygit" remote_src: true - name: Install lazygit ansible.builtin.copy: src: "/tmp/lazygit" dest: /usr/local/bin/lazygit mode: "0755" become: true - name: Remove lazygit tar.gz and binary ansible.builtin.file: path: "{{ item }}" state: absent loop: - "/tmp/lazygit.tar.gz" - "/tmp/lazygit"