我无疑是整个持续整合理念的新手。因此,我一直在网上寻找一种方法来获取我的ASP.NET项目,通过Jenkins提供它,以便在Linux机器上使用NAnt和mono进行自动构建,并最终将工件部署到Apache Archiva中进行检索稍后安装,等等。
我的问题是,我不知道如何整合从Jenkins到Archiva的神器。
所以,这就是我的理解:
.zip
个文件(我想要使用的文件),.jar
文件等这是我不明白的地方:
.zip
文件(工件)从存储位置获取到Archiva存储库?以下是我正在使用的内容:
我对此一无所知(但可能有所帮助?):
答案 0 :(得分:3)
设置一个单独的Jenkins"任务"使用Maven进行部署。
注意:您不需要太了解Maven就可以完成这项工作。您必须安装它。您必须按照下面的页面所述对其进行配置,并且您需要使用该信息从命令行调用它。 (如果您想了解更多信息,可以使用备用建议。)
使用此页面中的信息设置settings.xml:
http://archiva.apache.org/docs/1.4-M2/userguide/deploy.html
同一页面显示了如何从命令行运行Maven。要使用它,您将创建一个运行shell脚本的Jenkins任务,并直接从构建任务创建它的位置进行部署。然后,您可以手动运行部署,也可以让Jenkins构建任务在完成时运行部署任务,而不会出现错误。
您可能不熟悉的一件事是Archiva / Maven的每个文件的坐标系统。
每个工件都有一个组,工件ID和版本。如果你愿意,可以有分类器等。
这是此解释的简短版本。谷歌是你的朋友。
您也可以使用Maven任务执行此操作。将需要有关pom.xml文件的Archiva页面上的信息,但您必须使用Google" Maven deploy"并阅读如何为您的特定情况做这件事。当工件位于本地Maven仓库(在构建机器上)并且repo具有您需要的特定文件和文件夹结构时,默认情况下会部署。这就是Maven在创建和安装工件时安排工件的方式。
答案 1 :(得分:1)
从Jenkins为非maven构建简化部署到Archiva的可能性可以写一个类似于https://wiki.jenkins-ci.org/display/JENKINS/Artifactory+Plugin的插件(注意:我可以帮助你,但没有时间ATM做任何事情:-))。 我不太了解NAnt但是对于ant,我们构建了一些maven ant任务来部署工件,请参阅http://maven.apache.org/ant-tasks/