微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Bitbucket Pipeline进行.Net Core项目的自动构建、测试和部署

mogr2/auto-orient/strip%7CimageView2/2/w/1080/q/50">

首先,提供支持Mercurial和Git版本控制系统的网络托管服务。简单来说,它类似于GitHub,不同之处在于它支持个人免费创建私有项目仓库。除此之外,Bitbucket提供的Pipeline功能可以帮助我们进行项目的自动构建、测试和部署。

该项目是使用Abp创建的.Net Core版本的模板项目,项目结构如下:项目结构

点击Pipeline,我们选择.NET Core,即可创建用于配置Pipeline的配置文件bitbucket-pipelines.yml

Pipeline

bitbucket-pipelines.yml

从图中可以看出,其配置很简单,主要包括以下几个部分:

  1. image:了解过docker的同学肯定不陌生,通过指定image来告诉pipeline要拉取何种镜像用于项目编译。
  2. export:通过export指定我们要编译的项目名和测试项目名。(注意:需要使用相对路径)。
  3. dotnet:.net core的还原、编译和测试命令。

由于我们的项目是基于.net core 2.0,且分层架构如下:分层架构

我们要对bitbucket-pipelines.yml做以下几项修改:bitbucket-pipelines.yml

修改完成,点击Commit File即刻进入Pipeline运行界面,运行结果如下:

Pipeline Execute Result

至此,我们就完成了.NET Core项目的构建和测试。那如何让它自动进行这两项操作呢?简单,回到Pipeline界面,点击【Schedules】菜单,创建一个【Schedule】即可。

Create a schedule

那如何完成部署呢?

因为我使用的Micosoft Azure进行部署,所以按照官方文档,我们仅需在bitbucket-pipelines.yml后面添加一条git push命令即可,如下:- git push https://$AZURE_LOGIN:$AZURE_PASSWORD@abpeshop.scm.azurewebsites.net/Abpeshop.git master 其中$AZURE_LOGIN$AZURE_PASSWORD是Azure的部署凭据,我们需要在我们当前项目仓库中定义环境变量,如下图所示:mogr2/auto-orient/strip%7CimageView2/2/w/1240" alt="定义环境变量">

最后无图无真相:mogr2/auto-orient/strip%7CimageView2/2/w/1240" alt="成功完成自动部署">

Bitbucket提供的Pipeline的免费构建时间为50mins/月,但对于我们简单尝鲜来说是足够了!当然如果不够用,其付费策略也很优惠,2$/月,拥有500mins/月的构建时间。 当然微软的VSTS,也是一个很好地选择。

参考文章bitbucket-pipelines-and-docker/">Building .NET Core apps with BitBucket Pipelines and Docker

我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan

原文地址:https://www.jb51.cc/netcore/71230.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