在Java应用程序的Concourse构建期间,我想:
master
分支mvn package
SNAPSHOT
pom.xml
版本
master
提交消息前缀[skip ci]
分支
我还没有找到推荐的处理git的方法,除了git-resource,它只能get
或put
个资源,但不会产生新的提交。
答案 0 :(得分:7)
您应该在任务中进行提交。
您可以通过创建将repo作为输入的任务来执行此操作,并将修改后的repo声明为输出。从输入克隆到输出后,切换到输出文件夹,进行更改并提交。
以下是pipeline.yml
的例子:
resources:
- name: some-repo
type: git
source:
uri: git@github.com: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}