Bicep 関数

この記事では、Bicep ファイルで使用できるすべての関数について説明します。 カスタム関数を定義するには、「ユーザー定義関数」を参照してください。 Bicep ファイルのセクションの説明については、「Bicep ファイルの構造と構文について」を参照してください。

ほとんどの関数は、リソース グループ、サブスクリプション、管理グループ、またはテナントにデプロイされた場合に、同じように動作します。 いくつかの関数は、すべてのスコープでは使用できません。 これらは以下の一覧に記載されています。

関数の名前空間

Bicep 関数はすべて、azsys の 2 つの名前空間内に含まれています。 通常、この関数を使用するときに名前空間を指定する必要はありません。 名前空間は、関数名が Bicep ファイルで定義されている別の項目と同じである場合にのみ指定します。 たとえば、range という名前のパラメーターを作成する場合は、sys 名前空間を追加して range 関数を区別する必要があります。

// Parameter contains the same name as a function
param range int

// Must use sys namespace to call the function.
// The second use of range refers to the parameter.
output result array = sys.range(1, range)

az 名前空間には、Azure のデプロイに固有の関数が含まれています。 sys 名前空間には、値を作成するために使用される関数が含まれています。 sys 名前空間にはまた、パラメーターとリソース ループのデコレーターも含まれています。 この記事では、これらの名前空間を記載しています。

すべての関数

Bicep では、データ型の警告に関する問題の解決に役立つ任意の関数を使用できます。 この関数は、sys 名前空間にあります。

配列関数

次の関数は、配列を操作するために使用できます。 これらの関数はすべて、sys 名前空間にあります。

CIDR 関数

次の関数は、CIDR を操作するために使用できます。 これらの関数はすべて、sys 名前空間にあります。

データ関数

次の関数は、日付を操作するために使用できます。 これらの関数はすべて、sys 名前空間にあります。

デプロイの値関数

次の関数は、デプロイに関連した値を取得するために使用できます。 これらの関数はすべて、az 名前空間にあります。

ファイル関数

次の関数は、外部ファイルから Bicep ファイルにコンテンツを読み込むために使用できます。 これらの関数はすべて、sys 名前空間にあります。

ラムダ関数

次の関数は、ラムダ式を操作するために使用できます。 これらの関数はすべて、sys 名前空間にあります。

論理関数

次の関数は、論理条件を操作するために使用できます。 この関数は、sys 名前空間にあります。

数値関数

次の関数は、整数を操作するために使用できます。 これらの関数はすべて、sys 名前空間にあります。

オブジェクト関数

次の関数は、オブジェクトを操作するために使用できます。 これらの関数はすべて、sys 名前空間にあります。

パラメータファイルの関数

Bicep パラメーター ファイルでは、次の関数を使用できます。 これらの関数はすべて、sys 名前空間にあります。

リソース関数

次の関数は、リソース値を取得するために使用できます。 これらの関数のほとんどは、az 名前空間にあります。 リスト関数と getSecret 関数は、リソースの種類で直接呼び出されるため、名前空間修飾子は含まれていません。

スコープ関数

次の関数は、スコープの値を取得するために使用できます。 これらの関数はすべて、az 名前空間にあります。

  • managementGroup
  • resourceGroup - リソース グループへのデプロイでのみ使用できます。
  • subscription - リソース グループまたはサブスクリプションへのデプロイでのみ使用できます。
  • tenant

文字列関数

Bicep には、文字列を操作するための次の関数が用意されています。 これらの関数はすべて、sys 名前空間にあります。

次のステップ