From b32961ad751565f59acdaed632215aeac327f128 Mon Sep 17 00:00:00 2001 From: Price Hiller Date: Mon, 1 Aug 2022 17:02:04 -0500 Subject: [PATCH] feat: add dotnet installer --- roles/zsh/tasks/main.yml | 3 +++ tasks/install-dotnet.yml | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 tasks/install-dotnet.yml diff --git a/roles/zsh/tasks/main.yml b/roles/zsh/tasks/main.yml index c7956f4..07ce14c 100644 --- a/roles/zsh/tasks/main.yml +++ b/roles/zsh/tasks/main.yml @@ -36,3 +36,6 @@ - name: Install direnv ansible.builtin.import_tasks: install-direnv.yml + +- name: Install dotnet + ansible.builtin.import_tasks: install-dotnet.yml diff --git a/tasks/install-dotnet.yml b/tasks/install-dotnet.yml new file mode 100644 index 0000000..3a44746 --- /dev/null +++ b/tasks/install-dotnet.yml @@ -0,0 +1,32 @@ +--- +- name: Set dotnet install path if not set + ansible.builtin.set_fact: + dotnet_install_path: "{{ dotnet_install_path | default(xdg_data_home + '/dotnet') }}" + +- name: Check if dotnet is installed + ansible.builtin.stat: + path: "{{ dotnet_install_path }}" + register: dotnet_installed + changed_when: false + +- name: Create temporary working directory + ansible.builtin.tempfile: + state: directory + register: dotnet_work_dir + when: not dotnet_installed.stat.exists + +- name: Download dotnet installer + ansible.builtin.get_url: + url: https://dot.net/v1/dotnet-install.sh + dest: "{{ dotnet_work_dir }}/install.sh" + mode: 0744 + when: not dotnet_installed.stat.exists + +- name: Run dotnet installer + ansible.builtin.command: + argv: + - bash + - install.sh + - -i + - "{{ dotnet_install_path }}" + changed_when: true