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}}"