为 .NET Core Web 应用程序使用 Jenkins 和 GitHub 的 CI/CD 管道
为 .NET Core Web 应用程序使用 Jenkins 和 GitHub 的 CI/CD 管道
我们将讨论 Jenkins 并逐步构建、测试和部署 .NET Core 应用程序
议程
- 詹金斯简介
- 詹金斯的特点
- 詹金斯持续集成
- Java和Jenkins的安装
- .NET Core 应用的逐步实现
- Jenkins 管道和配置
先决条件
- GitHub
- 詹金斯
- IIS
- 视觉工作室 2022
- .NET 核心 SDK 6
- 爪哇 11
詹金斯简介
- Jenkins 是用 java 编写的开源自动化服务器
- 它支持从软件开发中的构建、测试和部署的所有持续集成和持续部署相关的事情
- CI/CD 是 DevOps 的主要部分,市场上的许多工具被 Jenkins、TeamCity、Azure DevOps 等许多组织使用。
- 这使开发人员可以更轻松地通过集成更改来专注于软件开发以提高生产力,而不是专注于应用程序的构建、测试和部署
詹金斯的特点
- 开源
- 易于配置和安装
- 多个插件
- 用户友好的界面
詹金斯持续集成
- 在持续集成过程中,我们将开发人员提交的所有最新代码更改集成到 git 和其他任何地方。
- 实时多个开发人员在同一个分支上工作,EOD 会将他们的工作提交给 git。
- 稍后,每当提交新代码时,Jenkins 服务器都会触发,运行测试用例,并根据我们的需要为 QA、DEV 和生产等许多环境创建无错误的构建。
- 如果某些构建和单元测试用例失败,则用户将收到通知,并且新代码将再次出现,并且此过程将持续进行
- 如果您想了解有关 Jenkins 的更多信息,请阅读官方文档( 詹金斯.io/doc )。
Java和Jenkins的安装
爪哇 -
步骤1
为 Jenkins 安装 Java 11
https://www.oracle.com/java/technologies/downloads/#java11
第2步
打开 exe 文件并在您的系统上安装 Java
第 3 步
使用CMD管理员模式设置Java Path的环境变量
setx -m JAVA_HOME “C:\Program Files\Java\jdk-11.0.16.1”
setx -m PATH “%JAVA_HOME%\bin;%PATH%”
第4步
检查Java是否正确安装,如下所示
詹金斯 -
步骤1
安装詹金斯
https://www.jenkins.io/download/
第2步
打开exe文件并选择本地服务作为登录类型
第 3 步
配置端口号(默认端口为 8080),但我设置为 8888,您可以根据可用性进行配置
第4步
提供程序数据内 Java 文件夹中的 bin 文件夹的 Java JDK 路径
第 5 步
成功安装 Jenkins 后,服务器在浏览器中打开 URL( http://localhost:8888/ )
第 6 步
您可以在里面看到一个提供管理员密钥的
步骤 7)
根据需要自定义 Jenkins 插件。我为 .NET 应用程序安装了 Git、MS Build MS Test 和其他一些
第 8 步
设置每次在 Jenkins 服务器上登录时所需的用户凭据。
第 9 步
安装默认插件需要一些时间
第 10 步
转到 Manage Jenkins 中的 Manage Plugins 并为我安装的 .NET 应用程序、MS Build、Git、MS Test 和其他一些插件安装所需的插件。
.NET Core 应用的逐步实现
步骤1
创建新的 Web API
第2步
配置应用程序
第 3 步
提供额外信息
第4步
最后,运行应用程序
第 5 步
现在我们要发布这段代码
第 6 步
选择文件夹
第 7 步
它将采用默认发布路径
第 8 步
最后,发布
第 9 步
转到解决方案中项目的属性部分并编辑 FolderProfile.pubxml 文件并将 Web 发布方法更改为 Package
第 10 步
我们还需要 Microsoft Web Deploy,而且大多数时候它会随 Visual Studio 一起提供
第 11 步
稍后,我们只是在同一个解决方案中创建一个空的 xUnit 测试用例项目,仅用于演示目的
第 11 步
在提交到 git 之前,运行您的项目并确认您的系统上的所有东西都运行良好。
第 12 步
接下来,创建一个 git 存储库并将您的代码推送到其中
Jenkins 管道和配置
步骤1)
首先,我们将添加 MS Build Path 和 Configuration 到 Manage Jenkins 内的 Global Tool Configuration
第2步)
接下来,我们在全局工具配置里面添加git文件路径
第 3 步
现在,我们将在 Manage Jenkins 内的 Manage Credentials 中添加 git 凭据,单击并 全局凭证(无限制) 添加和您的 git 凭据,例如用户名和密码,一旦您单击保存,它将自动创建凭据 ID,并且您需要将该 ID 放入管道配置中。
第4步
打开 Jenkins Dashboard 并单击 New Item 以创建管道
管道基本上是在创建构建之前要执行的一组步骤,包括单元测试、集成测试用例以及更多根据需要
第 5 步
提供一般信息,如描述
第 6 步
接下来,单击几个复选框,它们可以帮助我们在 git 存储库中提交代码时自动触发管道,并放置五个用空格分隔的开始,以便我们在开发人员提交代码时立即触发管道
步骤 7)
添加以下管道脚本,这基本上是在创建构建之前要执行的一组步骤(注意 - 请确保所有路径都正确,否则会在构建过程中引发错误)
第 8 步
打开 IIS 并创建一个空网站并指向任何空文件夹,在构建完成后我们的管道将在其中发布和部署我们的代码
第 9 步
之后转到仪表板并运行您的管道
第 10 步
在这里你可以看到构建已经开始
现在,每当您更改添加提交代码时,都会触发构建,并且管道将为我们创建一个新构建并将其部署在 IIS 中。这个过程是连续运行的。此外,如果由于某些测试用例等原因导致构建失败,那么您还可以使用 Jenkins 内部的 SMTP 协议配置电子邮件,以帮助我们构建
第 11 步
最后,打开 IIS,您现在可以使用最新版本访问您的应用程序
第 12 步
从 IIS 浏览 URL,您可以看到应用程序处于运行模式
Git 存储库
您可以从我的 Git 存储库中克隆代码
https://github.com/Jaydeep-007/JenkinsWebApplicationDemo
结论
在这里,我们讨论了 Jenkins 的介绍以及安装和配置管道的分步实现,以实现持续集成和持续部署。
快乐学习!
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明