mirror of
https://github.com/oneclickvirt/ecs.git
synced 2025-12-24 12:37:53 +08:00
fix:工具链问题修复
This commit is contained in:
82
.github/workflows/build.yml
vendored
82
.github/workflows/build.yml
vendored
@@ -40,17 +40,7 @@ jobs:
|
||||
build-android:
|
||||
name: Build Android APK
|
||||
needs: prepare
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-24.04-arm
|
||||
arch: arm64
|
||||
name: android-arm64
|
||||
- os: ubuntu-latest
|
||||
arch: amd64
|
||||
name: android-x86_64
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
@@ -106,11 +96,10 @@ jobs:
|
||||
run: |
|
||||
REPO="oneclickvirt/ecs"
|
||||
BINARIES_DIR="embedding/binaries"
|
||||
TARGET_ARCH="${{ matrix.arch }}"
|
||||
|
||||
mkdir -p "$BINARIES_DIR"
|
||||
|
||||
# 使用 gh CLI 获取最新版本(更简单可靠)
|
||||
# 使用 gh CLI 获取最新版本
|
||||
echo "获取最新版本信息..."
|
||||
ECS_VERSION=$(gh release view --repo "$REPO" --json tagName --jq '.tagName')
|
||||
|
||||
@@ -120,17 +109,20 @@ jobs:
|
||||
fi
|
||||
|
||||
echo "ECS 版本: $ECS_VERSION"
|
||||
echo "目标架构: $TARGET_ARCH"
|
||||
|
||||
# 根据架构下载对应的二进制
|
||||
PATTERN="goecs_linux_${TARGET_ARCH}.zip"
|
||||
OUTPUT_FILE="${BINARIES_DIR}/goecs-linux-${TARGET_ARCH}"
|
||||
# 下载 Linux ARM64(用于 Android ARM64)
|
||||
echo "下载 Linux ARM64..."
|
||||
gh release download "$ECS_VERSION" --repo "$REPO" --pattern "goecs_linux_arm64.zip" --output "/tmp/goecs_linux_arm64.zip"
|
||||
unzip -q -o "/tmp/goecs_linux_arm64.zip" -d /tmp/
|
||||
mv /tmp/goecs "${BINARIES_DIR}/goecs-linux-arm64"
|
||||
chmod +x "${BINARIES_DIR}/goecs-linux-arm64"
|
||||
|
||||
echo "下载 Linux ${TARGET_ARCH}..."
|
||||
gh release download "$ECS_VERSION" --repo "$REPO" --pattern "$PATTERN" --output "/tmp/goecs.zip"
|
||||
unzip -q -o "/tmp/goecs.zip" -d /tmp/
|
||||
mv /tmp/goecs "$OUTPUT_FILE"
|
||||
chmod +x "$OUTPUT_FILE"
|
||||
# 下载 Linux AMD64(用于 Android x86_64)
|
||||
echo "下载 Linux AMD64..."
|
||||
gh release download "$ECS_VERSION" --repo "$REPO" --pattern "goecs_linux_amd64.zip" --output "/tmp/goecs_linux_amd64.zip"
|
||||
unzip -q -o "/tmp/goecs_linux_amd64.zip" -d /tmp/
|
||||
mv /tmp/goecs "${BINARIES_DIR}/goecs-linux-amd64"
|
||||
chmod +x "${BINARIES_DIR}/goecs-linux-amd64"
|
||||
|
||||
echo ""
|
||||
echo "二进制文件列表:"
|
||||
@@ -144,23 +136,36 @@ jobs:
|
||||
sed -i "s/Version = .*/Version = \"${{ needs.prepare.outputs.version }}\"/" FyneApp.toml
|
||||
cat FyneApp.toml
|
||||
|
||||
- name: Build Android APK (${{ matrix.arch }})
|
||||
- name: Build Android APK (arm64)
|
||||
env:
|
||||
ANDROID_NDK_HOME: ${{ env.ANDROID_NDK_HOME }}
|
||||
GOPRIVATE: github.com/oneclickvirt/security
|
||||
GOOS: android
|
||||
GOARCH: arm64
|
||||
run: |
|
||||
if [ "${{ matrix.arch }}" == "arm64" ]; then
|
||||
fyne package --os android --app-id com.oneclickvirt.goecs --app-version "${{ needs.prepare.outputs.app_version }}"
|
||||
else
|
||||
fyne package --os android/amd64 --app-id com.oneclickvirt.goecs --app-version "${{ needs.prepare.outputs.app_version }}"
|
||||
fi
|
||||
|
||||
fyne package --os android --app-id com.oneclickvirt.goecs --app-version "${{ needs.prepare.outputs.app_version }}"
|
||||
if [ -f *.apk ]; then
|
||||
mkdir -p .build
|
||||
mv *.apk .build/goecs-gui-${{ matrix.name }}-${{ needs.prepare.outputs.version }}.apk
|
||||
echo "${{ matrix.arch }} APK 构建成功"
|
||||
mv *.apk .build/goecs-gui-android-arm64-${{ needs.prepare.outputs.version }}.apk
|
||||
echo "ARM64 APK 构建成功"
|
||||
else
|
||||
echo "${{ matrix.arch }} APK 构建失败"
|
||||
echo "ARM64 APK 构建失败"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Build Android APK (x86_64)
|
||||
env:
|
||||
ANDROID_NDK_HOME: ${{ env.ANDROID_NDK_HOME }}
|
||||
GOPRIVATE: github.com/oneclickvirt/security
|
||||
GOOS: android
|
||||
GOARCH: amd64
|
||||
run: |
|
||||
fyne package --os android/amd64 --app-id com.oneclickvirt.goecs --app-version "${{ needs.prepare.outputs.app_version }}"
|
||||
if [ -f *.apk ]; then
|
||||
mv *.apk .build/goecs-gui-android-x86_64-${{ needs.prepare.outputs.version }}.apk
|
||||
echo "x86_64 APK 构建成功"
|
||||
else
|
||||
echo "x86_64 APK 构建失败"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -197,11 +202,18 @@ jobs:
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Upload APK
|
||||
- name: Upload ARM64 APK
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: goecs-gui-${{ matrix.name }}-${{ needs.prepare.outputs.version }}
|
||||
path: .build/goecs-gui-${{ matrix.name }}-${{ needs.prepare.outputs.version }}.apk
|
||||
name: goecs-gui-android-arm64-${{ needs.prepare.outputs.version }}
|
||||
path: .build/goecs-gui-android-arm64-${{ needs.prepare.outputs.version }}.apk
|
||||
retention-days: 90
|
||||
|
||||
- name: Upload x86_64 APK
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: goecs-gui-android-x86_64-${{ needs.prepare.outputs.version }}
|
||||
path: .build/goecs-gui-android-x86_64-${{ needs.prepare.outputs.version }}.apk
|
||||
retention-days: 90
|
||||
|
||||
build-desktop:
|
||||
|
||||
Reference in New Issue
Block a user