Bitbucket is getting a new navigation

We’re rolling out these changes, so the documentation may not match your experience in the Bitbucket Cloud app. Read about the new Bitbucket navigation

式言語

式言語を使用して条件式を構築し、パイプラインの柔軟性を高めます。

このドキュメントでは、パイプライン構成内のランタイム コンテキストを評価するために設計されたコンパクトで安全なブール式言語について説明します。

この言語で記述された式は true または false のいずれかに評価されます。この言語は、変数、リテラル、比較演算子、論理演算、式のグループ化、および一連の単純な関数の使用をサポートしており、柔軟で正確な条件評価を可能にします。

式言語はどこで使われますか?

式言語は現在、次の用途で使用されています。

  • (var_1 > 100 && var_1 <= 200) || var_2 == "ok" && var_3 == true

  • glob(var_1, "feature/*") && var_2 != "ok"

式フォーム

  • ブール値 (true または false) に評価される必要があります。

  • ブール値以外の結果 (例: "hello world") は無効です。

リテラル

  • 文字列: "text"

  • 数値: 423.14

  • ブール値: truefalse

  • null: サポートされていません。必要に応じて文字列 "null" を使用してください (たとえば、value == "null")。

Variables

  • 変数を名前で直接参照する ($ プレフィックスなし)。

演算子

  • == — 等式

  • != — 不等式

  • && — 論理 AND

  • || — 論理 OR

  • ! — 論理 NOT

  • () グループ化

  • >, >=, <, <= 比較演算子

関数

glob() 関数により、トリガー条件での柔軟なパターン マッチングが可能になり、ワイルドカードと中括弧の展開を使用して、ブランチ、タグ、またはその他の変数を一致させることができます。値がパターンと一致する場合は true を返し、それ以外の場合は false を返します。

構文とパラメーター

構文: glob(value, "pattern")

  • value: テストする変数 (例えば、BITBUCKET_BRANCHBITBUCKET_TAG)

  • pattern: 一致する glob パターン (引用符で囲む必要があります。*?、などのワイルドカードおよび、{} などの中括弧拡張をサポートします。パターンでは大文字と小文字が区別されます)

動作

The glob() function follows the same pattern-matching rules as using glob patterns on the Pipelines yaml file.

条件式では glob() と論理演算子 (&&||!) を組み合わせて高度な一致を行うことができます。

例:

  • フィーチャー ブランチとの一致:
    glob(BITBUCKET_BRANCH, "feature/*")
    「feature/」で始まるすべてのブランチに一致します。

  • バージョン タグとの一致:
    glob(BITBUCKET_TAG, "v1.*")
    「v1.0」、「v1.1」などのタグに一致します

  • 中括弧拡張を使用した複数パターンとの一致:
    glob(BITBUCKET_BRANCH, "{main,develop,staging}")
    ブランチが「main」、「develop」、「staging」のいずれかである場合に一致します 。

  • glob ** によるすべてとの一致:
    glob(BITBUCKET_BRANCH, "**")
    任意のブランチ名と一致します

さらにヘルプが必要ですか?

アトラシアン コミュニティをご利用ください。