-
Notifications
You must be signed in to change notification settings - Fork 4
/
codemagic.yaml
135 lines (135 loc) · 4.19 KB
/
codemagic.yaml
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
workflows:
default-workflow:
name: Default Workflow
max_build_duration: 60
environment:
flutter: master
xcode: latest
cocoapods: default
triggering:
events:
- tag
branch_patterns:
- pattern: '*'
include: true
source: true
tag_patterns:
- pattern: '*'
include: true
scripts:
- |
# set up debug keystore
rm -f ~/.android/debug.keystore
keytool -genkeypair \
-alias androiddebugkey \
-keypass android \
-keystore ~/.android/debug.keystore \
-storepass android \
-dname 'CN=Android Debug,O=Android,C=US' \
-keyalg 'RSA' \
-keysize 2048 \
-validity 10000
- |
# set up local properties
echo "flutter.sdk=$HOME/programs/flutter" > "$FCI_BUILD_DIR/android/local.properties"
- flutter packages pub get
- |
# fetch db and sudachi.rs dict
wget https://jp.xydustc.me/f/arujisho.db.zip -O db/arujisho.db.zip
cd sudachi.rs
sh prepare_diczip.sh
cd ..
- |
# install rust
brew install rustup
rustup-init -y
source "$HOME/.cargo/env"
rustup target add aarch64-linux-android armv7-linux-androideabi x86_64-linux-android aarch64-apple-ios
cargo install cargo-ndk
- |
# build Android
source "$HOME/.cargo/env"
flutter build apk --release
- |
# build iOS
source "$HOME/.cargo/env"
find . -name "Podfile" -execdir pod install \;
flutter build ios --release --no-codesign
- |
#!/bin/sh
mv build/app/outputs/apk/release/app-release.apk build/app/outputs/apk/release/arujisho.apk
mkdir -p Payload
mkdir -p build/ios/ipa
mv ./build/ios/iphoneos/Runner.app Payload
zip -r -y -9 Payload.zip Payload/Runner.app
mv Payload.zip build/ios/ipa/arujisho.ipa
artifacts:
- build/**/outputs/apk/**/*.apk
- build/**/outputs/bundle/**/*.aab
- build/ios/ipa/*.ipa
- '*.snap'
- build/windows/**/*.msix
debug:
name: Debug
max_build_duration: 60
environment:
flutter: master
xcode: latest
cocoapods: default
scripts:
- sed -i'.bak' -e 's/isRelease = true/isRelease = false/g' lib/main.dart
- |
# set up debug keystore
rm -f ~/.android/debug.keystore
keytool -genkeypair \
-alias androiddebugkey \
-keypass android \
-keystore ~/.android/debug.keystore \
-storepass android \
-dname 'CN=Android Debug,O=Android,C=US' \
-keyalg 'RSA' \
-keysize 2048 \
-validity 10000
- |
# set up local properties
echo "flutter.sdk=$HOME/programs/flutter" > "$FCI_BUILD_DIR/android/local.properties"
- flutter packages pub get
- |
# fetch db and sudachi.rs dict
wget https://jp.xydustc.me/f/arujisho.db.zip -O db/arujisho.db.zip
cd sudachi.rs
sh prepare_diczip.sh
cd ..
- |
# install rust
brew install rustup
rustup-init -y
source "$HOME/.cargo/env"
rustup target add aarch64-linux-android armv7-linux-androideabi x86_64-linux-android aarch64-apple-ios
cargo install cargo-ndk
- |
# build Android
source "$HOME/.cargo/env"
flutter build apk --release
- |
# build iOS
source "$HOME/.cargo/env"
find . -name "Podfile" -execdir pod install \;
flutter build ios --release --no-codesign
- |
#!/bin/sh
mv build/app/outputs/apk/release/app-release.apk build/app/outputs/apk/release/arujisho.apk
mkdir -p Payload
mkdir -p build/ios/ipa
mv ./build/ios/iphoneos/Runner.app Payload
zip -r -y -3 Payload.zip Payload/Runner.app
mv Payload.zip build/ios/ipa/arujisho.ipa
artifacts:
- build/**/outputs/apk/**/*.apk
- build/**/outputs/bundle/**/*.aab
- build/**/outputs/**/mapping.txt
- build/ios/ipa/*.ipa
- /tmp/xcodebuild_logs/*.log
- '*.snap'
- build/windows/**/*.msix
- flutter_drive.log