From 79bde7d5544e705e68b626d3e109ae5d69a83cf7 Mon Sep 17 00:00:00 2001 From: Dirk Sarpe <dirk.sarpe@idiv.de> Date: Wed, 20 Mar 2019 13:55:50 +0100 Subject: [PATCH] make julia version configurable --- defaults/main.yml | 3 ++- tasks/main.yml | 23 ++++++++++++++++++++++- vars/main.yml | 2 +- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index 9825e4b..d41ee9c 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,5 +1,6 @@ --- # defaults file for ansible-role-idiv-template # filename on server julia-1.0.3-linux-x86_64.tar.gz -julia_version: 1.0.3 +julia_install: no +julia_version: 'latest' julia_installation_dir: '/usr/local' diff --git a/tasks/main.yml b/tasks/main.yml index a62cdea..2eb5215 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -8,6 +8,27 @@ group: root mode: 0755 +- name: get latest julia release info from github + uri: + url: 'https://api.github.com/repos/JuliaLang/julia/releases/latest' + return_content: yes + register: julia_github_response + when: julia_version == 'latest' + +- name: exract latest julia release from variable + set_fact: + julia_version: "{{ julia_github_response.json.tag_name | replace('v', '') }}" + when: julia_version == 'latest' + +- name: exract minor julia release from release variable + set_fact: + julia_version_minor: "{{ julia_version | regex_replace('^(\\d+\\.\\d+)\\.\\d+.*$', '\\1') }}" + +- name: if checkmode show julia_version + debug: + var: julia_version_minor + when: ansible_check_mode or ansible_diff_mode + - name: download sha of julia archive get_url: url: '{{ julia_checksum_url }}' @@ -21,7 +42,7 @@ - name: download specified version of Julia get_url: - url: https://julialang-s3.julialang.org/bin/linux/x64/1.0/julia-1.0.3-linux-x86_64.tar.gz + url: 'https://julialang-s3.julialang.org/bin/linux/x64/{{ julia_version_minor }}/julia-{{ julia_version }}-linux-x86_64.tar.gz' dest: '{{ julia_download_dir }}' checksum: 'sha256:{{ julia_checksum.stdout_lines[0] }}' diff --git a/vars/main.yml b/vars/main.yml index d305ee0..52d4911 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -3,5 +3,5 @@ julia_checksum_file: julia-{{ julia_version }}.sha256 julia_checksum_url: https://julialang-s3.julialang.org/bin/checksums/{{ julia_checksum_file }} julia_tarball: julia-{{ julia_version}}-linux-x86_64.tar.gz -julia_download_url: https://julialang-s3.julialang.org/bin/linux/x64/1.0/{{ julia_tarball }} +julia_download_url: 'https://julialang-s3.julialang.org/bin/linux/x64/{{ julia_version_minor }}/{{ julia_tarball }}' julia_download_dir: '/var/cache/julia-dl' -- GitLab