Skip to content

Commit fcfbfd9

Browse files
committed
update: github action v2
1 parent e530277 commit fcfbfd9

5 files changed

+45
-254
lines changed

.github/workflows/android-ci-generate-apk-aab-upload-2.yml

Lines changed: 29 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Generated APK AAB 2 (Upload - Create Artifact To Github Action)
1+
name: Generated APK AAB 2 Bundle Tool (Upload - Create Artifact To Github Action)
22

33
env:
44
# The name of the main module repository
@@ -7,11 +7,17 @@ env:
77
# The name of the Play Store
88
playstore_name: Frogobox ID
99

10-
# Name Artifact
11-
artifact_name: github-action-automated
10+
# Keystore Path
11+
ks_path: frogoboxdev.jks
1212

13-
# Version name
14-
version_app: 2.2.1
13+
# Keystore Password
14+
ks_store_pass: cronoclez
15+
16+
# Keystore Alias
17+
ks_alias: frogobox
18+
19+
# Keystore Alias Password
20+
ks_alias_pass: xeonranger
1521

1622
on:
1723

@@ -38,10 +44,6 @@ jobs:
3844
- name: Set repository name as env variable
3945
run: echo "repository_name=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}')" >> $GITHUB_ENV
4046

41-
# Set File Name As Env Variable
42-
- name: Set file name as env variable
43-
run: echo "file_name=$(echo '${{ env.artifact_name }}(${{ env.version_app }})')" >> $GITHUB_ENV
44-
4547
- name: Set Up JDK
4648
uses: actions/setup-java@v3
4749
with:
@@ -73,17 +75,25 @@ jobs:
7375
- name: Build app bundle release (AAB) - ${{ env.main_project_module }} module
7476
run: ./gradlew ${{ env.main_project_module }}:bundleRelease
7577

76-
- name: Convert aab to apk
77-
uses: amirisback/[email protected]
78-
with:
79-
aabFile: ${{ env.main_project_module }}/build/outputs/bundle/release/${{ env.file_name }}-release.aab
80-
bundletoolVersion: '1.9.0'
78+
# - name: Build APK(s) Debug from bundle using bundletool
79+
# run: java -jar ".github/lib/bundletool.jar" build-apks --bundle=${{ env.main_project_module }}/build/outputs/bundle/debug/${{ env.artifact_name }}-debug.aab --output=${{ env.main_project_module }}/build/outputs/bundle/debug/${{ env.artifact_name }}-debug.apks --mode=universal
8180

82-
- name: Upload Artifact APK
83-
uses: actions/upload-artifact@v3
84-
with:
85-
name: release-apk
86-
path: ${{ steps.convert_aab.outputs.apkPath }}
81+
- name: Set Env Artifact name from generated aab
82+
run: |
83+
cd ${{ env.main_project_module }}/build/outputs/bundle/release/
84+
files=(*)
85+
echo "generated_name_aab=${files[0]%.*}" >> $GITHUB_ENV
86+
87+
# Build APK From Bundle Using Bundletool
88+
# Noted For Output [main_project_module]/build/outputs/bundle/release/
89+
- name: Build APK(s) Release from bundle using bundletool (Path same with bundle output)
90+
run: java -jar ".github/lib/bundletool.jar" build-apks --bundle=${{ env.main_project_module }}/build/outputs/bundle/release/${{ env.generated_name_aab }}.aab --output=${{ env.main_project_module }}/build/outputs/bundle/release/${{ env.generated_name_aab }}.apks --mode=universal --ks="app/${{ env.ks_path }}" --ks-pass=pass:${{ env.ks_store_pass }} --ks-key-alias=${{ env.ks_alias }} --key-pass=pass:${{ env.ks_alias_pass }}
91+
92+
# Duplicate APK(s) Release to zip file and extract
93+
- name: Duplicate APK(s) Release to zip file and extract
94+
run: |
95+
cd ${{ env.main_project_module }}/build/outputs/bundle/release/
96+
unzip -p ${{ env.generated_name_aab }}.apks universal.apk > ${{ env.generated_name_aab }}.apk
8797
8898
# Upload Artifact Build
8999
# Noted For Output [main_project_module]/build/outputs/apk/debug/

