name: Build on: pull_request: branches: [ main ] jobs: build: name: πŸ”¨ Build runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Set up JDK 11 uses: actions/setup-java@v1 with: java-version: '11' - name: Build with gradle run: ./gradlew build --stacktrace - name: Run Testts run: ./gradlew test - name: Build Project run: ./gradlew assemble lint-check: name: πŸ” Lint runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Lint check run: ./gradlew lint - name: Generate lint report uses: actions/upload-artifact@v2 with: name: lint_report.html path: app/build/reports/lint-results-debug.html unit-tests: name: πŸ§ͺ Unit Tests needs: [ lint-check ] runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Execute unit tests run: ./gradlew test --stacktrace - name: Generate test report uses: actions/upload-artifact@v2 with: name: unit_tests_report.html path: app/build/reports/tests/testDebugUnitTest/ # generate-apk: # name: βš™οΈGenerate APK # needs: [ build, lint-check, unit-tests ] # runs-on: ubuntu-latest # steps: # # - name: Checkout code # uses: actions/checkout@v2 # # - name: Set up JDK 11 # uses: actions/setup-java@v1 # with: # java-version: '11' # # - name: Build debug apk # run: ./gradlew assembleDebug --stacktrace # # - name: Upload debug apk # uses: actions/upload-artifact@v1 # with: # name: Yummy # path: app/build/outputs/apk/debug/app-debug.apk # create-release: # name: πŸŽ‰ Create Release # needs: [ generate-apk ] # runs-on: ubuntu-latest # steps: # # - name: Download APK from build # uses: actions/download-artifact@v1 # with: # name: Yummy # # - name: Create Release # id: create_release # uses: actions/create-release@v1 # env: # GITHUB_TOKEN: ${{ secrets.S_GITHUB_TOKEN }} # with: # tag_name: ${{ github.ref }} # release_name: Release ${{ github.ref }} # # - name: Upload Release APK # id: upload_release_asset # uses: actions/upload-release-asset@v1.0.1 # env: # GITHUB_TOKEN: ${{ secrets.S_GITHUB_TOKEN }} # with: # upload_url: ${{ steps.create_release.outputs.upload_url }} # asset_path: Yummy/app-debug.apk # asset_name: Yummy.apk # asset_content_type: application/zip # allowUpdates: true # firebase-deploy: # name: πŸ“¨ Deploy to Firebase App Distribution # needs: [ generate-apk ] # runs-on: ubuntu-latest # steps: # - name: Checkout Code # uses: actions/checkout@v1 # # - name: Download APK from build # uses: actions/download-artifact@v1 # with: # name: Yummy # # - name: Upload Artifact to Firebase App Distribution # uses: wzieba/Firebase-Distribution-Github-Action@v1 # with: # appId: ${{secrets.FIREBASE_APP_ID}} # token: ${{secrets.FIREBASE_TOKEN}} # groups: Testers # file: Yummy/app-debug.apk # # playstore-deploy: # name: πŸš€ Deploy to Play Store # needs: [ generate-apk ] # runs-on: ubuntu-latest # steps: # - name: Checkout Code # uses: actions/checkout@v1 # send-message: # name: πŸ“’ Send Message # needs: [ create-release, firebase-deploy, playstore-deploy ] # runs-on: ubuntu-latest # steps: # - name: Checkout Code # uses: actions/checkout@v1 #name: Android Build # #on: pull_request # #jobs: # build: # # runs-on: ubuntu-latest # # steps: # - uses: actions/checkout@v1 # # - name: Set Up JDK # uses: actions/setup-java@v1 # with: # java-version: 11 # # - name: Run Tests # run: ./gradlew test # # - name: Build Project # run: ./gradlew assemble # #