2017-03-05 25 views
3

在Java應用程序中的廣場建設我想:如何在Concourse構建中提交對git的更改?

  1. 結帳的git master分支
  2. 運行mvn package
  3. 如果它是成功的:
    • 增量SNAPSHOT版本在Maven的pom.xml
    • 將其提交回master分支,使用[skip ci]提交消息前綴
    • 推動本地分行上游

我還沒有發現與處理的git除了git-resource的推薦方式,它只能getput資源,但不會產生新的提交。

+0

你應該看看[Maven的版本插件(http://maven.apache.org/maven-release/maven-release-plugin/) – Mureinik

回答

5

你應該在任務中進行提交。

您可以通過製作一個以回購作爲輸入的任務,並將修改後的回購作爲輸出進行聲明。從輸入到輸出克隆後,切換到輸出文件夾,進行更改並提交。

下面是一個例子pipeline.yml

resources: 
- name: some-repo 
    type: git 
    source: 
    uri: [email protected]:myorg/project 

jobs: 
- name: commit-and-push 
    plan: 
    - get: some-repo 
    - task: commit 
    config: 
     platform: linux 
     image_resource: 
     type: docker-image 
     source: 
      repository: concourse/buildroot 
      tag: git 

     inputs: 
     - name: some-repo 

     outputs: 
     - name: some-modified-repo 

     run: 
     path: /bin/bash 
     args: 
     - -c 
     - | 
      set -eux 

      git clone some-repo some-modified-repo 

      cd some-modified-repo 
      echo "new line" >> some-file.txt 

      git add . 

      git config --global user.name "YOUR NAME" 
      git config --global user.email "YOUR EMAIL ADDRESS" 

      git commit -m "Changed some-file.txt" 
    - put: some-repo 
    params: {repository: some-modified-repo}