-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.yml
More file actions
102 lines (86 loc) · 2.6 KB
/
main.yml
File metadata and controls
102 lines (86 loc) · 2.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
name: Cordova Build
on:
push:
branches:
- main
pull_request:
branches:
- main
permissions:
# required to modify releases
contents: write
jobs:
build:
runs-on: ubuntu-latest
steps:
# Check out the repository code
- name: Checkout code
uses: actions/checkout@v4
# Set up Node.js
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
# Set up Java 17
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'adopt'
# Set up Android SDK and Build Tools
- name: Set up Android SDK
uses: android-actions/setup-android@v3
with:
cmdline-tools-version: 'latest'
# Install Android Build Tools
- name: Install Android Build Tools
run: |
sdkmanager "build-tools;30.0.3" "platform-tools" "platforms;android-33"
env:
ANDROID_HOME: ${{ env.ANDROID_HOME }}
ANDROID_SDK_ROOT: ${{ env.ANDROID_HOME }}
# Set up Gradle
- name: Set up Gradle
uses: gradle/actions/setup-gradle@v4
with:
gradle-version: '7.6.5' # Specify a stable Gradle version compatible with Android builds
# Install Cordova globally
- name: Install Cordova
run: npm install -g cordova
# Find and unzip the project's zip file
- name: Unzip project
run: |
ZIP_FILE=$(find . -maxdepth 1 -name "*.zip" -type f)
if [ -z "$ZIP_FILE" ]; then
echo "No zip file found"
exit 1
fi
unzip "$ZIP_FILE" -d project
rm "$ZIP_FILE"
# Navigate to unzipped project directory and run npm install
- name: Install dependencies
run: |
cd project
npm install
# Run npm build
- name: Build project
run: |
cd project
npm run build
env:
ANDROID_HOME: ${{ env.ANDROID_HOME }}
ANDROID_SDK_ROOT: ${{ env.ANDROID_HOME }}
- name: Create ZIP file
run: |
zip -r project.zip . # 打包整个项目为 ZIP 文件
- name: Upload ZIP file
uses: actions/upload-artifact@v4
with:
name: project-zip
path: project.zip
- name: Upload artifacts to tag
uses: xresloader/upload-to-github-release@2bcae85344d41e21f7fc4c47fa2ed68223afdb49
with:
file: ./project/platforms/android/app/build/outputs/apk/debug/app-debug.apk
draft: false
tag_name: "deep-sea-build"