Merged in ITPLT-4583-use-marketplace-v3-apis (pull request #230)

ITPLT-4583 use Marketplace v3 APIs

Approved-by: Geoff Jacobs
Approved-by: Ramanathan Balakrishnan
This commit is contained in:
Lee Goolsbee
2025-12-08 16:41:25 +00:00
8 changed files with 24 additions and 41 deletions

View File

@@ -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"
ansible_lookup_url_agent: "ansible-httpget_dc-deployments-automation"

View File

@@ -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

View File

@@ -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 }}"

View File

@@ -0,0 +1 @@
product_version_latest.yml

View File

@@ -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:

View File

@@ -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 }}"
atl_latest_version: "{{ atl_product_version_json.versions[0].versionNumber }}"

View File

@@ -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 }}"

View File

@@ -0,0 +1 @@
product_version_latest.yml

View File

@@ -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 }}"

View File

@@ -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 }}"