Skip to content

Commit ac20ec4

Browse files
authored
Use GITHUB_RUN_NUMBER as build number (#202)
Also: * Remove `flutter config commands`, they are enabled by default * Enable `subosito/flutter-action@v2` action caching
1 parent 2640de5 commit ac20ec4

File tree

3 files changed

+27
-28
lines changed

3 files changed

+27
-28
lines changed

.github/workflows/flutter.yml

Lines changed: 20 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,12 @@ jobs:
2020
- name: Setup Flutter
2121
uses: subosito/flutter-action@v2
2222
with:
23+
cache: true
2324
flutter-version: ${{ env.FLUTTER_VERSION }}
2425
- name: Prepare packages/api
2526
run: ./packages/api/tool/build.sh
2627
- run: flutter pub get
27-
- run: flutter build apk "--build-name=${BUILD_NAME}" --split-per-abi
28+
- run: flutter build apk --split-per-abi
2829

2930
- name: Setup GCP authentication
3031
uses: google-github-actions/auth@v1
@@ -43,8 +44,8 @@ jobs:
4344
_message=$( \
4445
echo '### Android builds'; \
4546
echo '```'; \
46-
echo "BUILD_NAME=${BUILD_NAME}"; \
47-
echo "FLUTTER_VERSION=${FLUTTER_VERSION}"; \
47+
cat android/local.properties; \
48+
echo; \
4849
echo '```'; \
4950
echo; \
5051
ls build/app/outputs/apk/release/*.apk \
@@ -77,6 +78,7 @@ jobs:
7778
- name: Setup Flutter
7879
uses: subosito/flutter-action@v2
7980
with:
81+
cache: true
8082
flutter-version: ${{ env.FLUTTER_VERSION }}
8183
- name: Prepare packages/api
8284
run: ./packages/api/tool/build.sh
@@ -85,7 +87,7 @@ jobs:
8587
run: |
8688
set -e
8789
88-
flutter build ios "--build-name=${BUILD_NAME}" || true
90+
flutter build ios || true
8991
( cd ios && fastlane ipa )
9092
9193
- name: Setup GCP authentication
@@ -112,8 +114,8 @@ jobs:
112114
_message=$( \
113115
echo '### iOS build'; \
114116
echo '```'; \
115-
cat ios/Flutter/Generated.xcconfig | grep BUILD_NAME | sed s/FLUTTER_//; \
116-
echo "FLUTTER_VERSION=${FLUTTER_VERSION}"; \
117+
cat ios/Flutter/Generated.xcconfig; \
118+
echo; \
117119
echo '```'; \
118120
echo; \
119121
printf '[manifest.plist](%s)' "${GCS_URL}/ipa/redirect.html"; \
@@ -144,8 +146,8 @@ jobs:
144146
- name: Setup Flutter
145147
uses: subosito/flutter-action@v2
146148
with:
149+
cache: true
147150
flutter-version: ${{ env.FLUTTER_VERSION }}
148-
- run: flutter config --enable-linux-desktop
149151
- name: Prepare packages/api
150152
run: ./packages/api/tool/build.sh
151153
- run: flutter pub get
@@ -182,7 +184,8 @@ jobs:
182184
_message=$( \
183185
echo '### Linux build'; \
184186
echo '```'; \
185-
echo "FLUTTER_VERSION=${FLUTTER_VERSION}"; \
187+
cat linux/flutter/ephemeral/generated_config.cmake; \
188+
echo; \
186189
echo '```'; \
187190
echo; \
188191
printf '[bundle.zip](%s)\n' "${GCS_URL}/linux/bundle.zip"; \
@@ -213,16 +216,16 @@ jobs:
213216
- name: Setup Flutter
214217
uses: subosito/flutter-action@v2
215218
with:
219+
cache: true
216220
flutter-version: ${{ env.FLUTTER_VERSION }}
217-
- run: flutter config --enable-macos-desktop
218221
- name: Prepare packages/api
219222
run: ./packages/api/tool/build.sh
220223
- run: flutter pub get
221224
- name: Run flutter build macos
222225
run: |
223226
set -e
224227
225-
flutter build macos "--build-name=${BUILD_NAME}" || true
228+
flutter build macos || true
226229
( cd macos && fastlane app )
227230
228231
cd build/app/outputs/macos/release
@@ -247,8 +250,8 @@ jobs:
247250
_message=$( \
248251
echo '### macOS build'; \
249252
echo '```'; \
250-
cat macos/Flutter/ephemeral/Flutter-Generated.xcconfig | grep BUILD_NAME | sed s/FLUTTER_//; \
251-
echo "FLUTTER_VERSION=${FLUTTER_VERSION}"; \
253+
cat macos/Flutter/ephemeral/Flutter-Generated.xcconfig; \
254+
echo; \
252255
echo '```'; \
253256
echo; \
254257
ls build/app/outputs/macos/release/*.zip \
@@ -283,24 +286,18 @@ jobs:
283286
run: bash ./.github/workflows/prepare.sh
284287
shell: wsl-bash {0}
285288
env:
286-
WSLENV: GITHUB_ENV:GIT_CRYPT_KEY
289+
WSLENV: GITHUB_ENV:GITHUB_RUN_ATTEMPT:GITHUB_RUN_NUMBER:GIT_CRYPT_KEY
287290

288291
- name: Setup Flutter
289292
uses: subosito/flutter-action@v2
290293
with:
294+
cache: true
291295
flutter-version: ${{ env.FLUTTER_VERSION }}
292-
- run: flutter config --enable-windows-desktop
293296
- name: Prepare packages/api
294297
run: ./packages/api/tool/build.sh
295298
- run: flutter pub get
296299
- name: Run flutter pub run msix:create
297-
run: |
298-
set -e
299-
300-
_packageVersion=$( echo $APP_VERSION | sed 's/+/./' )
301-
echo "PACKAGE_VERSION=${_packageVersion}" | tee -a $GITHUB_ENV
302-
303-
flutter pub run msix:create --install-certificate=false "--version=${_packageVersion}"
300+
run: flutter pub run msix:create --install-certificate=false
304301

305302
- name: Setup GCP authentication
306303
uses: google-github-actions/auth@v1
@@ -322,8 +319,8 @@ jobs:
322319
_message=$( \
323320
echo '### Windows build'; \
324321
echo '```'; \
325-
echo "FLUTTER_VERSION=${FLUTTER_VERSION}"; \
326-
echo "PACKAGE_VERSION=${PACKAGE_VERSION}"; \
322+
cat windows/flutter/ephemeral/generated_config.cmake; \
323+
echo; \
327324
echo '```'; \
328325
echo; \
329326
printf '1. [Installing a test certificate directly from an MSIX package](https://www.advancedinstaller.com/install-test-certificate-from-msix.html)\n'; \

.github/workflows/prepare.sh

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,18 @@ if ! command -v yq &>/dev/null; then
2323
brew install yq
2424
fi
2525
fi
26+
2627
_appVersion=$(yq e '.version' pubspec.yaml)
27-
_appVersionWithoutNumber=$(echo "${_appVersion}" | sed 's/+.*$//')
28+
echo "_appVersion=${_appVersion}"
29+
_appVersionWithBuildNumber=$(printf '.version="%s+%d"' "${_appVersion}" "${GITHUB_RUN_NUMBER}${GITHUB_RUN_ATTEMPT}")
30+
echo "_appVersionWithBuildNumber=${_appVersionWithBuildNumber}"
31+
yq --inplace e "$_appVersionWithBuildNumber" pubspec.yaml
32+
cat pubspec.yaml
2833

2934
if command -v wslpath &>/dev/null; then
3035
_wslGithubEnv=$(wslpath -u "$GITHUB_ENV")
3136
export "GITHUB_ENV=${_wslGithubEnv}"
3237
fi
3338

34-
echo "APP_VERSION=${_appVersion}" | tee -a $GITHUB_ENV
35-
echo "BUILD_NAME=${_appVersionWithoutNumber}-${GITHUB_SHA:0:7}" | tee -a $GITHUB_ENV
36-
3739
_flutterVersion=$(yq e '.environment.flutter' pubspec.yaml)
3840
echo "FLUTTER_VERSION=${_flutterVersion}" | tee -a $GITHUB_ENV

pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: the_app
22
description: Tinh tế mobile apps built with Flutter for evaluation purposes.
3-
version: 2.0.0+27
3+
version: 2.0.1
44
publish_to: none
55

66
environment:

0 commit comments

Comments
 (0)