StyleBookの設定

API を使用してカスタムStyleBook をインポートする

StyleBook APIを使用して、カスタムStyleBook をNetScalerコンソールにインポートします。REST APIを使用して、cURLコマンドラインツールやPostmanクロームブラウザ拡張機能などの任意のツールでこのStyleBookから構成パックを作成します。たとえば、 example-lb という名前のStyleBookをインポートして、NetScaler インスタンスにロードバランサー構成を作成できます。

HTTPメソッド: ポスト

URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/stylebooks/actions/import?mode=async

{
    "import": {
        "file_name": "add_dnssoarec.yaml",
        "source": "<base 64 encoded content of the sb definition>",
        "encoding": "base64"
    }
}
<!--NeedCopy-->

ここで、 source 属性の値はStyleBookファイルの内容のbase64エンコーディングです。StyleBookファイルのYAMLコンテンツをオンラインツールに貼り付けることができます。たとえば、https://www.browserling.com/tools/file-to-base64を使用してbase64文字列を取得し、それをsource属性の値として使用できます。

このAPIコールを使用すると、1つのAPI操作で複数のStyleBookファイルを含む圧縮されたtarballファイル(.tgzファイル)をアップロードすることもできます。以下を実行します:

  • file_name 属性を.tgz ファイルに変更
  • .tgzファイルの内容のsource属性を base64 エンコーディングに変更します。

API がツールで正常に実行されると、ジョブ ID を含む応答が返されます。このジョブ ID を使用して、操作を完了まで追跡します。

200 ACCEPTED
<!--NeedCopy-->

レスポンス本文:

{
    "job": {
        "job_id": "12345678"
    }
}
<!--NeedCopy-->

ジョブ ID を使用して操作のステータスを追跡します。

HTTP メソッド: GET

URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/jobs/<job-id>

ジョブのステータスが返されます。

200 OK
<!--NeedCopy-->

レスポンス本文:

{
    "job": {
        "job_id": "<job-id>",
        "progress_info": [
            {
                "is_last": "true",
                "message": "No job found",
                "status": "failed"
            }
        ],
        "status": "completed"
    }
}
<!--NeedCopy-->

ステータス値が「完了」の場合は、StyleBookが正常にインポートされたことを示します。StyleBookの情報を取得して、操作のステータスを確認します。

HTTP メソッド: GET

URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/stylebooks/samples/1.0/demo-helper-object

インポートされたStyleBookの詳細が表示されます。

200 OK
<!--NeedCopy-->

レスポンス本文:

{
    "stylebook": {
        "builtin_namespaces": {},
        "created_datetime": "2023-01-14 00:13:59",
        "custom": true,
        "dependencies": [],
        "deprecate": "false",
        "description": "This Stylebook is a test",
        "display_name": "Test StyleBooks",
        "encoding": "BASE64",
        "header": "Test StyleBooks",
        "icon": "''",
        "id": "demo575731aacbfc20b4ff00b3b60ea59855",
        "is_updatable": true,
        "name": "demo-helper-object",
        "namespace": "samples",
        "primary_keys": {},
        "private": false,
        "repository_name": "",
        "reverse_dependencies": [],
        "schema_version": "1.0",
        "source": "<base 64 encoded content of the stylebook definition>",
        "tenant_id": "1a45fd70-7ce3-4bff-8642-1bd7f7e97673",
        "username": "abc",
        "version": "1.0"
    }
}
<!--NeedCopy-->
API を使用してカスタムStyleBook をインポートする

この記事の概要