在Debian上构建Flutter的CI/CD流程涉及几个步骤,包括安装Flutter SDK、配置开发环境、设置GitHub Actions或其他CI/CD工具。以下是详细的步骤指南:
1. 安装Flutter SDK
首先,确保你的Debian系统满足Flutter的最低要求。你需要安装一些必要的工具和库:
# 更新包列表 sudo apt update # 安装必要的工具和库 sudo apt install clang cmake build-essential pkg-config libegl1-mesa-dev libxkbcommon-dev libgles2-mesa-dev libwayland-dev wayland-protocols git curl wget unzip
接下来,下载并解压Flutter SDK:
# 下载Flutter SDK wget https://storage.googleapis.com/flutter_infra/releases/stable/linux/flutter_linux_v1.5.4-hotfix.2-stable.tar.xz # 解压到指定目录 tar xf ~/Downloads/flutter_linux_v1.5.4-hotfix.2-stable.tar.xz -C ~/development # 将Flutter添加到PATH环境变量 echo 'export PATH="$PATH:~/development/flutter/bin"' >> ~/.bashrc source ~/.bashrc
2. 配置Flutter环境
运行 flutter doctor
命令来检查并安装任何缺失的依赖项:
flutter doctor
3. 设置GitHub Actions for CI/CD
在你的GitHub仓库中,创建一个 .github/workflows
文件夹,并在其中创建一个名为 flutter_ci.yml
的文件,内容如下:
name: Flutter CI on: push: branches: - master jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Set up Flutter uses: subosito/flutter-action@v1 with: flutter-version: 2.2.3 - name: Install dependencies run: flutter pub get - name: Build APK run: flutter build apk - name: Upload APK uses: actions/upload-artifact@v2 with: name: release-apk path: build/app/outputs/apk/release/app-release.apk
4. 持续集成和持续部署(CI/CD)流程
上述GitHub Actions配置文件定义了一个简单的CI/CD流程:
- 代码提交:当有代码推送到
master
分支时,触发构建流程。 - 设置Flutter环境:使用
subosito/flutter-action
动作来设置Flutter环境。 - 安装依赖:运行
flutter pub get
来安装项目依赖。 - 构建APK:运行
flutter build apk
来构建Android APK。 - 上传APK:将构建好的APK上传到GitHub Actions的artifacts中。
5. 自托管Runner(可选)
如果你选择使用自托管Runner,可以参考以下步骤:
- 下载并配置Runner:
# 下载并配置Runner wget https://github.com/github/runner/releases/latest/download/GitHubRunner-2.265.0-linux-x64.tar.gz tar -xvzf GitHubRunner-2.265.0-linux-x64.tar.gz sudo mv GitHubRunner-2.265.0-linux-x64 /usr/local/bin/github-runner sudo chmod +x /usr/local/bin/github-runner
- 注册Runner:
./bin/register-runner --docker --replace
- 在Runner上配置Flutter环境:
# 安装Flutter SDK wget https://storage.googleapis.com/flutter_infra/releases/stable/linux/flutter_linux_v1.5.4-hotfix.2-stable.tar.xz tar xf ~/Downloads/flutter_linux_v1.5.4-hotfix.2-stable.tar.xz -C ~/development # 添加Flutter到PATH echo 'export PATH="$PATH:~/development/flutter/bin"' >> ~/.bashrc source ~/.bashrc
- 配置自托管Runner:
在GitHub项目的Settings -> Actions -> Runners中,添加并配置自托管Runner。
通过以上步骤,你就可以在Debian上构建一个基本的Flutter CI/CD流程。根据具体需求,你可以进一步定制和扩展这个流程。