翼度科技»论坛 编程开发 .net 查看内容

.NET Github Actions 入门

4

主题

4

帖子

12

积分

新手上路

Rank: 1

积分
12
Github Actions 是 Github 提供的一种持续集成(CI)和持续部署(CD)工具,可以自动化代码开发、测试、构建和部署的过程。它可以在代码仓库中通过配置文件来定义工作流程(Workflow),包括触发事件、执行任务和处理结果等。这些工作流程可以与Github仓库的其他功能(如Issues、Pull Requests等)集成,也可以使用第三方工具进行扩展。
使用 Github Actions 可以极大地简化和自动化软件开发和发布流程,同时提高生产力和代码质量。因为它可以自动化许多常见的任务,例如测试代码、构建代码、打包应用程序、发布到生产环境等等。同时,Github Actions 也可以与其他工具集成,例如 Docker、AWS 等等,使得开发者可以更加方便地使用这些工具来完成自己的工作。
前言 By ChatGPT
1.入门知识

使用 Github Action 需要在仓库的根目录创建 .github/workflows 文件夹,在里面使用 yaml 定义 Github Action 工作流。
如图所示:

Github Actions 官方文档:https://docs.github.com/en/actions
2.运行流程

Github Actions 的工作流程大概可以分为 3 步:签出代码、 安装运行环境、执行各种操作。

3.Hello World

在 workflows目录下创建名为 dotnet.yml 的文件:
  1. name: .NET
  2. # 定义触发条件
  3. on:
  4.   # 触发动作 push
  5.   push:
  6.     # 触发分支 main
  7.     branches: [ "main" ]
  8.   # 触发动作 pr
  9.   pull_request:
  10.     # 触发分支 main
  11.     branches: [ "main" ]
  12. # 定义 Job
  13. jobs:
  14.   # Job 名:build
  15.   build:
  16.     # 运行 Job 的 OS 环境
  17.     runs-on: ubuntu-latest
  18.     # 执行 Job 对应的步骤
  19.     steps:
  20.       # 签出代码
  21.     - uses: actions/checkout@v3
  22.     - name: Setup .NET
  23.       # 安装 dotnet 7.0.x
  24.       uses: actions/setup-dotnet@v3
  25.       with:
  26.         dotnet-version: 7.0.x
  27.       # 还原包
  28.     - name: Restore dependencies
  29.       run: dotnet restore
  30.       # 执行 Build
  31.     - name: Build
  32.       run: dotnet build --no-restore
复制代码
以上定义了一个名为 build 的 Job,Job 会在 Push 或者 Pr 时运行,签出代码->安装 .NET 7->执行 dotnet build。Build 可以保证我们提交的代码是可以编译通过的。
这时进入 Github->仓库->Actions 便会看到我们创建的 Action。

我们可以直接点击 commit 前面的小图标进入 Action 运行详情:

棕色表示执行中,执行成功会变为绿的的 √,执行失败则会变为红色的 X。

提交一个 PR 观察是否会被触发:

可以看到向 main 分支创建的 PR 成功的触发了执行,并且后续的关联 PR 分支的提交都会被触发执行 Action。

4.快捷创建

Github 以及第三方社区,提供了一些便捷的工作流模板可以供我们使用:

可以搜索到符合要求的 Action,然后点击 Configure 即可。
5.结束

Github Actions 可以接管许多常见的任务,比如测试代码、构建代码、打包等,可以节省时间和精力,提高效率。

来源:https://www.cnblogs.com/stulzq/archive/2023/03/07/17187752.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具