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でスタックを更新してください。