feat(CI): 添加Flutter安装脚本并改进Windows构建流程
添加install_flutter_simple.bat脚本用于在Windows上自动安装Flutter 改进docker.yml中的Windows构建步骤,增加Flutter路径检测和powershell支持
This commit is contained in:
parent
4f9d405c9f
commit
deac0adabd
@ -189,19 +189,51 @@ jobs:
|
||||
}
|
||||
|
||||
- name: Enable Windows desktop
|
||||
run: flutter config --enable-windows-desktop
|
||||
shell: powershell
|
||||
run: |
|
||||
$flutterPath = Get-Command flutter -ErrorAction SilentlyContinue
|
||||
if (-not $flutterPath) {
|
||||
Write-Host "Flutter not found, checking common locations..."
|
||||
$commonPaths = @(
|
||||
"C:\flutter\bin\flutter.exe",
|
||||
"C:\tools\flutter\bin\flutter.exe",
|
||||
"${env:USERPROFILE}\flutter\bin\flutter.exe"
|
||||
)
|
||||
$flutterFound = $false
|
||||
foreach ($path in $commonPaths) {
|
||||
if (Test-Path $path) {
|
||||
Write-Host "Found Flutter at: $path"
|
||||
$env:PATH = "$(Split-Path $path);$env:PATH"
|
||||
$flutterFound = $true
|
||||
break
|
||||
}
|
||||
}
|
||||
if (-not $flutterFound) {
|
||||
Write-Host "ERROR: Flutter not found. Please install Flutter first."
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
flutter config --enable-windows-desktop
|
||||
|
||||
- name: Get dependencies
|
||||
run: flutter pub get
|
||||
shell: powershell
|
||||
run: |
|
||||
flutter pub get
|
||||
|
||||
- name: Generate code
|
||||
run: dart run build_runner build --delete-conflicting-outputs
|
||||
shell: powershell
|
||||
run: |
|
||||
dart run build_runner build --delete-conflicting-outputs
|
||||
|
||||
- name: Build Windows Debug
|
||||
run: flutter build windows
|
||||
shell: powershell
|
||||
run: |
|
||||
flutter build windows
|
||||
|
||||
- name: Build Windows Release
|
||||
run: flutter build windows --release
|
||||
shell: powershell
|
||||
run: |
|
||||
flutter build windows --release
|
||||
|
||||
- name: Upload Debug build artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
|
||||
44
install_flutter_simple.bat
Normal file
44
install_flutter_simple.bat
Normal file
@ -0,0 +1,44 @@
|
||||
@echo off
|
||||
REM Simple Flutter installer for Windows Gitea Runner
|
||||
|
||||
echo Installing Flutter for Windows...
|
||||
|
||||
REM Create flutter directory
|
||||
mkdir C:\flutter 2>nul
|
||||
|
||||
REM Download Flutter stable version
|
||||
echo Downloading Flutter...
|
||||
powershell -Command "(New-Object Net.WebClient).DownloadFile('https://storage.googleapis.com/flutter_infra_release/releases/stable/windows/flutter_windows_3.24.5-stable.zip', 'C:\flutter.zip')"
|
||||
|
||||
if %errorlevel% neq 0 (
|
||||
echo Download failed, trying alternative...
|
||||
powershell -Command "Invoke-WebRequest -Uri 'https://storage.googleapis.com/flutter_infra_release/releases/stable/windows/flutter_windows_3.24.5-stable.zip' -OutFile 'C:\flutter.zip'"
|
||||
)
|
||||
|
||||
REM Extract Flutter
|
||||
echo Extracting Flutter...
|
||||
powershell -Command "Expand-Archive -Path 'C:\flutter.zip' -DestinationPath 'C:\' -Force"
|
||||
|
||||
REM Set PATH
|
||||
echo Setting PATH...
|
||||
set PATH=C:\flutter\bin;%PATH%
|
||||
setx PATH "C:\flutter\bin;%PATH%"
|
||||
|
||||
REM Clean up
|
||||
del C:\flutter.zip
|
||||
|
||||
REM Verify installation
|
||||
echo Verifying Flutter installation...
|
||||
C:\flutter\bin\flutter --version
|
||||
|
||||
if %errorlevel% equ 0 (
|
||||
echo SUCCESS: Flutter installed successfully
|
||||
echo Running flutter doctor...
|
||||
C:\flutter\bin\flutter doctor
|
||||
) else (
|
||||
echo ERROR: Flutter installation failed
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo Flutter installation complete!
|
||||
pause
|
||||
Loading…
x
Reference in New Issue
Block a user