112 lines
3.9 KiB
YAML
112 lines
3.9 KiB
YAML
- name: Set Android Studio version
|
|
set_fact:
|
|
studio_path: "{{ large_prog_dir }}\\android-studio"
|
|
studio_version: "2025.1.2.13"
|
|
tools_version: "13114758_latest"
|
|
|
|
- name: Set Android command-line tools path
|
|
set_fact:
|
|
tools_path: "{{ studio_path }}\\cmdline-tools\\latest"
|
|
|
|
- name: Check Android Studio
|
|
win_stat:
|
|
path: "{{ studio_path }}\\bin\\studio64.exe"
|
|
register: studio
|
|
|
|
- when: not studio.stat.exists
|
|
block:
|
|
- name: Download Android Studio
|
|
win_get_url:
|
|
url: "https://redirector.gvt1.com/edgedl/android/studio/ide-zips/{{ studio_version }}/android-studio-{{ studio_version }}-windows.zip"
|
|
dest: "{{ large_prog_dir }}\\"
|
|
|
|
- name: Extract Android Studio
|
|
win_unzip:
|
|
src: "{{ large_prog_dir }}\\android-studio-{{ studio_version }}-windows.zip"
|
|
dest: "{{ large_prog_dir }}\\"
|
|
delete_archive: yes
|
|
|
|
- name: Check Android Studio tools
|
|
win_stat:
|
|
path: "{{ tools_path }}\\bin\\sdkmanager.bat"
|
|
register: tools
|
|
|
|
- when: not tools.stat.exists
|
|
block:
|
|
- name: Download Android Studio tools
|
|
win_get_url:
|
|
url: "https://dl.google.com/android/repository/commandlinetools-win-{{ tools_version }}.zip"
|
|
# url: "https://dl.google.com/android/repository/platform-tools-{{ tools_version }}-windows.zip"
|
|
dest: "{{ studio_path }}"
|
|
|
|
- name: Extract Android Studio tools
|
|
win_unzip:
|
|
# src: "{{ large_prog_dir }}\\platform-tools-{{ tools_version }}-windows.zip"
|
|
src: "{{ studio_path}}\\commandlinetools-win-{{ tools_version }}.zip"
|
|
dest: "{{ studio_path }}\\cmdline-tools\\"
|
|
delete_archive: yes
|
|
- name: Move cmdline-tools to expected location
|
|
ansible.windows.win_powershell:
|
|
script: move "{{ studio_path }}\\cmdline-tools\\cmdline-tools" "{{ tools_path }}"
|
|
|
|
- name: Create Android Studio data directory
|
|
win_file:
|
|
path: "{{ large_prog_dir }}\\.android"
|
|
state: directory
|
|
|
|
- name: Set Android Studio environment variables
|
|
win_environment:
|
|
level: machine
|
|
variables:
|
|
ANDROID_HOME: "{{ studio_path }}"
|
|
ANDROID_SDK_ROOT: "{{ studio_path }}"
|
|
ANDROID_PREFS_ROOT: "{{ large_prog_dir }}\\"
|
|
GRADLE_USER_HOME: "{{ large_prog_dir }}\\.gradle"
|
|
|
|
|
|
# - name: Accept Android SDK licenses
|
|
# win_shell: sh -c "yes | /c/android-sdk/cmdline-tools/cmdline-tools/bin/sdkmanager.bat --licenses"
|
|
|
|
- name: Include Android SDK packages
|
|
include_vars: androidsdk_packages.yml
|
|
|
|
- name: Install Android SDK packages
|
|
win_shell: |
|
|
{{ tools_path }}\bin\sdkmanager.bat --install "{{ item }}"
|
|
loop: "{{ AndroidSDK_packages }}"
|
|
|
|
|
|
# {{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager --install "{{ AndroidSDK_packages | join(' ') }}"
|
|
# {{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager --install "build-tools;33.0.0" "cmdline-tools;latest" "emulator" "ndk-bundle" "ndk;25.1.8937393" "platform-tools" "platforms;android-33" "sources;android-33" "system-images;android-33;google_apis;arm64-v8a" "system-images;android-33;google_apis;x86_64"
|
|
|
|
#- name: Install Android Studio
|
|
# win_package:
|
|
# path: "https://redirector.gvt1.com/edgedl/android/studio/install/{{ studio_version }}/android-studio-{{ studio_version }}-windows.exe"
|
|
# arguments: /S /AllUsers
|
|
# expected_return_code: [0, 1223, 3010]
|
|
# creates_path: "%ProgramFiles%\\Android\\Android Studio\\bin\\studio64.exe"
|
|
#- name: Check HAXM install status
|
|
# win_stat:
|
|
# path: "%ProgramFiles%\\Intel\\HAXM"
|
|
# register: file
|
|
|
|
#- when: not file.stat.exists
|
|
# block:
|
|
# - name: Download HAXM
|
|
# win_get_url:
|
|
# url: https://github.com/intel/haxm/releases/download/v7.7.1/haxm-windows_v7_7_1.zip
|
|
# dest: C:\
|
|
# register: download
|
|
|
|
# - name: Unzip HAXM
|
|
# win_unzip:
|
|
# src: "{{ download.dest }}"
|
|
# dest: C:\haxm
|
|
|
|
# - name: Install HAXM
|
|
# win_command: C:\haxm\silent_install.bat
|
|
|
|
# - name: Remove temporaries
|
|
# win_file:
|
|
# path: C:\haxm
|
|
# state: absent
|