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

Bitbucket のアプリ パスワードと Bitbucket REST API を使用することで、Bitbucket Pipelines ビルドが生成されたアーティファクトまたは出力を Bitbucket のダウンロード領域にデプロイできます。

Bitbucket Pipelines でデータベースを使用してテストする」も参照してください。

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

リポジトリの所有者、かつファイルをアップロードするユーザーとして Bitbucket にログインし、[Bitbucket 設定] > [アプリ パスワード] に移動します。

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

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

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

Step 2: Create a Pipelines variable with the authentication token

Define a new secure variable in your Pipelines settings:

  • Parameter name: BB_AUTH_STRING
  • Parameter value: <username>:<password> (using the values from step 1)

You can define this variable for a specific deployment environment, 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 variable, where the repository is owned by an individual. (Note that in the case where a team owns the repository, you must configure variables in the team settings for them to be visible in Pipelines.)

ステップ 3: curl および Bitbucket REST API を使用したアーティファクトのデプロイ

With the 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 default 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 年 11 月 26 日

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

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