2024-10-09 23:13:50 +08:00
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
set -e
|
|
|
|
|
|
echo "Build Params Info:Build Dir:$CI_PROJECT_DIR,Build Tag:$CI_COMMIT_TAG,Build Branch:$CI_COMMIT_BRANCH,Build BUILD_REVISION:$CI_RUNNER_REVISION"
|
|
|
|
|
|
|
|
|
|
|
|
export ENV_BUILD_TAG=${CI_COMMIT_TAG}
|
|
|
|
|
|
export ENV_BUILD_BRANCH=${CI_COMMIT_BRANCH}
|
|
|
|
|
|
export ENV_BUILD_WORKSPACE=${CI_PROJECT_DIR}
|
|
|
|
|
|
echo "GITLAB_WORKSPACE: ${CI_PROJECT_DIR}"
|
|
|
|
|
|
cd ${CI_PROJECT_DIR}/android
|
|
|
|
|
|
echo "ENV_BUILD_TAG:${ENV_BUILD_TAG},ENV_BUILD_BRANCH:${ENV_BUILD_BRANCH}"
|
2025-05-16 17:39:53 +08:00
|
|
|
|
regex='^(sky_)?v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$'
|
2024-10-22 09:36:06 +08:00
|
|
|
|
if [[ "${ENV_BUILD_BRANCH}" == "canary_release" ]]; then
|
2024-10-22 09:30:20 +08:00
|
|
|
|
echo "===build canary_release: ${NEXT_VERSION}"
|
|
|
|
|
|
export ENV_BUILD_TAG=${NEXT_VERSION}
|
2025-05-17 09:28:28 +08:00
|
|
|
|
bundle exec fastlane release_apk flavor:xhj --verbose || { echo "[FATAL] fastlane release_apk xhj 失败"; exit 10; }
|
|
|
|
|
|
bundle exec fastlane release_apk flavor:sky --verbose || { echo "[FATAL] fastlane release_apk sky 失败"; exit 11; }
|
2024-10-22 09:30:20 +08:00
|
|
|
|
elif [[ $ENV_BUILD_TAG =~ $regex ]]; then
|
|
|
|
|
|
echo "===build release===$ENV_BUILD_TAG"
|
2025-05-17 09:28:28 +08:00
|
|
|
|
bundle exec fastlane release_apk flavor:xhj --verbose || { echo "[FATAL] fastlane release_apk xhj 失败"; exit 10; }
|
|
|
|
|
|
bundle exec fastlane release_apk flavor:sky --verbose || { echo "[FATAL] fastlane release_apk sky 失败"; exit 11; }
|
|
|
|
|
|
bundle exec fastlane release_bundle flavor:xhj_bundle --verbose || { echo "[FATAL] fastlane release_bundle xhj_bundle 失败"; exit 12; }
|
|
|
|
|
|
bundle exec fastlane release_bundle flavor:sky --verbose || { echo "[FATAL] fastlane release_bundle sky 失败"; exit 13; }
|
2025-05-17 14:44:46 +08:00
|
|
|
|
echo "=== fastlane lane 结束,检查产物目录(前) ==="
|
|
|
|
|
|
ls -lh build/app/outputs/flutter-apk/ || true
|
|
|
|
|
|
ls -lh build/app/outputs/bundle/ || true
|
2025-05-17 14:00:46 +08:00
|
|
|
|
if [ ! -d build/app/outputs/flutter-apk/ ]; then
|
|
|
|
|
|
echo "❌ 产物目录 build/app/outputs/flutter-apk/ 未生成,构建失败!"
|
2025-05-17 14:44:46 +08:00
|
|
|
|
echo "=== 产物目录消失时,build/app/outputs/ 内容如下 ==="
|
|
|
|
|
|
ls -lh build/app/outputs/ || true
|
|
|
|
|
|
ls -lh build/app/outputs/bundle/ || true
|
2025-05-17 14:00:46 +08:00
|
|
|
|
exit 99
|
|
|
|
|
|
fi
|
2025-05-17 14:44:46 +08:00
|
|
|
|
echo "=== 产物目录检查通过,最终内容如下 ==="
|
2025-05-16 18:46:45 +08:00
|
|
|
|
ls -l build/app/outputs/flutter-apk/
|
2024-10-09 23:13:50 +08:00
|
|
|
|
elif [[ "${ENV_BUILD_BRANCH}" == "develop" ]]; then
|
2024-10-22 09:30:20 +08:00
|
|
|
|
echo "===build dev===${NEXT_VERSION}"
|
2025-05-17 09:28:28 +08:00
|
|
|
|
bundle exec fastlane beta flavor:xhj env:dev --verbose || { echo "[FATAL] fastlane beta xhj dev 失败"; exit 20; }
|
|
|
|
|
|
bundle exec fastlane beta flavor:sky env:dev --verbose || { echo "[FATAL] fastlane beta sky dev 失败"; exit 21; }
|
2024-10-09 23:13:50 +08:00
|
|
|
|
elif [[ "${ENV_BUILD_BRANCH}" == "release" ]] || [[ "${ENV_BUILD_BRANCH}" == "feat_devops" ]] ; then
|
2024-10-22 09:30:20 +08:00
|
|
|
|
echo "===build pre===${NEXT_VERSION}"
|
2025-05-17 09:28:28 +08:00
|
|
|
|
bundle exec fastlane beta flavor:xhj env:pre --verbose || { echo "[FATAL] fastlane beta xhj pre 失败"; exit 30; }
|
|
|
|
|
|
bundle exec fastlane beta flavor:sky env:pre --verbose || { echo "[FATAL] fastlane beta sky pre 失败"; exit 31; }
|
2025-05-09 16:23:57 +08:00
|
|
|
|
elif [[ "${ENV_BUILD_BRANCH}" == "release_sky" ]]; then
|
|
|
|
|
|
echo "===build release_sky===${NEXT_VERSION}"
|
2025-05-17 09:28:28 +08:00
|
|
|
|
bundle exec fastlane release_apk flavor:sky --verbose || { echo "[FATAL] fastlane release_apk sky 失败"; exit 40; }
|
|
|
|
|
|
bundle exec fastlane release_bundle flavor:sky --verbose || { echo "[FATAL] fastlane release_bundle sky 失败"; exit 41; }
|
2024-10-09 23:13:50 +08:00
|
|
|
|
fi
|
|
|
|
|
|
exit 0
|