我有一个简单的Jenkins构建,它从github下载我的项目,构建它并报告构建的状态。
我想配置Jenkins将生成的JAR文件发布到项目中的TARGET-SNAPSHOTS分支。
目前我的项目.gitignore的/ target / *
我正在查看GitPublisher,但这似乎推动了整个构建,而不仅仅是jar文件。
关于最佳方法的想法/如果可能的话?
由于
答案 0 :(得分:2)
我认为你有很多可能性。其中之一是运行构建后脚本。它可以写成shell。
简单的脚本:
find . -name "*.jar" -exec scp {} user@myhost.com:/path/for/build/${BUILD_TAG} \;
其他:
答案 1 :(得分:1)
由于您正在使用maven并且您说github下载部分是可接受的,您可以使用github下载插件 - https://github.com/github/maven-plugins。我使用它来将Riak java客户端部署到我们的下载部分作为构建的一部分。
在您的〜/ .m2 / settings.xml中,您需要:
<settings>
<profiles>
<profile>
<id>github</id>
<properties>
<github.global.userName>YourGithubUser</github.global.userName>
<github.global.password>YourGithubPass</github.global.password>
</properties>
</profile>
</profiles>
<activeProfiles>
<activeProfile>github</activeProfile>
</activeProfiles>
</settings>
然后在你的项目中.pom
之类的东西:
<profile>
<id>githubUpload</id>
<activation>
<property>
<name>github.downloads</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>com.github.github</groupId>
<artifactId>downloads-maven-plugin</artifactId>
<version>0.4</version>
<configuration>
<description>${project.version} release of ${project.name}</description>
<override>false</override>
<includeAttached>true</includeAttached>
</configuration>
<executions>
<execution>
<goals>
<goal>upload</goal>
</goals>
<phase>install</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
(我是在安装阶段的一部分 - 你可以这样做)
然后只需将-Dgithub.downloads=true
添加到您的maven构建 -
mvn install -Dgithub.downloads=true
插件的网页列出了包含/排除文件的所有选项等。