-
-
Notifications
You must be signed in to change notification settings - Fork 52
/
pipeline.yml
117 lines (106 loc) · 3.22 KB
/
pipeline.yml
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
steps:
- group: "Codegen & Test"
key: "codegen_test"
steps:
- label: "🛠 Dependencies & Codegen"
key: "apple_deps"
commands:
- "flutter pub get"
- "flutter gen-l10n"
- "mkdir -p /tmp/buildkite/${BUILDKITE_COMMIT}/"
- "rsync -ar ./ /tmp/buildkite/${BUILDKITE_COMMIT}/"
agents:
os: "macOS"
artifact_paths:
- "missing_translations.txt"
# Workaround for rsync warning about vanished files,
# which is inconsequential here but returns exit code
# 24 and is therefore interpreted as a failure
retry:
automatic:
- exit_status: 24
- label: "🔬 Test Coverage "
key: "apple_test"
depends_on:
- "apple_deps"
commands:
- "rsync -ar /tmp/buildkite/${BUILDKITE_COMMIT}/ ./"
- "make junit_test"
- "make junit_upload"
agents:
os: "macOS"
retry:
automatic:
- exit_status: 24
#################
- label: ":mac: Fluttium 🔬 "
key: "fluttium"
depends_on:
- "apple_deps"
commands:
- "rsync -ar /tmp/buildkite/${BUILDKITE_COMMIT}/ ./"
- touch ~/Library/Containers/com.matthiasn.lotti.dev
- trash ~/Library/Containers/com.matthiasn.lotti.dev
- "make activate_fluttium"
- "make fluttium"
- "make fluttium_docs"
agents:
os: "macOS"
retry:
automatic:
- exit_status: 24
#################
- label: "📱 iOS TestFlight"
key: "ios_build"
depends_on:
- "codegen_test"
commands:
- "rsync -ar /tmp/buildkite/${BUILDKITE_COMMIT}/ ./"
- "make ios_build_ipa"
- "make ios_fastlane_build"
- "make ios_fastlane_upload"
agents:
os: "macOS"
retry:
automatic:
- exit_status: 24
#################
- label: ":mac: fastlane TestFlight 🚀"
key: "macos_build"
depends_on:
- "codegen_test"
commands:
- "rsync -ar /tmp/buildkite/${BUILDKITE_COMMIT}/ ./"
- "make macos_build_flutter"
- "make macos_fastlane_build"
- "make macos_fastlane_upload"
agents:
os: "macOS"
retry:
automatic:
- exit_status: 24
#################
- label: "Create :github: Release "
key: "create_github_prerelease"
command:
- "gh release create -p --generate-notes --target ${BUILDKITE_COMMIT} ${BUILDKITE_BRANCH} || true"
agents:
os: "macOS"
# #################
- label: ":android: Bundle & Release"
key: "android_bundle_release"
depends_on:
- "codegen_test"
command:
- "rsync -ar /tmp/buildkite/${BUILDKITE_COMMIT}/ ./"
- "flutter build appbundle"
- "flutter build apk --split-per-abi"
- "gh release upload ${BUILDKITE_BRANCH} build/app/outputs/bundle/release/app-release.aab"
- "gh release upload ${BUILDKITE_BRANCH} build/app/outputs/flutter-apk/app-armeabi-v7a-release.apk"
- "gh release upload ${BUILDKITE_BRANCH} build/app/outputs/flutter-apk/app-arm64-v8a-release.apk"
- "gh release upload ${BUILDKITE_BRANCH} build/app/outputs/flutter-apk/app-x86_64-release.apk"
agents:
os: "macOS"
retry:
automatic:
- exit_status: 24