From 00f48f5cebf0b0e79d87420c01fa8d7bd4cc6094 Mon Sep 17 00:00:00 2001 From: xiaohei Date: Wed, 22 Apr 2026 23:21:17 +0800 Subject: [PATCH] ci: apple-build with proxy env and cocoapods path fix --- .github/workflows/apple-build.yml | 68 +++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 .github/workflows/apple-build.yml diff --git a/.github/workflows/apple-build.yml b/.github/workflows/apple-build.yml new file mode 100644 index 0000000..35ffbf5 --- /dev/null +++ b/.github/workflows/apple-build.yml @@ -0,0 +1,68 @@ +name: Build Apple (macOS + iOS) + +on: + push: + branches: [main] + +env: + http_proxy: http://127.0.0.1:7897 + https_proxy: http://127.0.0.1:7897 + HTTP_PROXY: http://127.0.0.1:7897 + HTTPS_PROXY: http://127.0.0.1:7897 + NO_PROXY: 192.168.120.110,localhost,127.0.0.1 + +jobs: + build-macos: + runs-on: mac-runner + steps: + - name: Checkout + run: | + git clone --depth 1 --branch main http://192.168.120.110:4000/AI_Team/habo.git . + - name: Install Flutter + run: | + if [ ! -d "$HOME/flutter" ]; then + git clone --depth 1 -b 3.35.7 https://github.com/flutter/flutter.git "$HOME/flutter" + fi + echo "$HOME/flutter/bin" >> $GITHUB_PATH + - name: Install deps + run: | + brew install cocoapods 2>/dev/null || true + - name: Get dependencies + run: flutter pub get + - name: Build macOS + run: flutter build macos --release + - name: Create DMG + run: | + cd build/macos/Build/Products/Release + hdiutil create -volname Habo -srcfolder habo.app -ov -format UDZO habo.dmg + + build-ios: + runs-on: mac-runner + steps: + - name: Checkout + run: | + git clone --depth 1 --branch main http://192.168.120.110:4000/AI_Team/habo.git . + - name: Install Flutter + run: | + if [ ! -d "$HOME/flutter" ]; then + git clone --depth 1 -b 3.35.7 https://github.com/flutter/flutter.git "$HOME/flutter" + fi + echo "$HOME/flutter/bin" >> $GITHUB_PATH + - name: Install deps + run: | + brew install cocoapods 2>/dev/null || true + echo "$(brew --prefix cocoapods 2>/dev/null)/bin" >> $GITHUB_PATH 2>/dev/null || true + which pod 2>/dev/null || gem install cocoapods --user-install 2>/dev/null || true + echo "$(ruby -e 'puts Gem.user_dir' 2>/dev/null)/bin" >> $GITHUB_PATH 2>/dev/null || true + - name: Get dependencies + run: flutter pub get + - name: Install CocoaPods + run: cd ios && pod install + - name: Build iOS + run: flutter build ios --release --no-codesign --no-tree-shake-icons + - name: Package .app + run: | + mkdir -p payload + cp -r build/ios/iphoneos/Runner.app payload/ + cd payload + zip -r ../Habo-iOS-no-sign.zip Runner.app