This is the documentation for Bamboo 5.8. View this page for the

Unknown macro: {spacejump}

of Bamboo, or visit the latest Bamboo documentation.

Variables can be used to make values available when building plans in Bamboo.

  • ビルド固有の変数は、ビルド時に Bamboo によって動的に評価されます。ビルド固有の変数のソースは、Bamboo プロパティでも既定のプラグインのいずれかでもかまいません (有効になっている場合)。
  • デプロイ変数は、プロジェクトのデプロイ時に使用できます。 
  • システム変数は Bamboo インスタンス全体にも適用され、同じ名前のシステム変数または環境変数から値を継承します。
  • Global variables are defined across your entire Bamboo instance, and have the same (static) value for every plan that is built by Bamboo. See Defining global variables.
  • Plan variables are similar to global variables, but are defined for specific plans. Plan variables override global variables with the same name. You can also override a plan variable for a build if you trigger the build manually. See Defining plan variables.

変数を利用する

Variables can be used in all fields of a task or deployment, with the exception of password fields. Use the following format when referencing a variable:

${bamboo.variableName}

You can override a plan variable for a build, if you trigger the build manually. See Triggering a plan build manually.

(warning) You cannot reference a variable from another variable in Bamboo, i.e. "double de-referencing". See this knowledge base article for more information.

カスタム変数を定義する

上記と同様の形式を使用して独自のカスタム変数を定義できます。ただし、Bamboo ですでに使用されている変数名を作成することはできません。

Bamboo で独自の変数を定義する方法については、次の内容をご参照ください。

ビルド固有の変数

次のビルド固有の変数が初期設定で用意されています。

ビルド固有の変数

説明

bamboo.buildKey

現在のジョブのジョブ キー、"プロジェクト - 計画 - ジョブ" の形式、例: BAM-MAIN-JOBX

bamboo.planKey現在の計画のキー、"プロジェクト - 計画" の形式、例: BAM-MAIN
bamboo.shortPlanKey現在の計画の短いキー (プロジェクト部分なし)、例: MAIN
bamboo.shortJobKey現在のジョブの短いキー (プロジェクトと計画の部分なし)、例: JOBX

bamboo.buildResultKey

The result key when this job executes, in the form PROJECT-PLAN-JOB-BUILD e.g. BAM-BOO-JOB1-8, where '8' is the build number. For deployment projects this variable will not have the JOB component e.g. PROJ-TP-6.

bamboo.buildResultsUrl

または

bamboo.resultsUrl

ジョブの実行終了後の Bamboo 内での結果 URL

bamboo.buildNumber

Bamboo のビルド番号、例: 123

bamboo.buildPlanName

Bamboo のジョブ名、例: Some Project name - Some plan name - Some job name

bamboo.planName現在の計画の名前、例: Some project name - Some plan name
bamboo.shortPlanName現在の計画の名前 (プロジェクトの部分なし)、例: Some plan name
bamboo.shortJobName現在のジョブの名前 (プロジェクトと計画の部分なし)、例: Some job name

bamboo.buildTimeStamp

ビルドが開始された時刻、ISO 8601 形式、例: 2010-01-01T01:00:00.000+01:00

bamboo.agentIdデプロイメントが実行されるエージェントの ID
bamboo.agentWorkingDirectoryエージェントの作業ディレクトリへのパス。これは Bamboo の作業ディレクトリとは異なります。

bamboo.working.directory

ビルドが実行されている作業ディレクトリ

bamboo.ManualBuildTriggerReason.userName手動ビルドをトリガーしたユーザー
一般的なリポジトリ変数 
bamboo.planRepository.<position>.branchNameリポジトリ内のブランチの名前 (使用された VCS の可用性による)、例: default
bamboo.planRepository.<position>.name計画のリポジトリに表示されているリポジトリの名前、例: Mercurial
bamboo.planRepository.<position>.revisionThe revision use to build this release. Format depends on the VCS used.
bamboo.planRepository.<position>.previousrevision前のリビジョン番号 (初期ビルドなど、存在しない場合がある)
bamboo.planRepository.<position>.typeリポジトリのタイプ、リポジトリ プラグインで定義されているとおり、例: hg、svn、git
Subversion 

bamboo.planRepository.<position>.revision.number

リビジョン番号

bamboo.planRepository.<position>.lastchange.revision.number

最後に変更されたリビジョン番号

bamboo.planRepository.<position>.username

リポジトリ認証に使用されるユーザー名

bamboo.planRepository.<position>.repositoryUrl

The repository URL.

CVS 

bamboo.planRepository.<position>.last.update.time

最終更新日のタイムスタンプ

bamboo.planRepository.<position>.last.update.time.label

The last updated timestamp to be used as a label for post build result labelling. The spaces in the cvs version string are replaced with '_'.

perforce 

bamboo.planRepository.<position>.revision.number

変更セット番号

bamboo.planRepository.<position>.username

