2012-12-13 52 views
0

我们是一家使用PHP或.Net开发的网站。下面是发展所提出的路径:这是詹金斯的正确使用方法吗?

Developer -> SVN Server -> Jenkins Server -> Dev Server 
  1. 开发人员提交或创建一个标签到SVN服务器
  2. 提交或标签触发对詹金斯工作异步
  3. 对詹金斯将运行作业对于.Net,在复制代码之后,我需要使用aspnet_compile编译它
在开发服务器上的svn更新(或清除目的地空间,然后svn导出)将代码从SVN服务器

我的问题是双重的,这是Jenkins的正确使用方法吗?而且,如果我使用aspnet_compile.exe来编译.Net,会在Microsoft操作系统上安装一个从服务器(是否启用此功能)?

要futher答案:

勾选限制,其中该项目可以运行,选择的奴隶。

+0

这听起来像你想有一个持续部署的解决方案。在某些触发器(commit/tag)中,在Jenkins中启动一个构建,在那里它将从SVN服务器获取源代码,运行任何测试,编译代码并部署它。你使用任何类型的构建过程像ANT或Maven? Jenkins可以配置为使用这些工具为您完成自动化过程。 – thescientist

+0

@thescientist没有构建过程或单元测试(还),这是PHP直。由于SVN服务器是我们架构的联系点,我需要将这些文件放在适当的服务器上。 – TekiusFanatikus

回答

3

这听起来像一个相当标准的构建/部署工作流程,因此很好地使用了Jenkins,但是我建议在第4步中作为Jenkins构建的一部分,然后使用Jenkins将编译后的构件部署到您的开发服务器。通过这种方式,您可以让Jenkins将编译问题报告为构建失败,并且能够根据编译代码运行测试,作为Jenkins作业的一部分,per @ thescientist的评论。

如果您的Jenkins主服务器在Windows以外的操作系统上运行,则可以使用Windows从服务器进行编译。你甚至可以在你的开发服务器上运行从属进程以使部署更容易;我不会推荐这个用于生产设置,但它可以用于开发。

这里有一些链接可以帮助您:

Running Jenkins on Windows

Building ASP.NET code with Jenkins

Jenkins and PHP

+0

我们的主人将在Linux上。这是否意味着使用MSBuild的Linux可以编译.Net?或者是将要编译它的从站(在Windows上)?如果是这样,我如何在从站上配置插件? – TekiusFanatikus

+0

从站将执行编译,但MSBuild插件配置在主站上进行设置。您只需要设置一个MSBuild.exe位置,该位置与该工具在从属设备上的位置相匹配。 –

+0

只是想指出,在主人,我称之为奴隶批处理文件。该批处理文件使用适当的参数调用aspnet_compiler。 – TekiusFanatikus