2012-03-12 44 views
0

我有一個簡單的Jenkins構建,它從github上拉下我的項目,構建它並報告構建的狀態。Jenkins構建成功時將Jith推送到github

我想配置Jenkins將生成的JAR文件發佈到我項目中的TARGET-SNAPSHOTS分支。

目前我的項目的.gitignore的/目標/ *

我看着GitPublisher但這似乎推動整個構建出來的,而不是僅僅的jar文件。

有關如何做到這一點的最佳方法的思考/如果可能的話?

謝謝

+0

您正在使用Maven來構建你的項目? – 2012-03-12 20:45:29

+0

您是否想要將文件添加到現有的回購站並推送更改或將文件添加到GitHub的下載部分? – 2012-03-12 23:30:03

+0

@brian - 是的 - 我正在使用maven來構建我的項目。 – empire29 2012-03-15 02:09:02

回答

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

該插件的網頁列出了包括/排除文件中的所有選項等