github: update workflows to use gradle-cache-action
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
This commit is contained in:
parent
1e4a57408e
commit
28bdbbbcce
4 changed files with 9 additions and 132 deletions
23
.github/checksum.sh
vendored
23
.github/checksum.sh
vendored
|
@ -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
|
|
49
.github/workflows/deploy_snapshot.yml
vendored
49
.github/workflows/deploy_snapshot.yml
vendored
|
@ -20,40 +20,12 @@ jobs:
|
||||||
- name: Copy CI gradle.properties
|
- name: Copy CI gradle.properties
|
||||||
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/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
|
- name: Build release app
|
||||||
run: ./gradlew :app:assembleFreeRelease :app:assembleNonFreeRelease
|
uses: burrunan/gradle-cache-action@v1
|
||||||
env:
|
env:
|
||||||
SNAPSHOT: "true"
|
SNAPSHOT: "true"
|
||||||
|
with:
|
||||||
|
arguments: :app:assembleFreeRelease :app:assembleNonFreeRelease
|
||||||
|
|
||||||
- name: Clean secrets
|
- name: Clean secrets
|
||||||
run: release/signing-cleanup.sh
|
run: release/signing-cleanup.sh
|
||||||
|
@ -66,18 +38,3 @@ jobs:
|
||||||
SERVER_ADDRESS: ${{ secrets.SERVER_ADDRESS }}
|
SERVER_ADDRESS: ${{ secrets.SERVER_ADDRESS }}
|
||||||
SERVER_DESTINATION: ${{ secrets.SERVER_DESTINATION }}
|
SERVER_DESTINATION: ${{ secrets.SERVER_DESTINATION }}
|
||||||
SSH_PORT: ${{ secrets.SSH_PORT }}
|
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 }}
|
|
||||||
|
|
35
.github/workflows/pull_request.yml
vendored
35
.github/workflows/pull_request.yml
vendored
|
@ -33,40 +33,11 @@ jobs:
|
||||||
if: ${{ steps.service-changed.outputs.result == 'true' }}
|
if: ${{ steps.service-changed.outputs.result == 'true' }}
|
||||||
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
|
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
|
- name: Run unit tests
|
||||||
if: ${{ steps.service-changed.outputs.result == 'true' }}
|
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
|
- name: Run instrumentation tests
|
||||||
if: ${{ steps.service-changed.outputs.result == 'true' }}
|
if: ${{ steps.service-changed.outputs.result == 'true' }}
|
||||||
|
|
34
.github/workflows/release.yml
vendored
34
.github/workflows/release.yml
vendored
|
@ -20,38 +20,10 @@ jobs:
|
||||||
- name: Copy CI gradle.properties
|
- name: Copy CI gradle.properties
|
||||||
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/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
|
- 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
|
- name: Upload non-free release APK
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
|
|
Loading…
Reference in a new issue