This repository has been archived by the owner on Nov 11, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
183 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
name: Android CI | ||
|
||
on: | ||
push: | ||
branches: [ "main", "develop" ] | ||
pull_request: | ||
paths: | ||
- "puppet/**" | ||
branches: [ "main" ] | ||
workflow_dispatch: | ||
jobs: | ||
build: | ||
|
||
runs-on: ubuntu-latest | ||
defaults: | ||
run: | ||
working-directory: puppet | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: set up JDK 17 | ||
uses: actions/setup-java@v3 | ||
with: | ||
java-version: '17' | ||
distribution: 'temurin' | ||
cache: gradle | ||
|
||
- name: Install Git LFS | ||
run: sudo apt-get install git-lfs | ||
- name: Set up Git LFS | ||
run: git lfs install | ||
- name: Pull LFS Objects | ||
run: git lfs pull | ||
|
||
- name: Create file | ||
run: cat /home/runner/work/puppet/puppet/puppet/app/google-services.json | base64 | ||
|
||
- name: Putting data | ||
env: | ||
DATA: ${{ secrets.GOOGLE_SERVICES_JSON }} | ||
run: echo $DATA > /home/runner/work/puppet/puppet/puppet/app/google-services.json | ||
|
||
- name: Grant execute permission for gradlew | ||
run: chmod +x gradlew | ||
# Run Tests Build | ||
- name: Run gradle tests | ||
run: ./gradlew test | ||
|
||
- name: Build with Gradle | ||
run: ./gradlew build | ||
|
||
- name: Archive lint results | ||
if: always() | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: lint-report | ||
path: app/build/reports/lint-results-debug.html |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,127 @@ | ||
name: Release All CI | ||
env: | ||
main_project_module: app | ||
on: | ||
push: | ||
paths: | ||
- "puppet/**" | ||
tags: | ||
- '*' | ||
workflow_dispatch: | ||
jobs: | ||
build-android: | ||
permissions: write-all | ||
runs-on: ubuntu-latest | ||
defaults: | ||
run: | ||
working-directory: puppet | ||
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 17 | ||
uses: actions/setup-java@v3 | ||
with: | ||
java-version: '17' | ||
distribution: 'temurin' | ||
cache: gradle | ||
|
||
- name: Create file | ||
run: cat /home/runner/work/puppet/puppet/puppet/app/google-services.json | base64 | ||
|
||
- name: Putting data | ||
env: | ||
DATA: ${{ secrets.GOOGLE_SERVICES_JSON }} | ||
run: echo $DATA > /home/runner/work/puppet/puppet/puppet/app/google-services.json | ||
|
||
- name: Grant execute permission for gradlew | ||
run: chmod +x gradlew | ||
|
||
# Run Tests Build | ||
- name: Run gradle tests | ||
run: ./gradlew test | ||
|
||
- name: Build with Gradle | ||
run: ./gradlew build | ||
|
||
- name: Archive lint results | ||
if: always() | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: lint-report | ||
path: app/build/reports/lint-results-debug.html | ||
|
||
# Create APK Debug | ||
- name: Build apk debug project (APK) - ${{ env.main_project_module }} module | ||
run: ./gradlew assembleDebug | ||
|
||
# Create APK Release | ||
- name: Build apk release project (APK) - ${{ env.main_project_module }} module | ||
run: ./gradlew assemble | ||
|
||
# Create Bundle AAB Release | ||
# Noted for main module build [main_project_module]:bundleRelease | ||
- name: Build app bundle release (AAB) - ${{ env.main_project_module }} module | ||
run: ./gradlew ${{ env.main_project_module }}:bundleRelease | ||
|
||
# Upload Artifact Build | ||
# Noted For Output [main_project_module]/build/outputs/apk/debug/ | ||
- name: Upload APK Debug - ${{ env.repository_name }} | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: android-debug | ||
path: puppet/${{ env.main_project_module }}/build/outputs/apk/debug/ | ||
|
||
# Noted For Output [main_project_module]/build/outputs/apk/release/ | ||
- name: Upload APK Release - ${{ env.repository_name }} | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: android-release | ||
path: puppet/${{ env.main_project_module }}/build/outputs/apk/release/ | ||
|
||
# Noted For Output [main_project_module]/build/outputs/bundle/release/ | ||
- name: Upload AAB (App Bundle) Release - ${{ env.repository_name }} | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: android-bundle | ||
path: puppet/${{ env.main_project_module }}/build/outputs/bundle/release/ | ||
|
||
release: | ||
needs: [build-android] | ||
permissions: write-all | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Download All Artifacts | ||
uses: actions/download-artifact@v3 | ||
with: | ||
path: ./ | ||
|
||
- name: Display structure of downloaded files | ||
run: ls -R | ||
|
||
- name: Create Release | ||
id: create_release | ||
uses: actions/create-release@v1 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
with: | ||
tag_name: ${{ github.ref }} | ||
release_name: Release ${{ github.ref }} | ||
draft: false | ||
prerelease: false | ||
|
||
- name: Upload Android Release | ||
uses: actions/upload-release-asset@v1 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
with: | ||
upload_url: ${{ steps.create_release.outputs.upload_url }} | ||
asset_path: android-debug/app-debug.apk # Update this with the correct APK path | ||
asset_name: app-release-unsigned.apk | ||
asset_content_type: application/vnd.android.package-archive |