リポジトリ認証に使用されるユーザー名

bamboo.planRepository.<position>.port

リポジトリ通信に使用されるポート

bamboo.planRepository.<position>.client

リポジトリ通信に使用されるクライアント

Git 
bamboo.planRepository.<position>.branchブランチ
bamboo.planRepository.<position>.repositoryUrlThe repository URL
Mercurial 

bamboo.planRepository.<position>.repositoryUrl

The repository URL

bamboo.planRepository.<position>.branch

ブランチ

bamboo.planRepository.<position>.username

リポジトリ認証に使用されるユーザー名

  • システム変数は Bamboo インスタンス全体にも適用され、同じ名前のシステム変数または環境変数から値を継承します。
  • 上記の表の変数名で、<position> は計画のリポジトリ リストにおけるリポジトリの位置を指定するオプションのパラメーターです。省略すると、リストの最初のリポジトリが使用されます。
  • Third-party repository plugins can expose their own variables.

ビルド依存関係の変数

次のビルド依存関係の変数も使用できます。

ビルド固有の変数

説明

bamboo.dependency.parent.#

トリガーとなる親ビルドのビルド キーを子ビルドがクエリできるようにします。この場合、# はビルド ツリー内の位置 (0 は最上部、1 はその次など) を表します。${bamboo.dependency.parent.0} 変数は、子計画のメタデータ タブで確認できます。

dependency.parent.total親ビルドの総数

デプロイ変数

プロジェクトのデプロイ時に使用できる、複数の標準予約済み変数が Bamboo によって管理されています。 

名前が繰り返される場合、次のリストで後にある変数が前の変数をオーバーライドします。

  • グローバル変数
  • 以下に定義されているリリース変数
  • 環境レベルで定義されたユーザー変数
  • 次の表の自動生成変数
変数説明
bamboo.agentIdThe id of the agent that the deployment is executed on.
bamboo.agentWorkingDirectoryエージェントの作業ディレクトリへのパス。これは Bamboo の作業ディレクトリとは異なります。
bamboo.build.working.directoryBamboo の作業ディレクトリへのパスです。これはビルド計画とデプロイ プロジェクトの両方で使用されます。
bamboo.deploy.environmentリリースがデプロイされる環境の名前。
bamboo.deploy.projectデプロイ プロジェクトの名前。
bamboo.deploy.rollbackデプロイされるリリースが置き換えられるリリースよりも古い場合に当てはまります。

bamboo.deploy.release

bamboo.deploy.version

デプロイされているリリースの名前。「.release」と「.version」のいずれかを使用できます。どちらもデプロイされるリリースの名前を返します。

bamboo.deploy.release.previous

bamboo.deploy.version.previous

置き換えられるリリースの名前 (利用できる場合)。.release と.version のいずれかを使用できます。どちらも置き換えられるリリースの名前を返します。
bamboo.resultsUrlThe URL to the screen in Bamboo that dispays build results.

You can generate variables of your own, using a similar format, however you cannot create a variable that is already in use by Bamboo. See Defining deployment environment variables for more information.

変数をリリースする

Bamboo では、デプロイ リリースに変数の次のタイプを使用できるようにしています。

  • Snapshots of values for global variables.
  • Snapshots of values for plan variables.
  • Snapshots of values of repository variables.
  • 次の表に記載されている自動生成リリース変数
変数説明
bamboo.buildNumberThe build result from which the release is created.
bamboo.buildResultKeyリリースが作成されたビルド結果のキー、例: KUNG-FOO-JOB1-35
bamboo.planKeyリリースに関連する計画のキー、例: KUNG-FOO
bamboo.planNameリリースに関連する計画の名前、例: Kung - Foo
bamboo.shortPlanKeyリリースに関連する計画の短いキー (プロジェクト部分なし)、例: MAIN
bamboo.shortPlanName計画の名前 (プロジェクトの部分なし)、例: Some plan name

上記の表にある変数の一部は、実際にビルド計画に関連する変数であることにご注意ください。

System variables

すべてのシステム変数に使用される形式は次のとおりです。

${system.<variable>}

たとえば、システム変数 MYPATH=C:\MyPath; がある場合、システム変数と同じ値を継承する Bamboo システム変数 system.MYPATH を使用できます。

(info) Bamboo の古いバージョンでは、(スクリプト タスクの) "環境変数" フィールドで "PATH" を使用しても Windows の PATH 変数は設定されませんが、"Path" を使用すると cmd シェルで Path と PATH が設定されます。

bash で変数を使用する

Bamboo 変数は bash シェル変数としてエクスポートされます。すべてのフル ストップ (ピリオド) はアンダースコアに変換されます。たとえば、変数 bamboo.my.variable は、bash では $bamboo_my_variable になります。これはファイル スクリプト タスクに関連しています (インライン スクリプト タスクではありません)。

JIRA applications variables

