|
@ -0,0 +1,67 @@ |
|
|
|
|
|
name: Github nightly |
|
|
|
|
|
|
|
|
|
|
|
on: |
|
|
|
|
|
schedule: |
|
|
|
|
|
# * is a special character in YAML so you have to quote this string |
|
|
|
|
|
- cron: '27 10 * * *' # Everyday at 10:27:00 |
|
|
|
|
|
|
|
|
|
|
|
jobs: |
|
|
|
|
|
build: |
|
|
|
|
|
|
|
|
|
|
|
runs-on: ubuntu-latest |
|
|
|
|
|
|
|
|
|
|
|
steps: |
|
|
|
|
|
- name: Checkout |
|
|
|
|
|
uses: actions/checkout@v2 |
|
|
|
|
|
|
|
|
|
|
|
- name: set up JDK 1.8 |
|
|
|
|
|
uses: actions/setup-java@v1 |
|
|
|
|
|
with: |
|
|
|
|
|
java-version: 1.8 |
|
|
|
|
|
|
|
|
|
|
|
- name: Grant execute permission for gradlew |
|
|
|
|
|
run: chmod +x gradlew |
|
|
|
|
|
|
|
|
|
|
|
- name: Build Github unsigned apk |
|
|
|
|
|
run: ./gradlew assembleGithubRelease --stacktrace --project-prop pre |
|
|
|
|
|
|
|
|
|
|
|
- name: Sign APK |
|
|
|
|
|
uses: r0adkll/sign-android-release@v1 |
|
|
|
|
|
# ID used to access action output |
|
|
|
|
|
id: sign_app |
|
|
|
|
|
with: |
|
|
|
|
|
releaseDirectory: app/build/outputs/apk/github/release |
|
|
|
|
|
signingKeyBase64: ${{ secrets.SIGNING_KEY }} |
|
|
|
|
|
alias: ${{ secrets.ALIAS }} |
|
|
|
|
|
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} |
|
|
|
|
|
keyPassword: ${{ secrets.KEY_PASSWORD }} |
|
|
|
|
|
|
|
|
|
|
|
- name: Get current date and time |
|
|
|
|
|
id: date |
|
|
|
|
|
run: echo "::set-output name=date::$(date +'%Y%m%d_%H%M%S')" |
|
|
|
|
|
|
|
|
|
|
|
# Create artifact |
|
|
|
|
|
- name: Create apk artifact |
|
|
|
|
|
uses: actions/upload-artifact@v2 |
|
|
|
|
|
with: |
|
|
|
|
|
name: barinsta_nightly_${{ steps.date.outputs.date }} |
|
|
|
|
|
path: ${{steps.sign_app.outputs.signedReleaseFile}} |
|
|
|
|
|
|
|
|
|
|
|
# Send success notification |
|
|
|
|
|
- name: Send success Telegram notification |
|
|
|
|
|
if: ${{ success() }} |
|
|
|
|
|
uses: appleboy/telegram-action@master |
|
|
|
|
|
with: |
|
|
|
|
|
to: ${{ secrets.TELEGRAM_BUILDS_CHANNEL_TO }} |
|
|
|
|
|
token: ${{ secrets.TELEGRAM_BUILDS_BOT_TOKEN }} |
|
|
|
|
|
message: "${{ github.workflow }} ${{ github.job }} #${{ github.run_number }} completed successfully.\nhttps://github.com/${{github.repository}}/actions/runs/${{github.run_id}}" |
|
|
|
|
|
document: ${{steps.sign_app.outputs.signedReleaseFile}} |
|
|
|
|
|
|
|
|
|
|
|
# Send failure notification |
|
|
|
|
|
- name: Send failure Telegram notification |
|
|
|
|
|
if: ${{ failure() }} |
|
|
|
|
|
uses: appleboy/telegram-action@master |
|
|
|
|
|
with: |
|
|
|
|
|
to: ${{ secrets.TELEGRAM_BUILDS_CHANNEL_TO }} |
|
|
|
|
|
token: ${{ secrets.TELEGRAM_BUILDS_BOT_TOKEN }} |
|
|
|
|
|
message: "${{ github.workflow }} ${{ github.job }} #${{ github.run_number }} failed.\nhttps://github.com/${{github.repository}}/actions/runs/${{github.run_id}}" |