Preview stack update#

スタックの更新をプレビューします。

APIエンドポイント#

リージョン APIエンドポイント
西日本リージョン3の場合 https://orchestration.jp-west-3.cloud.global.fujitsu.com
東日本リージョン3の場合 https://orchestration.jp-east-3.cloud.global.fujitsu.com

HTTPメソッドとURI#

PUT

/v1/{tenant_id}/stacks/{stack_name}/{stack_id}/preview

HTTPステータスコード#

正常時:200

エラー時:400, 401, 404, 500

リクエストパラメータの説明#

名前 In Type デフォルト値
/必須指定
Description
tenant_id path string 必須 プロジェクトID
stack_name path string 必須 スタック名
stack_id path string 必須 スタックのUUID
clear_parameters body array 任意 スタックから削除するパラメータのリスト
テンプレートの中のデフォルト値は使用されます。
disable_rollback body boolean 任意 スタック作成に失敗したときに、スタックに含まれる作成済みのリソースを削除する場合に「false」を指定します。
省略したときの値は 「true」です。
environment body object 任意 スタックの環境情報(JSON形式)
environment_files body object 任意 filesに含まれている環境ファイルの名前のリスト
existing body boolean 任意 既存のスタックテンプレート、パラメータや環境を再利用するかどうかを指定します。
templateを省略する場合は、既存のテンプレートが使われます。filesが省略された場合は、既存の環境が使われます。指定されたパラメータは既存の値が上書きされ、省略されたパラメータには既存の値が残ります。
files body object 任意 ファイル名とファイル内容のマップ
テンプレートで組み込み関数 get_fileを使用する場合に指定します。
リクエストボディのJSON形式が正しくなるように、必要に応じてファイル内容に含まれる文字をエスケープして指定します。
例えば、ダブルクォーテーション(")を「\"」に、改行を「\n」に置換して指定します。
parameters body object 任意 テンプレートに渡す入力パラメータ
各キーと値のペアはパラメータとその引数です。
show_nested body boolean 任意 「true」の場合は、入れ子のスタックもプレビュー結果に返却されます。
tags body string 任意 スタックに関連付けるタグ
コンマで区切られる。
template body object 任意 操作の対象となるスタックテンプレート
テンプレートの文字列です。
リクエストボディのJSON形式が正しくなるように、必要に応じてテンプレートに含まれる文字をエスケープして指定します。
例えば、ダブルクォーテーション(")を「\"」に、改行を「\n」に置換して指定します。
timeout_mins body integer 任意 タイムアウト値(分単位)
省略した場合は60です。
converge body boolean 任意 「true」の場合は、スタックの現状を確認し、マージして更新します。

レスポンスボディ(正常系)の説明#

名前 Type Description
resource_changes object 追加・削除・置き換え・更新されるおよび変更されないリソースのリスト
added array 追加されるリソースオブジェクトのリスト
deleted array 削除されるリソースオブジェクトのリスト
replaced array 置き換えられるリソースオブジェクトのリスト
unchanged array 変更されないリソースオブジェクトのリスト
updated array 更新されるリソースオブジェクトのリスト

リクエスト例#

{
    "template": {
        "heat_template_version": "2013-05-23",
        "description": "Create a simple stack",
        "parameters": {
            "flavor": {
                "default": "m1.tiny",
                "type": "string"
            }
        },
        "resources": {
            "hello_world": {
                "type": "OS::Nova::Server",
                "properties": {
                    "key_name": "heat_key",
                    "flavor": {
                        "get_param": "flavor"
                    },
                    "image": "40be8d1a-3eb9-40de-8abd-43237517384f",
                    "user_data": "#!/bin/bash -xv\necho \"hello world\" > /root/hello-world.txt\n"
                }
            }
        }
    },
    "parameters": {
        "flavor": "m1.small"
    }
}

レスポンス例#

{
    "unchanged": [
        {
            "updated_time": "datetime",
            "resource_name": "",
            "physical_resource_id": "{resource id or ''}",
            "resource_action": "CREATE",
            "resource_status": "COMPLETE",
            "resource_status_reason": "",
            "resource_type": "restype",
            "stack_identity": "{stack_id}",
            "stack_name": "{stack_name}"
        }
    ],
    "updated": [
        {
            "updated_time": "datetime",
            "resource_name": "",
            "physical_resource_id": "{resource id or ''}",
            "resource_action": "CREATE",
            "resource_status": "COMPLETE",
            "resource_status_reason": "",
            "resource_type": "restype",
            "stack_identity": "{stack_id}",
            "stack_name": "{stack_name}"
        }
    ],
    "replaced": [
        {
            "updated_time": "datetime",
            "resource_name": "",
            "physical_resource_id": "{resource id or ''}",
            "resource_action": "CREATE",
            "resource_status": "COMPLETE",
            "resource_status_reason": "",
            "resource_type": "restype",
            "stack_identity": "{stack_id}",
            "stack_name": "{stack_name}"
        }
    ],
    "added": [
        {
            "updated_time": "datetime",
            "resource_name": "",
            "physical_resource_id": "{resource id or ''}",
            "resource_action": "CREATE",
            "resource_status": "COMPLETE",
            "resource_status_reason": "",
            "resource_type": "restype",
            "stack_identity": "{stack_id}",
            "stack_name": "{stack_name}"
        }
    ],
    "deleted": [
        {
            "updated_time": "datetime",
            "resource_name": "",
            "physical_resource_id": "{resource id or ''}",
            "resource_action": "CREATE",
            "resource_status": "COMPLETE",
            "resource_status_reason": "",
            "resource_type": "restype",
            "stack_identity": "{stack_id}",
            "stack_name": "{stack_name}"
        }
    ]
}