diff --git a/roles/product_install/defaults/main.yml b/roles/product_install/defaults/main.yml index c987165..e3a929c 100644 --- a/roles/product_install/defaults/main.yml +++ b/roles/product_install/defaults/main.yml @@ -4,7 +4,7 @@ atl_latest_version: '' atl_cached_version: '' -atl_product_latest_version_url: "https://marketplace.atlassian.com/rest/2/applications/{{ atl_product_family }}/versions/latest" +atl_product_latest_version_url: "https://marketplace.atlassian.com/rest/2/products/key/{{ atl_product_family }}/versions" atl_product_version_cache_dir: "{{ atl_product_home_shared }}" atl_product_version_cache: "{{ atl_product_home_shared }}/{{ atl_product_edition }}.version" diff --git a/roles/product_install/molecule/bitbucket_latest/tests/test_default.py b/roles/product_install/molecule/bitbucket_latest/tests/test_default.py index 0592cbf..bb5b1d8 100644 --- a/roles/product_install/molecule/bitbucket_latest/tests/test_default.py +++ b/roles/product_install/molecule/bitbucket_latest/tests/test_default.py @@ -24,28 +24,25 @@ def test_version_file_is_latest(host): verfile = host.file('/media/atl/bitbucket/shared/bitbucket.version') assert verfile.exists - upstream_fd = urllib.request.urlopen( - "https://marketplace.atlassian.com/rest/2/applications/bitbucket/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/bitbucket/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] assert verfile.content.decode("UTF-8").strip() == upstream.strip() def test_latest_is_downloaded(host): - upstream_fd = urllib.request.urlopen( - "https://marketplace.atlassian.com/rest/2/applications/bitbucket/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/bitbucket/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] installer = host.file('/media/atl/downloads/bitbucket.' + upstream + '-x64.bin') assert installer.exists assert installer.user == 'root' def test_completed_lockfile(host): - upstream_fd = urllib.request.urlopen( - "https://marketplace.atlassian.com/rest/2/applications/bitbucket/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/bitbucket/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] lockfile = host.file('/media/atl/downloads/bitbucket.' + upstream + '-x64.bin_completed') assert lockfile.exists diff --git a/roles/product_install/molecule/confluence_latest/tests/test_default.py b/roles/product_install/molecule/confluence_latest/tests/test_default.py index 01044a5..1b3ef88 100644 --- a/roles/product_install/molecule/confluence_latest/tests/test_default.py +++ b/roles/product_install/molecule/confluence_latest/tests/test_default.py @@ -24,25 +24,25 @@ def test_version_file_is_latest(host): verfile = host.file('/media/atl/confluence/shared-home/confluence.version') assert verfile.exists - upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/applications/confluence/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/confluence/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] assert verfile.content.decode("UTF-8").strip() == upstream.strip() def test_latest_is_downloaded(host): - upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/applications/confluence/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/confluence/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] installer = host.file('/media/atl/downloads/confluence.'+upstream+'-x64.bin') assert installer.exists assert installer.user == 'root' def test_completed_lockfile(host): - upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/applications/confluence/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/confluence/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] lockfile = host.file('/media/atl/downloads/confluence.'+upstream+'-x64.bin_completed') assert lockfile.exists diff --git a/roles/product_install/molecule/crowd_latest/tests/test_default.py b/roles/product_install/molecule/crowd_latest/tests/test_default.py index 6e5dc7c..34ffcbc 100644 --- a/roles/product_install/molecule/crowd_latest/tests/test_default.py +++ b/roles/product_install/molecule/crowd_latest/tests/test_default.py @@ -24,28 +24,25 @@ def test_version_file_is_latest(host): verfile = host.file('/media/atl/crowd/shared/crowd.version') assert verfile.exists - upstream_fd = urllib.request.urlopen( - "https://marketplace.atlassian.com/rest/2/applications/crowd/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/crowd/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] assert verfile.content.decode("UTF-8").strip() == upstream.strip() def test_latest_is_downloaded(host): - upstream_fd = urllib.request.urlopen( - "https://marketplace.atlassian.com/rest/2/applications/crowd/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/crowd/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] installer = host.file('/media/atl/downloads/crowd.' + upstream + '.tar.gz') assert installer.exists assert installer.user == 'root' def test_completed_lockfile(host): - upstream_fd = urllib.request.urlopen( - "https://marketplace.atlassian.com/rest/2/applications/crowd/versions/latest") + upstream_fd = urllib.request.urlopen("https://marketplace.atlassian.com/rest/2/products/key/crowd/versions") upstream_json = json.load(upstream_fd) - upstream = upstream_json['version'] + upstream = upstream_json['_embedded']['versions'][0]['name'] lockfile = host.file('/media/atl/downloads/crowd.' + upstream + '.tar.gz_completed') assert lockfile.exists diff --git a/roles/product_install/tasks/product_version_latest.yml b/roles/product_install/tasks/product_version_latest.yml index 9c77711..604e816 100644 --- a/roles/product_install/tasks/product_version_latest.yml +++ b/roles/product_install/tasks/product_version_latest.yml @@ -10,4 +10,4 @@ - name: Set the local var to retrieved version set_fact: - atl_latest_version: "{{ atl_product_version_json.version }}" + atl_latest_version: "{{ atl_product_version_json._embedded.versions[0].name }}"