.github/workflows/android-ci-generate-apk-aab-upload-3.yml

Lines changed: 0 additions & 109 deletions
This file was deleted.

.github/workflows/android-ci-generate-apk-aab-upload-4.yml

Lines changed: 0 additions & 118 deletions
This file was deleted.

README.md

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ jobs:
205205
#### Step 2. Code Action in file [android-ci-generate-apk-aab-upload-3.yml](https://github.com/amirisback/automated-build-android-app-with-github-action/blob/master/.github/workflows/android-ci-generate-apk-aab-upload-3.yml)
206206

207207
```yml
208-
name: Generated APK AAB 3 Bundle Tool (Upload - Create Artifact To Github Action)
208+
name: Generated APK AAB 2 Bundle Tool (Upload - Create Artifact To Github Action)
209209

210210
env:
211211
# The name of the main module repository
@@ -214,10 +214,7 @@ env:
214214
# The name of the Play Store
215215
playstore_name: Frogobox ID
216216

217-
# Apk / Aab Name
218-
artifact_name: github-action-automated
219-
220-
# Keystore
217+
# Keystore Path
221218
ks_path: frogoboxdev.jks
222219

223220
# Keystore Password
@@ -285,14 +282,25 @@ jobs:
285282
- name: Build app bundle release (AAB) - ${{ env.main_project_module }} module
286283
run: ./gradlew ${{ env.main_project_module }}:bundleRelease
287284

288-
#
289285
# - name: Build APK(s) Debug from bundle using bundletool
290286
# run: java -jar ".github/lib/bundletool.jar" build-apks --bundle=${{ env.main_project_module }}/build/outputs/bundle/debug/${{ env.artifact_name }}-debug.aab --output=${{ env.main_project_module }}/build/outputs/bundle/debug/${{ env.artifact_name }}-debug.apks --mode=universal
291287

288+
- name: Set Env Artifact name from generated aab
289+
run: |
290+
cd ${{ env.main_project_module }}/build/outputs/bundle/release/
291+
files=(*)
292+
echo "generated_name_aab=${files[0]%.*}" >> $GITHUB_ENV
293+
292294
# Build APK From Bundle Using Bundletool
293295
# Noted For Output [main_project_module]/build/outputs/bundle/release/
294296
- name: Build APK(s) Release from bundle using bundletool (Path same with bundle output)
295-
run: java -jar ".github/lib/bundletool.jar" build-apks --bundle=${{ env.main_project_module }}/build/outputs/bundle/release/${{ env.artifact_name }}-release.aab --output=${{ env.main_project_module }}/build/outputs/bundle/release/${{ env.artifact_name }}-release.apks --mode=universal --ks="app/${{ env.ks_path }}" --ks-pass=pass:${{ env.ks_store_pass }} --ks-key-alias=${{ env.ks_alias }} --key-pass=pass:${{ env.ks_alias_pass }}
297+
run: java -jar ".github/lib/bundletool.jar" build-apks --bundle=${{ env.main_project_module }}/build/outputs/bundle/release/${{ env.generated_name_aab }}.aab --output=${{ env.main_project_module }}/build/outputs/bundle/release/${{ env.generated_name_aab }}.apks --mode=universal --ks="app/${{ env.ks_path }}" --ks-pass=pass:${{ env.ks_store_pass }} --ks-key-alias=${{ env.ks_alias }} --key-pass=pass:${{ env.ks_alias_pass }}
298+
299+
# Duplicate APK(s) Release to zip file and extract
300+
- name: Duplicate APK(s) Release to zip file and extract
301+
run: |
302+
cd ${{ env.main_project_module }}/build/outputs/bundle/release/
303+
unzip -p ${{ env.generated_name_aab }}.apks universal.apk > ${{ env.generated_name_aab }}.apk
296304
297305
# Upload Artifact Build
298306
# Noted For Output [main_project_module]/build/outputs/apk/debug/

app/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ android {
2121
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
2222

2323
// Naming APK // AAB
24-
setProperty("archivesBaseName", "${ProjectSetting.NAME_APK}")
24+
setProperty("archivesBaseName", "${ProjectSetting.NAME_APK}(${versionName})")
2525

2626
}
2727

0 commit comments

Comments
 (0)