[T.10] 团队项目:CI/CD实践

项目 内容
这个作业属于哪个课程 2026年春季软件工程
这个作业的要求在哪里 [T.10] 团队项目:CI/CD实践
我在这个课程的目标 完整开发一套成熟的软件,提升工程能力和技术能力
这个作业在哪个具体方面帮助我实现目标 熟悉CI/CD

选项及理由

打包 与 单元测试。

选择理由:

  1. 对项目的适配性与价值:当前项目前后端分离的Web应用,最终产出是可运行的Backend容器镜像和可供Nginx等服务器分发的Frontend静态文件。“打包”能直接生成这两个核心部署产物,是项目交付的最终环节,价值最高。同时,Backend流程中已包含“单元测试”,这能确保“打包”前的代码质量,是保障“打包”产物可靠性的前置安全网,两者结合紧密。
  2. 对团队开发的价值:
    • 标准化与自动化交付:自动化构建消除了手动操作的差异与错误,确保每次部署的产出物(镜像、dist目录)一致性。
    • 质量卡点:Backend的“单元测试”在CI阶段运行,可在代码合入主干前发现问题,防止有缺陷的代码进入部署流程。

配置文件与描述实现

CI/CD平台:GitHub Actions。

前端项目

  • ci.yml:

    image-20260427141305098

  • deploy.yml:

    image-20260427141339087

后端项目

  • ci.yml:
    image-20260427141047013

  • deploy.yml:

    image-20260427141130095

    image-20260427141216755

分支策略与触发逻辑

  • 开发与集成分支 (develop):推送或PR到该分支时,触发 CI流程(后端测试、前端构建),确保合并前的代码质量。
  • 主分支 (main/master):推送或PR到该分支时,同样触发 CI流程,保护生产主干。
  • 发布分支 (release):
    • 推送事件:触发完整的 CI/CD 流程。即先运行CI,成功后自动执行Deploy(打包镜像/同步文件并部署)。

    • 作用:该分支是发布“开关”,将代码从开发状态提升至生产状态的唯一自动化通道。

CI/CD运行结果

前端项目

image-20260427141627114

后端项目

image-20260427141702482

posted @ 2026-04-27 14:20  HakimiSN  阅读(37)  评论(0)    收藏  举报