Merge branch 'main' of https://gitea.23544.com/wangyang/web_shell_flutter
This commit is contained in:
commit
8799a62544
|
|
@ -135,27 +135,47 @@ pipeline {
|
|||
[ -f "\\$HOME/.zshrc" ] && source "\\$HOME/.zshrc" > /dev/null 2>&1
|
||||
cd apps/${currentApp}
|
||||
|
||||
if [ "${params.CLEAN_BUILD}" = "true" ]; then
|
||||
# 先写入 shell 变量,避免 GString 里出现 "\${params.xxx}" 触发 Groovy 解析错误
|
||||
CLEAN_BUILD='${params.CLEAN_BUILD}'
|
||||
VERSION_NAME='${params.VERSION_NAME}'
|
||||
BUILD_NUMBER='${params.BUILD_NUMBER}'
|
||||
BUILD_ENV='${params.BUILD_ENVIRONMENT}'
|
||||
|
||||
if [ "\$CLEAN_BUILD" = "true" ]; then
|
||||
echo " - 执行 flutter clean..."
|
||||
fvm flutter clean
|
||||
fi
|
||||
|
||||
fvm flutter pub get
|
||||
|
||||
# 拼接附加构建参数
|
||||
EXTRA_ARGS=""
|
||||
if [ ! -z "${params.VERSION_NAME}" ]; then
|
||||
EXTRA_ARGS="\\$EXTRA_ARGS --build-name=${params.VERSION_NAME}"
|
||||
if [ -n "\$VERSION_NAME" ]; then
|
||||
EXTRA_ARGS="\$EXTRA_ARGS --build-name=\$VERSION_NAME"
|
||||
fi
|
||||
if [ ! -z "${params.BUILD_NUMBER}" ]; then
|
||||
EXTRA_ARGS="\\$EXTRA_ARGS --build-number=${params.BUILD_NUMBER}"
|
||||
if [ -n "\$BUILD_NUMBER" ]; then
|
||||
EXTRA_ARGS="\$EXTRA_ARGS --build-number=\$BUILD_NUMBER"
|
||||
fi
|
||||
EXTRA_ARGS="\$EXTRA_ARGS --dart-define=APP_ENV=\$BUILD_ENV"
|
||||
|
||||
# 注入环境变量参数用于代码判断 (如需要)
|
||||
EXTRA_ARGS="\\$EXTRA_ARGS --dart-define=APP_ENV=${params.BUILD_ENVIRONMENT}"
|
||||
|
||||
echo " - 开始构建 APK 参数: \\$EXTRA_ARGS"
|
||||
fvm flutter build apk --release \\$EXTRA_ARGS
|
||||
echo " - 开始构建 APK 参数: \$EXTRA_ARGS"
|
||||
echo " - 开始执行 flutter build apk(构建期间每30秒输出一次心跳)..."
|
||||
|
||||
run_build_with_heartbeat() {
|
||||
(fvm flutter build apk --release \$EXTRA_ARGS) &
|
||||
BUILD_PID=\$!
|
||||
while kill -0 \$BUILD_PID 2>/dev/null; do
|
||||
echo " - 构建仍在进行中... \$(date '+%H:%M:%S')"
|
||||
sleep 30
|
||||
done
|
||||
wait \$BUILD_PID
|
||||
return \$?
|
||||
}
|
||||
|
||||
if ! run_build_with_heartbeat; then
|
||||
echo " ⚠️ 首次构建失败,尝试清理 Gradle wrapper 缓存后重试一次..."
|
||||
rm -rf "\$HOME/.gradle/wrapper/dists"
|
||||
run_build_with_heartbeat
|
||||
fi
|
||||
"""
|
||||
echo " ✅ ${currentApp} Android APK 构建完成"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue