我正在开始一个小型的开源项目,我自己是当时唯一的贡献者。不过,我认为continuous integration设置对于检测我是否破坏了构建是有用的。
是否有免费的托管持续集成服务器适用于非常小的项目?谷歌搜索出现了CodeBetter,但我不确定他们会接受一个刚启动的单人项目。
我更喜欢TeamCity,但我愿意接受建议。
注意 - 托管解决方案对我来说是必须的。我不想设置和维护一个持续集成服务器,所以像“TeamCity”或“CruiseControl”这样的答案根本不相关。
具体要求:
答案 0 :(得分:14)
AppVeyor与Github完美集成,免费开源项目,非常容易设置。
使用YAML或UI配置构建。免费帐户一次仅限一个版本。支持部署到NuGet,以及项目和帐户源。它与GitHub深度集成,例如允许创建版本。它支持构建矩阵,AssemblyInfo修补,滚动构建,构建优先级,状态标记,构建通知等。
Travis是众所周知的CI(到目前为止似乎是most popular hosted CI),现在也是supports building C#, F# and VB projects。需要注意的是,它仅支持Linux和Mono,并且处于测试阶段(“可能随时被删除或更改”)。
MyGet是托管包服务器,但现在它也支持构建服务(当前预览)和other features。它对于公共源(最多500 MB)是免费的,并且对approved open-source projects(更大的存储和图库)具有稍微更好的功能。构建服务针对包进行了优化:NuGet feed,MyGet feed,SymbolSource集成等。
答案 1 :(得分:10)
现在由Microsoft Team Foundation Server为免费提供最多5人的团队。
它提供:
Visual Studio Team Services不需要托管代码,code can be pulled from GitHub或任何Git存储库。
如果项目很小且没有复杂的构建要求,Hosted pool可用于执行CI构建。有几个限制:可用的软件,一次一个构建,一个小时的时间限制等。如果还不够,您可以通过在您的计算机上运行脚本来添加自己的构建代理。
GitHub支持未满(例如,未构建拉取请求),但支持大多数功能。 Shields.io尚不支持VSO,但可以使用自定义屏蔽。
开源项目的主要缺点是构建日志,测试结果和其他数据不会公开。只有五个用户可以通过免费帐户访问该项目。有一个suggestion on UserVoice可以使公共项目成为可能。
答案 2 :(得分:4)
我知道线程已经很老了,但对于仍然在寻找答案的人们,我建议您查看AppHarbor
设置与Github和Bitbucket的集成非常容易,并且您可以通过“addon”选项免费获得基本的数据库连接。
初创公司非常方便。
答案 3 :(得分:2)
答案 4 :(得分:1)
我认为您不会轻易找到真正的免费(我的意思是任何项目,任何语言)托管CI服务,因为这样的服务非常CPU,RAM,磁盘密集这意味着具体的规则,硬件,定价。
对于某些优惠,请在此处查看Outsourcing Continuous Integration或this question。我没有详细查看所有解决方案,因此我不知道它们是否符合您的要求(语言,工具和定价)。
或尝试加入forge为开源项目提供持续集成,例如 The Codehaus (编辑:不是.NET项目AFAIK的选项)或{ {3}}。这肯定需要一些努力才能让你的项目被接受(实际上很少有恕我直言),但这可能是你最好的选择。
答案 5 :(得分:0)
答案 6 :(得分:-1)
也许正确的答案是有人为这类东西制作一套EC2图像,因此用户既可以使用亚马逊,也可以在防火墙内的Eucalyptus上构建自己的云,如果他们是偏执的......但是在任何一种情况下,您都可以节省构建这些图像的时间和成本。
答案 7 :(得分:-1)
MikeCI是一种经济实惠的托管CI服务,每月10美元,您可以在几分钟内完成云构建。它目前支持Ruby,Maven和Ant。它有一个免费的30天试用版,所以你可以尝试它,看看它是什么样的。我个人认为这很棒,而且我认为他们希望支持.Net和Objective C!
这是他们的网站http://www.mikeci.com
答案 8 :(得分:-1)
我知道这可能是一个旧线程,但是
这是另一种选择:
结帐Jenkins。
它确实支持我现在正在使用的Jenkins.NET。
这是另一个SO-RELATED-THREAD:TFS 2008/2010 vs Jenkins for Continuous Integration
答案 9 :(得分:-2)
有RunCodeAt,Pascal的评论指出了我。与github集成非常容易,我碰巧接收了我的项目。我试试看。