在 CI/CD 自动化时通过 build_runner 管理生成的文件夹

问题描述 投票:0回答:1

我正在尝试使用 Github CI/CD 自动化构建发布 apk。我在我的项目中使用了 Jsonserialized 和 Intl 包。 build_runner 正在项目中生成生成的文件夹,我们不会将其推送到 github,因为这些文件夹仅用于开发。只是因为当我将构建发布命令添加到 yml 文件时,我在项目中使用该文件夹的引用,github 正在抛出该引用的错误。我该如何管理这个文件夹? 我应该将这些文件夹上传/推送到 github 还是正确的方法。 以下是我在 github 构建发布时遇到的导入和错误。

lib/app/app.dart:13:8:错误:读取时出错 “lib/ generated/l10n.dart”:没有这样的文件或目录

lib/models/model.dart:9:6:错误:读取时出错 “lib/network/models/model.g.dart”:没有这样的文件或目录部分 '模型.g.dart';

如有任何帮助或建议,我们将不胜感激。 谢谢

github build-automation build-runner github-ci
1个回答
0
投票

您可以在构建之前执行一个步骤,为 CI 生成所有内容,因此您还将测试代码是否可以在 CI 上生成,例如:

检查此 yaml 的最后 3 个命令以获取 github 操作:

on:
  pull_request:
      branches:
      - main

name: Build apk

jobs:
  run:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: subosito/flutter-action@v2
        with:
          channel: 'stable'
      - name: Setup JDK 11
        uses: actions/setup-java@v3
        with:
          java-version: 11
          distribution: 'corretto'
      - name: Setup Android SDK
        uses: android-actions/setup-android@v2

      - run: flutter pub get
      - run: dart run build_runner build
      - run: flutter build apk
© www.soinside.com 2019 - 2024. All rights reserved.