Tracks changes for all git branches for pull requests.
This resource is meant to be used with version: every
.
Inspirited by git-branch-heads-resourse
Add the following resource_types
entry to your pipeline:
---
resource_types:
- name: git-bitbucket-pr
type: docker-image
source: {repository: zarplata/concourse-git-bitbucket-pr}
base_url
: Required. base URL of the bitbucket server, without a trailing slash. For example:http://bitbucket.local
username
: Required. username of the user which have access to repository.password
: Required. password of that userproject
: Required. project for trackingrepository
: Required. repository for trackinglimit
: Optional. limit of tracked pull requestsdefault: 100
.git
: Required. configuration is based on the Git resource. Thebranch
configuration from the original resource is ignored.bitbucket_type
: Optional.cloud
for BitBucket Cloud orserver
for a self-hosted BitBucket Server.default: server
dir
: Optional. set to name of the resource if resource name is different than repository name
resources:
- name: my-repo-with-pull-requests
type: git-bitbucket-pr
source:
url: http://bitbucket.local
username: some-username
password: some-password
project: zarplata
repository: concourse-git-bitbucket-pr-resource
git:
uri: https://github.com/zarplata/concourse-git-bitbucket-pr-resource
private_key: {{git-repo-key}}
jobs:
- name: my build
plan:
- get: my-repo-with-pull-requests
trigger: true
version: every
- task: unit test
...
inputs:
- name: my-repo-with-pull-requests
run:
...
on_failure:
put: my-repo-with-pull-requests
params:
state: FAILED
name: "unit test"
url: "http://acme.com/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME"
on_success:
put: my-repo-with-pull-requests
params:
state: SUCCESSFUL
name: "unit test"
url: "http://acme.com/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME"
The current open pull requests fetched from Bitbucket server for given project and repository. Update time are compared to the last fetched pull request.
If any pull request are new or updated or removed, a new version is emitted.
This resource delegates entirely to the in
of the original Git resource, by
specifying source.branch
as the branch that changed, and version.ref
as the
commit on the branch.
All params
and source
configuration of the original resource will be
respected.
This updates the build status of the task.