From 94c06ce4d59a44a647078f4946b7a6d6df21acd0 Mon Sep 17 00:00:00 2001 From: Steve Smith Date: Mon, 15 Apr 2019 13:06:41 +1000 Subject: [PATCH] DCD-224: Add fetching of the installer. --- roles/jira_download/defaults/main.yml | 7 ++++++- .../molecule/default/tests/test_default.py | 11 ++++++++++- roles/jira_download/tasks/main.yml | 12 +++++++++--- 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/roles/jira_download/defaults/main.yml b/roles/jira_download/defaults/main.yml index a721bcd..48df1b8 100644 --- a/roles/jira_download/defaults/main.yml +++ b/roles/jira_download/defaults/main.yml @@ -1,5 +1,10 @@ --- atl_release_base_url: "https://s3.amazonaws.com/atlassian-software/releases" -atl_product_latest_version_url: "{{ atl_release_base_url }}/{{ atl_product_edition }}/latest" +atl_product_base_url: "{{ atl_release_base_url }}/{{ atl_product_edition }}" + +atl_product_latest_version_url: "{{ atl_product_base_url }}/latest" atl_product_version_cache: "{{ atl_product_home_shared }}/{{ atl_product_edition }}.version" + +atl_product_download_url: "{{ atl_product_base_url }}/atlassian-{{ atl_product_edition }}-{{ atl_product_version_file.stdout }}-x64.bin" +atl_product_download_cache: "{{ atl_product_home_shared }}/{{ atl_product_edition }}.{{ atl_product_version_file.stdout }}.bin" diff --git a/roles/jira_download/molecule/default/tests/test_default.py b/roles/jira_download/molecule/default/tests/test_default.py index 2c0d27e..2d7faf2 100644 --- a/roles/jira_download/molecule/default/tests/test_default.py +++ b/roles/jira_download/molecule/default/tests/test_default.py @@ -12,7 +12,7 @@ def test_version_downloaded(host): assert verfile.exists -def test_version_is_latest(host): +def test_version_file_is_latest(host): verfile = host.file('/media/atl/jira/shared/jira-software.version') assert verfile.exists @@ -20,3 +20,12 @@ def test_version_is_latest(host): upstream = upstream_fd.read() assert verfile.content.decode("UTF-8").strip() == upstream.decode("UTF-8").strip() + +def test_latest_is_downloaded(host): + upstream_fd = urllib.request.urlopen("https://s3.amazonaws.com/atlassian-software/releases/jira-software/latest") + upstream = upstream_fd.read().decode("UTF-8").strip() + + installer = host.file('/media/atl/jira/shared/jira-software.'+upstream+'.bin') + assert installer.exists + assert installer.user == 'root' + assert installer.mode == 0o0755 diff --git a/roles/jira_download/tasks/main.yml b/roles/jira_download/tasks/main.yml index b4a03b2..993bd11 100644 --- a/roles/jira_download/tasks/main.yml +++ b/roles/jira_download/tasks/main.yml @@ -15,6 +15,12 @@ when: atl_product_version is defined and atl_product_version != "latest" - name: Use version for product version - slurp: - src: "{{ atl_product_version_cache }}" - register: atl_product_version + command: "cat {{ atl_product_version_cache }}" + register: atl_product_version_file + +- name: Fetch product installer + get_url: + url: "{{ atl_product_download_url }}" + dest: "{{ atl_product_download_cache }}" + mode: 0755 + force: false