针对小型.NET开源项目的持续集成

rip*_*234 65 teamcity continuous-integration open-source

我正在开始一个小型的开源项目,我自己是当时唯一的贡献者.不过,我认为持续集成设置对于检测我是否打破了构建非常有用.

是否有适用于非常小的项目的免费托管持续集成服务器?谷歌搜索出现了CodeBetter,但我不确定他们会接受一个刚启动的单人项目.

我更喜欢TeamCity,但我愿意接受建议.

注意 - 托管解决方案对我来说是必须的.我不想设置和维护一个持续集成服务器,所以像"TeamCity"或"CruiseControl"这样的答案根本不相关.

具体要求:

  • 我在GitHub上托管我的项目,因此持续集成服务器需要Git集成
  • 我希望持续集成服务器能够运行.NET集成(单元)测试
  • 很高兴 - 我还需要访问MySQL服务器(虽然我可以修改测试以使用嵌入式SQLite,它们目前针对外部MySQL服务器运行).

Fer*_*ali 14

AppVeyor与Github完美集成,可免费用于开源项目,并且非常易于设置.

使用YAML或UI配置构建.免费帐户一次仅限一个版本.支持部署到NuGet,以及项目和帐户源.它与GitHub深度集成,例如允许创建版本.它支持构建矩阵,AssemblyInfo修补,滚动构建,构建优先级,状态标记,构建通知等.


Travis是着名的CI(并且似乎是迄今为止最受欢迎的托管CI),现在它也支持构建C#,F#和VB项目.需要注意的是,它仅支持Linux和Mono,并且处于测试阶段("可能随时被删除或更改").


MyGet是托管包服务器,但现在它也支持构建服务(当前预览)和其他功能.它对于公共源(最大500 MB)是免费的,并且对于已批准的开源项目(更大的存储和库)具有稍微更好的功能.构建服务针对包进行了优化:NuGet feed,MyGet feed,SymbolSource集成等.


小智 10

现在,Microsoft由Team Foundation Server为最多5人的团队免费提供.

它提供:

  • 源代码管理:TFS,Git
  • 敏捷规划:敏捷,Scrum,CMMI
  • 持续构建
  • 合作
  • 积分
  • 测试执行
  • 部署

Visual Studio Team Services不需要托管代码,可以从GitHub或任何Git存储库中提取代码.

如果项目很小并且没有复杂的构建要求,则托管池可用于执行CI构建.有几个限制:可用的软件,一次一个构建,一个小时的时间限制等.如果还不够,您可以通过在您的计算机上运行脚本来添加自己的构建代理.

GitHub支持未满(例如,未构建拉取请求),但支持大多数功能.Shields.io尚不支持VSO,但可以使用自定义屏蔽.

开源项目的主要缺点是构建日志,测试结果和其他数据不会公开.只有五个用户可以通过免费帐户访问该项目.有一个关于UserVoice的建议,使公共项目成为可能.


ni5*_*ni6 4

我知道这个帖子已经很老了,但是对于仍在寻找答案的人,我建议看看AppHarbor

设置与 Github 和 Bitbucket 的集成非常容易,并且您可以通过“ addon ”选项免费获得基本的数据库连接。

对于初创公司来说相当方便。

  • 我正在查看 AppHarbor,但它似乎根本不是一个 CI 解决方案。它看起来非常适合托管 .NET Web 应用程序,但如果您想持续集成项目,则不然。 (5认同)