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

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

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

この変数は、リポジトリ設定、またはリポジトリを所有するアカウントの設定で、特定の環境変数に対して定義できます。

以下の例は、リポジトリを個人が所有している場合の個人アカウントでの変数の設定を示します (リポジトリをチームが所有している場合、変数を Pipelines で参照できるようにするにはチーム設定で設定する必要があります)。

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

変数とアプリ パスワードを設定したら、ビルド スクリプトで curl を使用し、REST API を介して Bitbucket にアーティファクトをデプロイできます。

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"


以下は、Maven で構築した Java プロジェクトの簡単な例です。プロジェクトに一致するよう、"target/output.jar" のファイル名と他の詳細情報を更新する必要があります。既定の変数 (BITBUCKET_BUILD_NUMBER など) を使用して毎回一意のファイル名を作成することもできます。

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.