From f2a8ffc7fb62db2a0e366f987d37a0ca037eb326 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9s=20Miguel=20Rubio?= Date: Tue, 25 Jul 2023 08:07:01 +0200 Subject: [PATCH] Update github-ci.yml (#3) * Update github-ci.yml * upload artifacts * split ci workflow and apk generation --- .github/workflows/generate_apk.yml | 52 ++++++++++++++++++++++++++++++ .github/workflows/github-ci.yml | 42 ++++++++++-------------- 2 files changed, 69 insertions(+), 25 deletions(-) create mode 100644 .github/workflows/generate_apk.yml diff --git a/.github/workflows/generate_apk.yml b/.github/workflows/generate_apk.yml new file mode 100644 index 000000000..26d1a93b2 --- /dev/null +++ b/.github/workflows/generate_apk.yml @@ -0,0 +1,52 @@ +# This is a basic workflow to help you get started with Actions + +name: Generate testing APK + +env: + # The name of the main module repository + main_project_module: android + +on: + pull_request: + branches: [ "main" ] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + # Set Current Date As Env Variable + - name: Set current date as env variable + run: echo "date_today=$(date +'%Y-%m-%d')" >> $GITHUB_ENV + + # Set Repository Name As Env Variable + - name: Set repository name as env variable + run: echo "repository_name=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}')" >> $GITHUB_ENV + + - name: Set Up JDK + uses: actions/setup-java@v3 + with: + distribution: 'zulu' # See 'Supported distributions' for available options + java-version: '17' + cache: 'gradle' + + - name: Change wrapper permissions + run: chmod +x ./gradlew + + # Create APK Debug + - name: Build apk debug project (APK) - ${{ env.main_project_module }} module + run: ./gradlew assembleDebug + + # Upload Artifact Build + # Noted For Output [main_project_module]/build/outputs/apk/debug/ + - name: Upload APK Debug - ${{ env.repository_name }} + uses: actions/upload-artifact@v3 + with: + name: ${{ env.date_today }} - ${{ env.playstore_name }} - ${{ env.repository_name }} - APK(s) debug generated + path: ${{ env.main_project_module }}/build/outputs/apk/debug/ diff --git a/.github/workflows/github-ci.yml b/.github/workflows/github-ci.yml index b0c875218..058af267d 100644 --- a/.github/workflows/github-ci.yml +++ b/.github/workflows/github-ci.yml @@ -2,9 +2,7 @@ name: CI -# Controls when the workflow will run on: - # Triggers the workflow on push or pull request events but only for the "main" branch push: branches: [ "main" ] pull_request: @@ -13,38 +11,32 @@ on: # Allows you to run this workflow manually from the Actions tab workflow_dispatch: -# A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: - # This workflow contains a single job called "build" build: - # The type of runner that the job will run on + runs-on: ubuntu-latest - # Steps represent a sequence of tasks that will be executed as part of the job steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3 - # Runs a single command using the runners shell - - name: Run a one-line script - run: echo Hello, world! - - # Runs a set of commands using the runners shell - - name: Run a multi-line script - run: | - echo Add other actions to build, - echo test, and deploy your project. - - # Set java version to 17 - - name: set up JDK 17 - uses: actions/setup-java@v1.4.4 + - name: Set Up JDK + uses: actions/setup-java@v3 with: - java-version: '17' + distribution: 'zulu' # See 'Supported distributions' for available options + java-version: '17' + cache: 'gradle' + + - name: Change wrapper permissions + run: chmod +x ./gradlew - # Grant permissions for gradlew - - name: Grant execute permission for gradlew - run: chmod +x gradlew + # Run check style - name: Kotlin checkstyle run: ./gradlew ktlintCheck - - name: Run tests + + # Run Tests Build + - name: Run gradle tests run: ./gradlew test + + # Run Build Project + # - name: Build gradle project + # run: ./gradlew build