github: run deployment after stylecheck and unit tests pass

This commit is contained in:
Harsh Shandilya 2021-09-23 22:22:48 +05:30
parent 1683c5c027
commit 43f441ded9
No known key found for this signature in database
GPG key ID: 366D7BBAD1031E80
3 changed files with 95 additions and 103 deletions

95
.github/workflows/ci.yml vendored Normal file
View file

@ -0,0 +1,95 @@
name: CI
on:
push:
branches:
- main
jobs:
run-unit-tests:
runs-on: ubuntu-latest
steps:
- name: Setup Java 11
uses: actions/setup-java@d9126d7df2f1b080b603441eaf5810ced3614e78
with:
distribution: 'zulu'
java-version: '11'
- name: Checkout repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
- name: Copy CI gradle.properties
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Run unit tests
uses: burrunan/gradle-cache-action@03c71a8ba93d670980695505f48f49daf43704a6
with:
arguments: test --stacktrace
- name: (Fail-only) upload test report
if: failure()
uses: actions/upload-artifact@27bce4eee761b5bc643f46a8dfb41b430c8d05f6
with:
name: Test report
path: app/build/reports
stylecheck:
runs-on: ubuntu-latest
steps:
- name: Setup Java 11
uses: actions/setup-java@d9126d7df2f1b080b603441eaf5810ced3614e78
with:
distribution: 'zulu'
java-version: '11'
- name: Checkout repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
with:
fetch-depth: 0
- name: Copy CI gradle.properties
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Check codestyle with Spotless
uses: burrunan/gradle-cache-action@03c71a8ba93d670980695505f48f49daf43704a6
with:
arguments: spotlessCheck
deploy-release-snapshot:
runs-on: ubuntu-latest
if: "!contains(github.event.head_commit.message, '[ci skip]')"
needs: [ "run-unit-tests", "stylecheck" ]
steps:
- name: Setup Java 11
uses: actions/setup-java@d9126d7df2f1b080b603441eaf5810ced3614e78
with:
distribution: 'zulu'
java-version: '11'
- name: Checkout repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
- name: Copy CI gradle.properties
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Decrypt secrets
run: scripts/signing-setup.sh "$ENCRYPT_KEY"
env:
ENCRYPT_KEY: ${{ secrets.ENCRYPT_KEY }}
- name: Build release app
uses: burrunan/gradle-cache-action@03c71a8ba93d670980695505f48f49daf43704a6
with:
arguments: :android:assembleRelease
- name: Clean secrets
run: scripts/signing-cleanup.sh
- name: Deploy snapshot
run: scripts/deploy-snapshot.sh
env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
SSH_USERNAME: ${{ secrets.SSH_USERNAME }}
SERVER_ADDRESS: ${{ secrets.SERVER_ADDRESS }}
SERVER_DESTINATION: ${{ secrets.SERVER_DESTINATION }}
SSH_PORT: ${{ secrets.SSH_PORT }}

View file

@ -1,45 +0,0 @@
name: Deploy snapshot builds
on:
push:
branches:
- main
jobs:
deploy-release-snapshot:
runs-on: ubuntu-latest
if: "!contains(github.event.head_commit.message, '[ci skip]')"
steps:
- name: Setup Java 11
uses: actions/setup-java@d9126d7df2f1b080b603441eaf5810ced3614e78
with:
distribution: 'zulu'
java-version: '11'
- name: Checkout repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
- name: Copy CI gradle.properties
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Decrypt secrets
run: scripts/signing-setup.sh "$ENCRYPT_KEY"
env:
ENCRYPT_KEY: ${{ secrets.ENCRYPT_KEY }}
- name: Build release app
uses: burrunan/gradle-cache-action@03c71a8ba93d670980695505f48f49daf43704a6
with:
arguments: :android:assembleRelease
- name: Clean secrets
run: scripts/signing-cleanup.sh
- name: Deploy snapshot
run: scripts/deploy-snapshot.sh
env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
SSH_USERNAME: ${{ secrets.SSH_USERNAME }}
SERVER_ADDRESS: ${{ secrets.SERVER_ADDRESS }}
SERVER_DESTINATION: ${{ secrets.SERVER_DESTINATION }}
SSH_PORT: ${{ secrets.SSH_PORT }}

View file

@ -1,58 +0,0 @@
name: CI
on:
push:
branches:
- main
jobs:
run-unit-tests:
runs-on: ubuntu-latest
steps:
- name: Setup Java 11
uses: actions/setup-java@d9126d7df2f1b080b603441eaf5810ced3614e78
with:
distribution: 'zulu'
java-version: '11'
- name: Checkout repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
- name: Copy CI gradle.properties
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Run unit tests
uses: burrunan/gradle-cache-action@03c71a8ba93d670980695505f48f49daf43704a6
with:
arguments: test --stacktrace
- name: (Fail-only) upload test report
if: failure()
uses: actions/upload-artifact@27bce4eee761b5bc643f46a8dfb41b430c8d05f6
with:
name: Test report
path: app/build/reports
stylecheck:
runs-on: ubuntu-latest
steps:
- name: Setup Java 11
uses: actions/setup-java@d9126d7df2f1b080b603441eaf5810ced3614e78
with:
distribution: 'zulu'
java-version: '11'
- name: Checkout repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
with:
fetch-depth: 0
- name: Copy CI gradle.properties
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Check codestyle with Spotless
uses: burrunan/gradle-cache-action@03c71a8ba93d670980695505f48f49daf43704a6
with:
arguments: spotlessCheck