From 6971d8d9e43858187befc4c9b19cb0d3ef039393 Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Tue, 7 Jul 2026 12:44:31 +0200 Subject: Refactor mise not to use package manager --- roles/mise/defaults/main.yml | 2 ++ roles/mise/tasks/install-archlinux.yml | 6 ------ roles/mise/tasks/install-debian.yml | 26 -------------------------- roles/mise/tasks/main.yml | 22 ++++++++++++++++++++-- 4 files changed, 22 insertions(+), 34 deletions(-) create mode 100644 roles/mise/defaults/main.yml delete mode 100644 roles/mise/tasks/install-archlinux.yml delete mode 100644 roles/mise/tasks/install-debian.yml (limited to 'roles/mise') diff --git a/roles/mise/defaults/main.yml b/roles/mise/defaults/main.yml new file mode 100644 index 00000000..8f88ae06 --- /dev/null +++ b/roles/mise/defaults/main.yml @@ -0,0 +1,2 @@ +--- +mise_version: "latest" diff --git a/roles/mise/tasks/install-archlinux.yml b/roles/mise/tasks/install-archlinux.yml deleted file mode 100644 index 5e545732..00000000 --- a/roles/mise/tasks/install-archlinux.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- name: "Ensure mise is installed" - become: true - ansible.builtin.package: - name: "mise" - state: "present" diff --git a/roles/mise/tasks/install-debian.yml b/roles/mise/tasks/install-debian.yml deleted file mode 100644 index e0f0283e..00000000 --- a/roles/mise/tasks/install-debian.yml +++ /dev/null @@ -1,26 +0,0 @@ ---- -- name: "Download mise GPG key" - become: true - ansible.builtin.get_url: - url: "https://mise.jdx.dev/gpg-key.pub" - dest: "/etc/apt/trusted.gpg.d/mise.asc" - mode: "0644" - -- name: "Add mise repository" - become: true - ansible.builtin.apt_repository: - repo: "deb [signed-by=/etc/apt/trusted.gpg.d/mise.asc] https://mise.jdx.dev/deb stable main" - state: "present" - filename: "mise" - -- name: "Update package cache" - become: true - ansible.builtin.apt: - update_cache: true - changed_when: false - -- name: "Ensure mise is installed" - become: true - ansible.builtin.package: - name: "mise" - state: "present" diff --git a/roles/mise/tasks/main.yml b/roles/mise/tasks/main.yml index a8ff3522..dcdb462d 100644 --- a/roles/mise/tasks/main.yml +++ b/roles/mise/tasks/main.yml @@ -1,6 +1,24 @@ --- -- name: "Include OS-specific tasks" - ansible.builtin.include_tasks: "install-{{ ansible_facts['os_family'] | lower }}.yml" +- name: "Set mise arch" + ansible.builtin.set_fact: + mise_arch: "{{ 'arm64' if ansible_architecture == 'aarch64' else 'x64' }}" + +- name: "Set mise URL (latest)" + ansible.builtin.set_fact: + mise_url: "https://mise.jdx.dev/mise-latest-linux-{{ mise_arch }}-musl" + when: mise_version == 'latest' + +- name: "Set mise URL (versioned)" + ansible.builtin.set_fact: + mise_url: "https://github.com/jdx/mise/releases/download/v{{ mise_version }}/mise-v{{ mise_version }}-linux-{{ mise_arch }}-musl" + when: mise_version != 'latest' + +- name: "Download mise binary" + become: true + ansible.builtin.get_url: + url: "{{ mise_url }}" + dest: "/usr/local/bin/mise" + mode: "0755" - name: "Add mise activation to bash" ansible.builtin.blockinfile: -- cgit v1.2.3