Skip to content

xebialabs-community/xlr-bitbucket-plugin

Repository files navigation

XLR Bitbucket plugin

Build Status Codacy Badge Code Climate License: MIT Github All Releases

The XLR Bitbucket plugin is deprecated now as the plugin is insourced to Digital.ai organization. The plugin is available on https://dist.xebialabs.com/customer/xl-release/plugins/xlr-bitbucket-plugin

This plugin offers an interface from XL Release to Atlassian Stash (now Bitbucket Server) and Bitbucket Cloud API.

IMPORTANT

  • Use Stash Connection and Stash Tasks if you're using an on-prem hosted Bitbucket Server. Stash is now called Bitbucket Server.
  • Use Bitbucket Connection and Bitbucket Tasks if you're using Bitbucket Cloud.
  • All Stash/Bitbucket Server tasks are based on api /rest/api/1.0/ prefix.
  • All Bitbucket Cloud tasks are based on api /2.0/ prefix.

Development

  • Start XLR: ./gradlew runDockerCompose

Type definitions

Commit Pull Triggers

  • bitbucket.CommitTrigger : This trigger can be used to poll Bitbucket cloud for triggering releases on code commit.
  • stash.CommitTrigger : This trigger can be used to poll Stash for triggering releases on code commit.

Webhook (Push)

  • Stash Push Webhook http://<xlr server:port>/api/extension/stash/push_webhook?template=<template name> : This can be used to push Commit notifications across branches in a repository. Requires Web POST Hooks Plugin.
  • Stash Pull Request Webhook http://<xlr server:port>/api/extension/stash/pr_webhook?template=<template name> : This can be used to push Pull Request notifications. Requires Pull Request Notifier Plugin.
  • Bitbucket Push Webhook http://<xlr server:port>/api/extension/bitbucket/push_webhook?template=<template name> : This can be used to push Commit notifications across branches in a repository.

Bitbucket Tasks

  • bitbucket.CreatePullRequest : This task helps to create a pull request.
  • bitbucket.MergePullRequest : This task helps to Merge a pull request.
  • bitbucket.WaitForMerge : This task waits and polls bitbucket to check the status of a Pull request Merge Status.
  • bitbucket.DownloadCode : This task allows to export a code zip file that can be downloaded to a specified folder on XL Release server locally for a provided branch in repository.

Stash Tasks

  • stash.CreatePullRequest : This task helps to create a pull request.

  • stash.MergePullRequest : This task helps to Merge a pull request.

  • stash.DeclinePullRequest : This task can be used to Decline a pull request.

  • stash.WaitForMerge : This task waits and polls stash to check the status of a Pull request Merge Status.

  • stash.DownloadCode : This task allows to export a code zip file that can be downloaded to a specified folder on XL Release server locally for a provided branch in repository. Requires Bitbucket Server Archive plugin.

  • stash.searchFileContent : This task allows to search a file's content in a repository/branch using a provided pattern and return group0 and group1 as results. E.g.,

     version[ ]*=[ ]*(\d+)
    
  • stash.DeleteBranch : This task allows to delete a branch.

  • stash.TagRelease : This task adds a tag to a branch.

Commit Trigger Usage

  • Stash commit trigger configuration

Bitbucket Tasks Usage

  • Setup the server configuration

  • Create pull request

  • Merge pull request

  • Wait for merge

  • Download Code

Stash Tasks Usage

  • Setup the server configuration

  • Create pull request

  • Merge pull request

  • Wait for merge

  • Decline pull request

  • Delete branch

  • Search file content

  • Download Code

  • Get Pull Request

  • Tag Release

  • Query Commits

  • Stash Dashboard

References