Woodpecker plugin to clone git repositories. For the usage information and a listing of the available options please take a look at the docs.
The docs are also available in docs.md in this repository.
Build the binary with the following command:
export GOOS=linux
export GOARCH=amd64
export CGO_ENABLED=0
export GO111MODULE=on
go build -v -a -tags netgo -o release/linux/amd64/plugin-gitBuild the Docker image with the following command:
docker buildx build \
--label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
--label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
--platform linux/amd64 --output type=docker \
--file docker/Dockerfile.multiarch --tag woodpeckerci/plugin-git .The platform linux/amd64 should be replaced by the correct platform.
This will build the image and load it into docker so the image can be used locally. More information on the output formats can be found in docker buildx doc.
Clone a commit:
docker run --rm \
-e CI_REPO_CLONE_URL=https://github.com/garyburd/redigo.git \
-e CI_WORKSPACE=/go/src/github.com/garyburd/redigo \
-e CI_PIPELINE_EVENT=push \
-e CI_COMMIT_SHA=d8dbe4d94f15fe89232e0402c6e8a0ddf21af3ab \
-e PLUGIN_REF=refs/heads/master \
woodpeckerci/plugin-gitClone a pull request:
docker run --rm \
-e CI_REPO_CLONE_URL=https://github.com/garyburd/redigo.git \
-e CI_WORKSPACE=/go/src/github.com/garyburd/redigo \
-e CI_PIPELINE_EVENT=pull_request \
-e CI_COMMIT_SHA=3b4642018d177bf5fecc5907e7f341a2b5c12b8a \
-e PLUGIN_REF=refs/pull/74/head \
woodpeckerci/plugin-gitClone a pull request and attempt merging it with the target branch:
docker run --rm \
-e CI_PIPELINE_EVENT=pull_request \
-e CI_REPO_CLONE_URL=https://codeberg.org/johanvdw/test-git-plugin.git \
-e CI_COMMIT_SHA=d02eaf69b920b19fd7b14ad3aee622dd97413fbc \
-e CI_COMMIT_TARGET_BRANCH=main \
-e PLUGIN_REF=refs/pull/1/head \
-e PLUGIN_MERGE_PULL_REQUEST=true \
-e PLUGIN_GIT_USERNAME=ci \
-e [email protected] \
release/plugin-gitClone a tag:
docker run --rm \
-e CI_REPO_CLONE_URL=https://github.com/garyburd/redigo.git \
-e CI_WORKSPACE=/go/src/github.com/garyburd/redigo \
-e CI_PIPELINE_EVENT=tag \
-e CI_COMMIT_SHA=3b4642018d177bf5fecc5907e7f341a2b5c12b8a \
-e PLUGIN_REF=refs/tags/74/head \
woodpeckerci/plugin-gitThe docker image can be build using --build-arg HOME=<custom home>.
This will create the directory for the custom home and set the custom home as the default value for the home plugin setting (see the plugin docs for more information about this setting).