|
|
1
2
我不知道你的问题我有没有很好的答案。 这对我很有效,但我觉得你太胖了。 通过使用mavenrpm插件,我已经取得了相当大的成功 http://mojo.codehaus.org/rpm-maven-plugin/ 基本上是一个用于创建spec文件、布局源代码等的DSL。 好的一面是一个maven人工制品,哈德逊可以更容易地跟踪它。 我在maven构建中添加了一个小groovy脚本( http://docs.codehaus.org/display/GMAVEN/Executing+Groovy+Code )最后我需要自动更新承载构建的yum存储库,但是在您的情况下,我可能会在使用rpm插件调用make之前使用脚本。 老实说,我觉得上面的解决方案有点重,主要是因为在maven中编写脚本的冗长,但是它确实有效,而且对于我们这些了解maven的java开发人员来说,效果很好。 |
|
|
2
2
不管怎样,我有几个提示:
总之:通过Jenkins来构建RPM是可能的,这相当简单,因为困难的部分是制定一个干净的RPM规范。其他的一切都取决于您的需要,这些都可以通过一些脚本或Jenkins插件来解决。 |
|
|
3
2
我同意上面的观点-一旦你可以从任何目录创建一个RPM,你就可以编写构建过程的脚本,并直接把它放到Hudson中。
这会将生成过程的顶层目录设置为当前目录。
我也遇到了同样的问题,并在
|
|
|
5
1
你在hudson上用什么作为构建工具?制造? 您可以创建一个目录结构,rpm build将在Hudson作业的工作区中使用—这可以已经在Hudson所做的签出中,也可以由您的构建脚本单独创建。从这个目录,你可以创建你的RPM(使用一个从Hudson?)启动的外部进程。然后,您可以使用正常的Hudson配置设置将生成的rpm复制到artifacts目录。(哈德逊定义了许多 environment variables 您可以使用的-工作区位置是其中之一) |
|
|
6
1
Ant可以通过内置的RPM任务来构建RPM。 您可以通过CC任务(来自antcontrib)用Ant编译C源代码。 然后你可以使用哈德逊来构建和打包我们的软件。 |
|
|
7
1
有一次,我用一个定制的Scala插件替换了上面提到的maven dsl,部分原因是为了学习Scala。它确实满足了更多的需求。但现在,我只提倡使用 fpm在90%的rpm创建需求方面做得很好(deb等人也做过) |
|
|
8
0
下面是我们使用的Jenkins shell脚本:
(记入JT/JWT) |
|
|
9
0
在对许多博客文章和其他资源的信息进行了一些研究之后,我将这些信息合并到一个脚本中,这个脚本可以很容易地在jenkins中用于构建包: https://github.com/jhrcz/jenkins-rpm-builder .
|
|
|
velsim cowls · Access Stage导致工作流/管道插件 10 年前 |
|
|
fabs · Jenkins:让构建成功取决于测试 13 年前 |
|
|
aj_froz · 在Hudson CI中查找特定工作的工作空间 13 年前 |
|
|
Emmanuel · Hudson/Jenkins:在多个作业之间共享参数 13 年前 |