diff --git a/Dockerfile b/Dockerfile index e049f00..e346e5b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -39,7 +39,13 @@ RUN curl -fSsL -A "Mozilla/5.0" https://packages.microsoft.com/keys/microsoft.as libgl1-mesa-glx \ && rm -rf /var/lib/apt/lists/* -# Acceptation des licences et installation des composants +# Installation du workload .NET Android +RUN dotnet workload install android --skip-manifest-update + +# AJOUT CRITIQUE : Fixer l'emplacement des AVD dans le SDK pour qu'il soit partagé et accessible peu importe l'utilisateur de la CI +ENV ANDROID_USER_HOME=${ANDROID_HOME}/.android + +# 4. Acceptation des licences et installation des composants RUN yes | sdkmanager --licenses \ && sdkmanager "platform-tools" \ "platforms;android-36" \ @@ -47,9 +53,16 @@ RUN yes | sdkmanager --licenses \ "emulator" \ "system-images;android-36;google_apis;x86_64" -# Installation du workload .NET Android +# 4b. AJOUT : Création pré-embarquée de l'AVD +# Nous créons le dossier parent et appliquons des permissions larges (777) pour éviter les blocages de droits dans Forgejo +RUN mkdir -p ${ANDROID_USER_HOME} \ + && echo "no" | avdmanager create avd -n pixel_test -k "system-images;android-36;google_apis;x86_64" --force \ + && chmod -R 777 ${ANDROID_USER_HOME} + +# 5. Installation du workload .NET Android RUN dotnet workload install android --skip-manifest-update + WORKDIR /src CMD ["bash"] \ No newline at end of file