diff --git a/roles/product_install/defaults/main.yml b/roles/product_install/defaults/main.yml index d85eb96..d2c9ffa 100644 --- a/roles/product_install/defaults/main.yml +++ b/roles/product_install/defaults/main.yml @@ -6,7 +6,6 @@ atl_cached_version: '' # with values for both password and username atl_download_secret_name: '' -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" @@ -30,14 +29,15 @@ atl_product_home_shared_download: "{{ atl_product_home_shared_download_dir }}/{{ atl_product_home_shared_moving_lock: "{{ atl_product_home_shared_download }}_moving" atl_product_home_shared_completed_lock: "{{ atl_product_home_shared_download }}_completed" -atl_marketplace_base: "https://marketplace.atlassian.com" -atl_mpac_products: "https://marketplace.atlassian.com/rest/2/products" -atl_servicedesk_latest_url: "https://marketplace.atlassian.com/rest/2/products/key/jira-servicedesk/versions/latest" -atl_servicedesk_versioned_url: "https://marketplace.atlassian.com/rest/2/products/key/jira-servicedesk/versions/name/{{ atl_product_version }}" -atl_servicedesk_url_map: - latest: "{{ atl_servicedesk_latest_url }}" - default: "{{ atl_servicedesk_versioned_url }}" -atl_servicedesk_metadata_url: "{{ atl_servicedesk_url_map[atl_product_version] | default(atl_servicedesk_url_map['default']) }}" +atl_product_family_to_mpac_parent_software_id_map: + confluence: "confluence" + crowd: "crowd" + jira: "jira" + stash: "bitbucket" +atl_mpac_base_url: "https://marketplace.atlassian.com" +atl_mpac_api_base_url: "{{ atl_mpac_base_url }}/rest/3" +atl_mpac_jsm_app_software_id: "1bbd1b4a-95cd-4762-b7ae-3e3e99eee7d8" +atl_mpac_product_latest_version_url: "{{ atl_mpac_api_base_url }}/parent-software/{{ atl_product_family_to_mpac_parent_software_id_map[atl_product_family] }}/versions?state=ACTIVE&limit=1" atl_install_jsd_as_obr: false atl_source_obr_from_marketplace: true @@ -46,4 +46,4 @@ atl_servicedesk_download_file: "{{ atl_installer_temp }}/jira-servicedesk.{{ atl force_version_update: false skip_shared_home_symlink: false -ansible_lookup_url_agent: "ansible-httpget_dc-deployments-automation" \ No newline at end of file +ansible_lookup_url_agent: "ansible-httpget_dc-deployments-automation" diff --git a/roles/product_install/molecule/jira_tarball_download_url/converge.yml b/roles/product_install/molecule/jira_tarball_download_url/converge.yml index 6b455ae..db26998 100644 --- a/roles/product_install/molecule/jira_tarball_download_url/converge.yml +++ b/roles/product_install/molecule/jira_tarball_download_url/converge.yml @@ -15,7 +15,7 @@ # In this case it would not be possible to query atl_jsd_build_info to source the atl_jsd_build. One is therefore provided. atl_install_jsd_as_obr: true atl_jsd_build: "4.18.0" - atl_obr_download_url: "https://marketplace.atlassian.com/download/apps/1213632/version/1040180000" + atl_obr_download_url: "https://marketplace.atlassian.com/artifacts/1e75b814-91a0-455d-97dd-72f923014877/download" # When using a tarball the following are also required: atl_download_format: "tarball" atl_use_system_jdk: true diff --git a/roles/product_install/tasks/jira-core_version_latest.yml b/roles/product_install/tasks/jira-core_version_latest.yml deleted file mode 100644 index 9c423a8..0000000 --- a/roles/product_install/tasks/jira-core_version_latest.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- - -- name: Fetch the latest version from URL - ansible.builtin.set_fact: - atl_product_version_json: "{{ lookup('url', 'https://marketplace.atlassian.com/rest/2/products/key/jira-software/versions') }}" - -- name: Set the local var to retrieved version - ansible.builtin.set_fact: - atl_latest_version: "{{ atl_product_version_json._embedded.versions[0].name }}" \ No newline at end of file diff --git a/roles/product_install/tasks/jira-core_version_latest.yml b/roles/product_install/tasks/jira-core_version_latest.yml new file mode 120000 index 0000000..d80ce2f --- /dev/null +++ b/roles/product_install/tasks/jira-core_version_latest.yml @@ -0,0 +1 @@ +product_version_latest.yml \ No newline at end of file diff --git a/roles/product_install/tasks/jira-servicedesk_as_obr.yml b/roles/product_install/tasks/jira-servicedesk_as_obr.yml index 9f1947b..e755cbc 100644 --- a/roles/product_install/tasks/jira-servicedesk_as_obr.yml +++ b/roles/product_install/tasks/jira-servicedesk_as_obr.yml @@ -11,7 +11,7 @@ - name: Marketplace OBR - Get the installer product version info ansible.builtin.uri: - url: "{{ atl_mpac_products }}/key/jira/versions/name/{{ atl_product_version }}" + url: "{{ atl_mpac_api_base_url }}/parent-software/jira/versions/number/{{ atl_product_version }}" return_content: yes register: atl_product_version_info @@ -21,22 +21,21 @@ - name: Marketplace OBR - Get the JSD build version info ansible.builtin.uri: - url: "{{ atl_mpac_products }}/key/jira-servicedesk/versions/latest?application=\ - jira&applicationBuild={{ atl_product_version_info.json.buildNumber }}" + url: "{{ atl_mpac_api_base_url }}/app-software/{{ atl_mpac_jsm_app_software_id }}/versions?parentSoftwareId=jira&parentSoftwareVersionId={{ atl_product_version_info.json.buildNumber }}&state=ACTIVE&limit=1" return_content: yes register: atl_jsd_build_info - - name: Marketplace OBR - Show the returned obr binary href + - name: Marketplace OBR - Show the returned obr artifact ID ansible.builtin.debug: - msg="obr_ref={{ atl_jsd_build_info.json._embedded.artifact._links.binary.href }}" + msg="obr_artifact_id={{ atl_jsd_build_info.json.versions[0].frameworkDetails.attributes.artifactId }}" - name: Marketplace OBR - Set atl_obr_download_url ansible.builtin.set_fact: - atl_obr_download_url: "{{ atl_jsd_build_info.json._embedded.artifact._links.binary.href }}" + atl_obr_download_url: "{{ atl_mpac_base_url }}/artifacts/{{ atl_jsd_build_info.json.versions[0].frameworkDetails.attributes.artifactId }}/download" - name: Marketplace OBR - Set atl_jsd_build ansible.builtin.set_fact: - atl_jsd_build: "{{ atl_jsd_build_info.json.name }}" + atl_jsd_build: "{{ atl_jsd_build_info.json.versions[0].versionNumber }}" - name: Marketplace OBR - Show the obr filename ansible.builtin.debug: diff --git a/roles/product_install/tasks/jira-servicedesk_version_latest.yml b/roles/product_install/tasks/jira-servicedesk_version_latest.yml index 07c9bbd..b64fd6f 100644 --- a/roles/product_install/tasks/jira-servicedesk_version_latest.yml +++ b/roles/product_install/tasks/jira-servicedesk_version_latest.yml @@ -2,8 +2,8 @@ - name: Fetch the latest version from URL ansible.builtin.set_fact: - atl_product_version_json: "{{ lookup('url', 'https://marketplace.atlassian.com/rest/2/products/key/jira-servicedesk/versions') }}" + atl_product_version_json: "{{ lookup('url', '{{ atl_mpac_api_base_url }}/app-software/{{ atl_mpac_jsm_app_software_id }}/versions?parentSoftwareId=jira&state=ACTIVE&limit=1') }}" - name: Set the local var to retrieved version ansible.builtin.set_fact: - atl_latest_version: "{{ atl_product_version_json._embedded.versions[0].name }}" \ No newline at end of file + atl_latest_version: "{{ atl_product_version_json.versions[0].versionNumber }}" diff --git a/roles/product_install/tasks/jira-software_version_latest.yml b/roles/product_install/tasks/jira-software_version_latest.yml deleted file mode 100644 index 9c423a8..0000000 --- a/roles/product_install/tasks/jira-software_version_latest.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- - -- name: Fetch the latest version from URL - ansible.builtin.set_fact: - atl_product_version_json: "{{ lookup('url', 'https://marketplace.atlassian.com/rest/2/products/key/jira-software/versions') }}" - -- name: Set the local var to retrieved version - ansible.builtin.set_fact: - atl_latest_version: "{{ atl_product_version_json._embedded.versions[0].name }}" \ No newline at end of file diff --git a/roles/product_install/tasks/jira-software_version_latest.yml b/roles/product_install/tasks/jira-software_version_latest.yml new file mode 120000 index 0000000..d80ce2f --- /dev/null +++ b/roles/product_install/tasks/jira-software_version_latest.yml @@ -0,0 +1 @@ +product_version_latest.yml \ No newline at end of file diff --git a/roles/product_install/tasks/main.yml b/roles/product_install/tasks/main.yml index ff18d73..8439b42 100644 --- a/roles/product_install/tasks/main.yml +++ b/roles/product_install/tasks/main.yml @@ -21,7 +21,7 @@ - name: Confirm marketplace is available ansible.builtin.uri: - url: "{{ atl_marketplace_base }}/healthcheck" + url: "{{ atl_mpac_base_url }}/healthcheck" status_code: 200 return_content: no http_agent: "ansible-httpget_dc-deployments-automation_{{ ansible_play_name }}" diff --git a/roles/product_install/tasks/product_version_latest.yml b/roles/product_install/tasks/product_version_latest.yml index 03ac7cf..7f44076 100644 --- a/roles/product_install/tasks/product_version_latest.yml +++ b/roles/product_install/tasks/product_version_latest.yml @@ -6,8 +6,8 @@ - name: Fetch the latest version from URL ansible.builtin.set_fact: - atl_product_version_json: "{{ lookup('url', '{{ atl_product_latest_version_url }}') }}" + atl_product_version_json: "{{ lookup('url', '{{ atl_mpac_product_latest_version_url }}') }}" - name: Set the local var to retrieved version ansible.builtin.set_fact: - atl_latest_version: "{{ atl_product_version_json._embedded.versions[0].name }}" + atl_latest_version: "{{ atl_product_version_json.versions[0].versionNumber }}"