Bitbucket ダウンロードにビルド アーティファクトをデプロイする

Deploying the artifacts or output produced by your Bitbucket Pipelines build to Bitbucket's Downloads area is simple with Bitbucket app passwords and the Bitbucket REST API.

See also Test with databases in Bitbucket Pipelines.

ステップ 1: リポジトリ所有者向けにアプリ パスワードを作成する

Log in to Bitbucket as the repository owner (also the user who will upload the files) and go to Bitbucket Settings > App Passwords.

リポジトリへの書き込み権限を持つアプリ パスワードを新しく作成します。生成されたパスワードがポップアップで表示されるのでそれを記録します。パスワードの名前はユーザーの識別用にのみ使われるため、「Pipelines」などの任意の名前を設定できます。

次のステップでは 2 つの値を使用します。

パラメーター
<username> リポジトリを所有かつアーティファクトをアップロードするユーザーの Bitbucket ユーザー名
<password> Bitbucket が生成したアプリ パスワード

ステップ 2: 認証トークンで Pipelines 環境変数を作成する

Pipelines 設定で新しくセキュアな環境変数を定義します。

  • パラメーター名: BB_AUTH_STRING
  • パラメーターの値: <username>:<password> (ステップ 1 の値を使用)

You can define this environment variable either in the repository settings, or in the settings for the account that owns the repository.

The example below shows the settings for an individual account environment variable, where the repository is owned by an individual. (Note that in the case where a team owns the repository, you must configure environment variables in the team settings for them to be visible in Pipelines.)

Step 3: Deploy your artifacts using curl and the Bitbucket REST API

With the environment variable and app password in place, you can now use curl in your build script to deploy artifacts to Bitbucket via the REST API:

curl -X POST "https://${BB_AUTH_STRING}@api.bitbucket.org/2.0/repositories/${BITBUCKET_REPO_OWNER}/${BITBUCKET_REPO_SLUG}/downloads" --form files=@"target/output.jar"


Below is a simple example from a Java project built with Maven. You should update the "target/output.jar" file name and other details to match your project. If you'd like to get really fancy, you could use environment variables like BITBUCKET_BUILD_NUMBER to create a unique file name each time.

bitbucket-pipelines.yml
image: maven:3.3.3

pipelines:
  default:
    - step:
        script:
          - mvn -B clean install
          - curl -X POST --user "${BB_AUTH_STRING}" "https://api.bitbucket.org/2.0/repositories/${BITBUCKET_REPO_OWNER}/${BITBUCKET_REPO_SLUG}/downloads" --form files=@"target/output.jar"

オンライン バリデーターを使用して bitbucket-pipelines.yml ファイルをチェックすることができます。

最終更新日 2018 年 5 月 3 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.