Note that these variables can be accessed from a Bamboo build only when that build was triggered by releasing a version in a JIRA application.

Jira 変数説明
${bamboo.jira.baseUrl}The URL of your JIRA application server.
${bamboo.jira.projectKey}The key of the triggering the JIRA application project.
${bamboo.jira.projectName}The name of the triggering JIRA application project.
${bamboo.jira.version}The release version of the triggering JIRA application project.
${bamboo.jira.username}リリース ビルドをトリガーしたユーザーのユーザー名

Maven の例

たとえば、Maven 2 バージョンを Bamboo で決定する場合、Maven 2 pom.xml が次のようになる可能性があります。

...
<groupId>com.atlassian.boo</groupId>
<artifactId>boo-test</artifactId>
<packaging>jar</packaging>
<version>1.1.${bambooBuildNumber}-SNAPSHOT</version>
...

その後、ビルド計画の "目標" フィールドに次を指定できます。

clean package -DbambooBuildNumber=${bamboo.buildNumber}

コマンドが実行されると、Bamboo は buildNumber を実際の番号 (1102 など) に置き換えます。この番号は、基盤となる Maven ビルドに渡されて使用されます。その後、コマンドは boo-test-1.1.1102-SNAPSHOT.jar ような jar を生成します。

Ant の例

その後、ビルド計画の "ターゲット" フィールドに次を指定できます。

-f build.xml -DbambooBuildNumber=${bamboo.buildNumber}

コマンドが実行されると、Bamboo は buildNumber を実際の番号 (1102 など) に置き換えます。この番号は、基盤となる Ant ビルドに渡されて使用されます。

機能を変数として指定する

グローバル変数と同じ方法で使用する機能を指定することもできます。

機能の形式は次のようにする必要があります。

${bamboo.capability.<capability_key>}

例:

  • カスタム

    ${bamboo.capability.<capability_key>}
  • JDK

    ${bamboo.capability.system.jdk.<jdk_label>}
  • ビルダー

    ${bamboo.capability.system.builder.<builder_type>.<builder_label>}
    e.g. ${bamboo.capability.system.builder.maven.Maven1}
  • perforce

    ${bamboo.capability.system.p4Executable}

機能をクリックすると、特定の機能キーが URL に含まれます。

URL のスペース文字は "+" の文字に置き換わります。変数として使用する場合は、スペース文字を含む機能ラベルを使用しないことをお勧めします。スペース文字の考えられる解決策は、「${}」記号でフォーマットすることですが、すべての場合にうまくいくわけではありません。

機能を使用する

Global and Build-Specific Variables can be used in a specific fields of your build plan, as specified above. For capabilities,

  • システム機能は、こうしたフィールドすべてで使用できます (つまりグローバルとビルド固有)。
  • エージェント機能 (つまりエージェント固有と共有/サーバー機能) は、ビルド固有フィールドでのみ使用できます (つまりリポジトリ URLCVS ルート、またはブランチ名に使用できません)。

例:

システム変数を指定しようとしているが、エージェントごとに異なる値を設定する場合は、次の手順を実行してください。

  • [ビルダー] タブのシステム環境変数フィールドとして次を設定します。

    ${bamboo.capability.thatsystemvariable}
  • システム環境変数を各エージェントのカスタム機能として指定し、必要に応じて機能を異なる値に設定します。

廃止された変数

次の変数は廃止され、今後の Bamboo リリースでは削除されます。

一般的なリポジトリ変数 

bamboo.repository.revision.number

リビジョン番号

bamboo.repository.branch.nameリポジトリ ブランチ名 (Bamboo バージョン 4.2 またはそれ以降)

bamboo.repository.previous.revision.number

前のリビジョン番号 (初期ビルドなどでは存在しない場合がある)

Subversion 

bamboo.custom.svn.revision.number

リビジョン番号

bamboo.custom.svn.lastchange.revision.number

最後に変更されたリビジョン番号

bamboo.custom.svn.username

リポジトリ認証に使用されるユーザー名

bamboo.repository.svn.repositoryUrl

The repository URL.

CVS 

bamboo.custom.cvs.last.update.time

最終更新日のタイムスタンプ

bamboo.custom.cvs.last.update.time.label

The last updated timestamp to be used as a label for post build result labelling. The spaces in the CVS version string are replaced with '_'.

perforce 

bamboo.custom.p4.revision.number

変更セット番号

bamboo.custom.p4.username

リポジトリ認証に使用されるユーザー名

bamboo.custom.p4.port

リポジトリ通信に使用されるポート

bamboo.custom.p4.client

リポジトリ通信に使用されるクライアント

Git 
bamboo.repository.git.branchブランチ
bamboo.repository.git.repositoryUrlThe repository URL.
Mercurial 

bamboo.repository.hg.repositoryUrl

The repository URL.

bamboo.repository.hg.branch

ブランチ

bamboo.repository.hg.username

リポジトリ認証に使用されるユーザー名