Integrate your build system with Bitbucket Cloud

It is possible that your build system or vendor already integrates with Bitbucket Cloud. When already integrated, you can see the build status on each commit that triggers a build, as shown in the following image.

When you don't see a build status, you can integrate your builds on your own, as long as your build tool is able to run scripts. To integrate, add a script after the last step of your build that update your commits on Bitbucket.

The Python script below provides an example of what to add as your last build step. This script includes the following fields that either the tool updates based on environment variables or that you can enter manually in the script:

フィールド Updated... 説明
鍵 (キー) by build The key that distinguishes the build status from other statuses associated with the same commit. The script uses the example of BUILD_ID.
状態 by build or manually in script

An indication of the status of the commit. Because the script runs after the build, the status will be either SUCCESSFUL or FAILED.

Depending on your build system, you can either use environment variables to provide the state, or you can create two separate scripts (with the state already included) that run depending on the outcome of the build.

name by build The name of the build. The script uses the example of JOB_NAME.
URL by build

The URL to the page with details of the build. The script uses the example of BUILD_URL.

説明 by build or manually in script A description of the build. Depending on your build system, you can either use an environment variable to provide the description or add a description to the script before it runs. The script uses the example of The build passed.
所有者 manually in script

The account of the repository owner. The script uses the example of emmap1.

For more information about the api_url, see the statuses/build Resource.

repo_slug

manually in script

The repository name. The script uses the example of MyRepo.

For more information about the api_url, see the statuses/build Resource.

revision by build

The SHA1 value for the commit with the build status. The script uses the example of GIT_COMMIT.

For more information about the api_url, see the statuses/build Resource.

auth manually in script Your authentication information. You can enter your username and password. However, if your repository is part of a team, you can still enter your username and password, or you can enter your team name and API key. The script users the example of auth_user and auth_password.
Example script for the end of your build
#!/usr/bin/env python

import os
import requests

# Use environment variables that your CI server provides to the key, name,
# and url parameters, as well as commit hash. (The values below are used by
# Jenkins.)
data = {
    'key': os.getenv('BUILD_ID'),
    'state': 'SUCCESSFUL',  # or 'FAILED' for a script that runs when the build fails
    'name': os.getenv('JOB_NAME'),
    'url': os.getenv('BUILD_URL'),
    'description': 'The build passed.'
}

# Construct the URL with the API endpoint where the commit status should be
# posted (provide the appropriate owner and slug for your repo).
api_url = ('https://api.bitbucket.org/2.0/repositories/'
           '%(owner)s/%(repo_slug)s/commit/%(revision)s/statuses/build'
           % {'owner': 'emmap1',
              'repo_slug': 'MyRepo',
              'revision': os.getenv('GIT_COMMIT')})

# Post the status to Bitbucket. (Include valid credentials here for basic auth.
# You could also use team name and API key.)
requests.post(api_url, auth=('auth_user', 'auth_password'), json=data)
最終更新日: 2015 年 12 月 1 日

この翻訳に満足しましたか?

はい
いいえ
この記事についてのフィードバックを送信する

お探しの情報が見つかりませんか?

コミュニティへの質問

Powered by Confluence and Scroll Viewport.