From 28bdbbbcce86a346c5dca4b7e212312862165753 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Thu, 1 Oct 2020 14:14:36 +0530 Subject: [PATCH] github: update workflows to use gradle-cache-action Signed-off-by: Harsh Shandilya --- .github/checksum.sh | 23 ------------- .github/workflows/deploy_snapshot.yml | 49 ++------------------------- .github/workflows/pull_request.yml | 35 ++----------------- .github/workflows/release.yml | 34 ++----------------- 4 files changed, 9 insertions(+), 132 deletions(-) delete mode 100755 .github/checksum.sh diff --git a/.github/checksum.sh b/.github/checksum.sh deleted file mode 100755 index a1c7791a..00000000 --- a/.github/checksum.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash -RESULT_FILE=$1 - -if [ -f $RESULT_FILE ]; then - rm $RESULT_FILE -fi -touch $RESULT_FILE - -checksum_file() { - echo $(sha256sum $1 | awk '{print $1}') -} - -FILES=() -while read -r -d ''; do - FILES+=("$REPLY") -done < <(find . -type f \( -name "build.gradle*" -o -name "dependencies.gradle" -o -name "gradle-wrapper.properties" \) -print0) - -# Loop through files and append MD5 to result file -for FILE in ${FILES[@]}; do - echo $(checksum_file $FILE) >> $RESULT_FILE -done -# Now sort the file so that it is -sort $RESULT_FILE -o $RESULT_FILE diff --git a/.github/workflows/deploy_snapshot.yml b/.github/workflows/deploy_snapshot.yml index 3bb5d9c8..c31bbb78 100644 --- a/.github/workflows/deploy_snapshot.yml +++ b/.github/workflows/deploy_snapshot.yml @@ -20,40 +20,12 @@ jobs: - name: Copy CI gradle.properties run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties - - name: Generate cache key - run: ./.github/checksum.sh checksum.txt - - - name: Cache gradle modules - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/modules-2 - key: ${{ runner.os }}-gradlemodules-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlemodules- - - - name: Cache gradle jars - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/jars-3 - key: ${{ runner.os }}-gradlejars-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlejars- - - - name: Cache gradle build - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/build-cache-1 - key: ${{ runner.os }}-gradlebuildcache-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlebuildcache- - - - name: Download gradle dependencies - run: ./gradlew dependencies - - name: Build release app - run: ./gradlew :app:assembleFreeRelease :app:assembleNonFreeRelease + uses: burrunan/gradle-cache-action@v1 env: SNAPSHOT: "true" + with: + arguments: :app:assembleFreeRelease :app:assembleNonFreeRelease - name: Clean secrets run: release/signing-cleanup.sh @@ -66,18 +38,3 @@ jobs: SERVER_ADDRESS: ${{ secrets.SERVER_ADDRESS }} SERVER_DESTINATION: ${{ secrets.SERVER_DESTINATION }} SSH_PORT: ${{ secrets.SSH_PORT }} - - - name: Install NodeJS - uses: actions/setup-node@v2-beta - with: - node-version: '12' - - - name: Install cfcli - run: npm install -g cloudflare-cli - - - name: Purge Cloudflare cache - run: | - cfcli --token ${CF_TOKEN} purge "https://dl.msfjarvis.dev/APS/$(cd ./app/build/outputs/apk/nonFree/release/; ls *.apk)" - cfcli --token ${CF_TOKEN} purge "https://dl.msfjarvis.dev/APS/$(cd ./app/build/outputs/apk/free/release/; ls *.apk)" - env: - CF_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index f374c689..2774a381 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -33,40 +33,11 @@ jobs: if: ${{ steps.service-changed.outputs.result == 'true' }} run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties - - name: Generate cache key - if: ${{ steps.service-changed.outputs.result == 'true' }} - run: ./.github/checksum.sh checksum.txt - - - name: Cache gradle modules - if: ${{ steps.service-changed.outputs.result == 'true' }} - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/modules-2 - key: ${{ runner.os }}-gradlemodules-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlemodules- - - - name: Cache gradle jars - if: ${{ steps.service-changed.outputs.result == 'true' }} - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/jars-3 - key: ${{ runner.os }}-gradlejars-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlejars- - - - name: Cache gradle build - if: ${{ steps.service-changed.outputs.result == 'true' }} - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/build-cache-1 - key: ${{ runner.os }}-gradlebuildcache-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlebuildcache- - - name: Run unit tests if: ${{ steps.service-changed.outputs.result == 'true' }} - run: ./gradlew testFreeDebug lintFreeDebug + uses: burrunan/gradle-cache-action@v1 + with: + arguments: testFreeDebug lintFreeDebug - name: Run instrumentation tests if: ${{ steps.service-changed.outputs.result == 'true' }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 10484521..521f7af1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,38 +20,10 @@ jobs: - name: Copy CI gradle.properties run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties - - name: Generate cache key - run: ./.github/checksum.sh checksum.txt - - - name: Cache gradle modules - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/modules-2 - key: ${{ runner.os }}-gradlemodules-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlemodules- - - - name: Cache gradle jars - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/jars-3 - key: ${{ runner.os }}-gradlejars-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlejars- - - - name: Cache gradle build - uses: actions/cache@v2 - with: - path: ~/.gradle/caches/build-cache-1 - key: ${{ runner.os }}-gradlebuildcache-${{ hashFiles('checksum.txt') }} - restore-keys: | - ${{ runner.os }}-gradlebuildcache- - - - name: Download gradle dependencies - run: ./gradlew dependencies - - name: Build release binaries - run: ./gradlew :app:assembleFreeRelease :app:assembleNonFreeRelease :app:bundleNonFreeRelease + uses: burrunan/gradle-cache-action@v1 + with: + arguments: :app:assembleFreeRelease :app:assembleNonFreeRelease :app:bundleNonFreeRelease - name: Upload non-free release APK uses: actions/upload-artifact@v2