diff --git a/tasks/workstation/linux/software/android.yml b/tasks/workstation/linux/software/android.yml index 56da934..5480b45 100644 --- a/tasks/workstation/linux/software/android.yml +++ b/tasks/workstation/linux/software/android.yml @@ -258,9 +258,9 @@ echo "INSTALLED" fi loop: "{{ android_downloads_required }}" + register: install_required + changed_when: "'INSTALLED' in install_required.stdout" become_user: "{{ user }}" - register: check_required - changed_when: "'INSTALLED' in check_required.stdout" when: coding == true # Add more versions for testing across all the important platforms. @@ -271,25 +271,36 @@ echo "INSTALLED" fi loop: "{{ android_downloads_additional }}" + register: install_additional + changed_when: "'INSTALLED' in install_additional.stdout" become_user: "{{ user }}" - register: check_additional - changed_when: "'INSTALLED' in check_additional.stdout" when: coding == true and sdks == true # Remove extra downloads if system is not meant for full amount of testing. - name: Workstation | Linux | Software | Android | Uninstall | Additional Modules - shell: "yes | {{ android_sdkmanager2_remove }} '{{ item }}'" + shell: | + if {{ android_sdkmanager2_list }} | grep -q '{{ item }}'; then + yes | {{ android_sdkmanager2_remove }} '{{ item }}' + echo "REMOVED" + fi loop: "{{ android_downloads_additional }}" + register: remove_additional + changed_when: "'REMOVED' in remove_additional.stdout" become_user: "{{ user }}" when: coding != true or sdks != true - ignore_errors: yes # Remove any versions which used to be part of this script and no longer used. - name: Workstation | Linux | Software | Android | Uninstall | Unused Modules - shell: "yes | {{ android_sdkmanager2_remove }} '{{ item }}'" + shell: | + if {{ android_sdkmanager2_list }} | grep -q '{{ item }}'; then + yes | {{ android_sdkmanager2_remove }} '{{ item }}' + echo "REMOVED" + fi loop: "{{ android_downloads_unused }}" + register: remove_unused + changed_when: "'REMOVED' in remove_unused.stdout" become_user: "{{ user }}" when: coding == true