Create stack

Method URI Description
POST /v1/{tenant_id}/stacks スタックを作成します。

Normal response codes: 201

Error response codes: badRequest (400), unauthorized (401), conflict (409), internalServerError (500)

Request

注意:
template_urlで指定するテンプレートファイルを格納したコンテナの読み出しACLを全許可".r:*"に設定する必要があります。

下表は、スタック作成リクエストのURIパラメーターの一覧です。

Parameter Style Type Required Description
tenant_id URI String Yes プロジェクトID
stack_name plain String Yes 作成するスタックの名前です。半角英数字、アンダースコア(_)、ハイフン(-)、ピリオド(.)で構成される先頭英字の文字列を指定します。最大長は255文字です。256文字目以降は無視されます。
template_url plain String No テンプレートのURLです。 template パラメーターを指定した場合は、このパラメーターは無視されます。

template_url または template パラメーターのどちらかを指定してください。

template plain String No テンプレートの文字列です。リクエストボディのJSON形式が正しくなるように、必要に応じてテンプレートに含まれる文字をエスケープして指定します。例えば、ダブルクォーテーション " を \" に、改行を \n に置換して指定します。 templete_url パラメーターと両方を指定した場合は、このパラメーターが優先されます。

template_url または template パラメーターのどちらかを指定してください。

environment plain JSON No テンプレートで定義しているリソースタイプを別のリソースタイプに置換します。
files plain JSON No ファイル名とファイル内容のマップです。テンプレートで組み込み関数 get_file を使用する場合に指定します。リクエストボディのJSON形式が正しくなるように、必要に応じてファイル内容に含まれる文字をエスケープして指定します。例えば、ダブルクォーテーション " を \" に、改行を \n に置換して指定します。
parameters plain object No テンプレートに渡す入力パラメーターの名前と値のペアです。
timeout_mins plain Number No タイムアウト値です。単位は分です。省略したときの値は60です。
disable_rollback plain Boolean No スタック作成に失敗したときに、スタックに含まれる作成済みのリソースを削除する場合に false を指定します。省略したときの値は true です。

パラメーターの値 true でスタック作成を実行後、途中でリソース作成に失敗した場合、スタックおよび処理が失敗するまでに作成されたリソースは削除されずに残ります。このとき、スタックから見たリソースのステータスが CREATE_FAILED になっていても、リソースの実体が作成されている場合があります。作成されたリソースの情報を参照するには、リソースに対応するサービスのAPIを使います。

Example. Create stack: JSON request


{
	"stack_name": "{stack_name}",
	"template_url": "{template_url}",
	"parameters": {
		"param_name-1": "param_value-1", "param_name-2": "param_value-2"
	},
	"timeout_mins":  "{timeout_mins}"
}       
     

Response

Example. Create stack: JSON response


{
	"stack": {
		"id":     "3095aefc-09fb-4bc7-b1f0-f21a304e864c", 
		"links": [
			{
				"href": "http://192.168.123.200:8004/v1/ eb1c63a4f77141548385f113a28f0f52/stacks/simple_stack/3095aefc-09fb-4bc7-b1f0- f21a304e864c",
				"rel":  "self"
			}
		]
	}
}       
     

注意:
  • セキュリティグループルールのQuota上限の状態で、セキュリティグループルールを記載したテンプレートでCreate Stackを実行すると、セキュリティグループルールが設定されないセキュリティグループを含むStackが作成されます。

    この状態からセキュリティグループルールを追加する場合は、セキュリティグループルールをQuotaで制限されている数より少なくなるまで削除してから、操作(「APIリファレンス(Network編)」-「ネットワーク」-「ネットワークアダプタ」-「Create security group rule」)を実施してください。

  • 外部ネットに接続される仮想ルータを作成する場合は、仮想ルータを作成するスタックを作成後に、外部ネットに接続されるようにプロパティを変更後、Update Stackでスタックを更新してください。