From 4752eede0b6e2b38b8a85dfa1922196bff2e6495 Mon Sep 17 00:00:00 2001 From: mso7nueh Date: Mon, 18 Nov 2024 09:47:18 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20.gitea/workflows/test.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/test.yml | 74 +++++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 35 deletions(-) diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index c879c02c..7a15aa16 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -6,6 +6,7 @@ env: flutter_version: "3.24.4" java_version: "21.x" flutter_channel: "stable" + sdk_cache_key: "android-sdk-${{ runner.os }}-${{ hashFiles('**/android/**/*') }}" # Уникальный ключ для кэширования Android SDK jobs: build: @@ -19,37 +20,31 @@ jobs: with: distribution: "zulu" java-version: ${{ env.java_version }} - - - name: Cache Gradle dependencies - uses: actions/cache@v2 - with: - path: ~/.gradle/caches - key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: | - gradle-${{ runner.os }}- - - - name: Install Android SDK - run: | - apt-get update - apt-get install -y openjdk-11-jdk wget - wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip - unzip commandlinetools.zip - mkdir -p $HOME/Android/Sdk/cmdline-tools/latest - mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ - export ANDROID_SDK_ROOT=$HOME/Android/Sdk - export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin - yes | sdkmanager --licenses 2>/dev/null || true + cache: "gradle" + # Кэширование Android SDK - name: Cache Android SDK - uses: actions/cache@v2 + uses: actions/cache@v3 with: - path: | - $HOME/Android/Sdk - ~/.android - key: android-sdk-${{ runner.os }}-${{ hashFiles('**/build.gradle') }} + path: $HOME/Android/Sdk + key: ${{ env.sdk_cache_key }} restore-keys: | android-sdk-${{ runner.os }}- + - name: Install Android SDK (only if cache is missed) + run: | + if [ ! -d "$HOME/Android/Sdk" ]; then + apt-get update + apt-get install -y openjdk-11-jdk wget + wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip -O commandlinetools.zip + unzip commandlinetools.zip + mkdir -p $HOME/Android/Sdk/cmdline-tools/latest + mv cmdline-tools/* $HOME/Android/Sdk/cmdline-tools/latest/ + export ANDROID_SDK_ROOT=$HOME/Android/Sdk + export PATH=$PATH:$HOME/Android/Sdk/cmdline-tools/latest/bin + yes | sdkmanager --licenses 2>/dev/null || true + fi + - name: Set up Android environment variables run: | echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV @@ -62,15 +57,12 @@ jobs: echo "ANDROID_HOME: $ANDROID_HOME" echo "PATH: $PATH" - - name: Cache Flutter dependencies - uses: actions/cache@v2 + # Кэширование Flutter SDK + - name: Cache Flutter SDK + uses: actions/cache@v3 with: - path: | - $HOME/.pub-cache - $HOME/.flutter + path: ${{ runner.tool_cache }}/flutter key: flutter-${{ env.flutter_version }}-${{ env.flutter_channel }} - restore-keys: | - flutter-${{ env.flutter_version }}- - name: Install jq run: | @@ -83,6 +75,13 @@ jobs: flutter-version: ${{ env.flutter_version }} cache: true + # Кэширование Flutter зависимостей (pub cache) + - name: Cache Flutter dependencies + uses: actions/cache@v3 + with: + path: ~/.pub-cache + key: flutter-deps-${{ env.flutter_version }}-${{ env.flutter_channel }} + - name: Show cache keys run: | echo CACHE-PATH=${{ steps.flutter-action.outputs.CACHE-PATH }} @@ -91,7 +90,7 @@ jobs: echo VERSION=${{ steps.flutter-action.outputs.VERSION }} echo ARCHITECTURE=${{ steps.flutter-action.outputs.ARCHITECTURE }} echo PUB-CACHE-PATH=${{ steps.flutter-action.outputs.PUB-CACHE-PATH }} - echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} + echo PUB-CACHE-KEY=${{ steps.flutter-action.outputs.PUB-CACHE-KEY }} shell: bash - name: Fix dir permissions @@ -106,11 +105,16 @@ jobs: - name: Native Analyze run: flutter analyze + #- name: Run Code Metrics + # run: flutter pub run dart_code_metrics:metrics lib --disable-sunset-warning --fatal-warnings --fatal-performance + - name: Test - run: flutter test + run: | + flutter test - name: Build apk - run: flutter build apk + run: | + flutter build apk - name: Rename and move apk run: |