StyleBook APIを使用して、カスタムStyleBookをNetScaler Consoleにインポートします。REST APIを使用して、cURLコマンドラインツールやPostman Chromeブラウザ拡張機能などの任意のツールで、このStyleBookから構成パックを作成します。たとえば、NetScalerインスタンスでロードバランサー構成を作成するために使用できるexample-lbという名前のStyleBookをインポートできます。
HTTPメソッド: POST
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"
}
}
ここで、source属性の値は、StyleBookファイルの内容のbase64エンコーディングです。StyleBookファイルのYAMLコンテンツをオンラインツールに貼り付けることができます。たとえば、<https://www.browserling.com/tools/file-to-base64>を使用してbase64文字列を取得し、それをsource属性の値として使用できます。
このAPI呼び出しを使用すると、複数のStyleBookファイルを含む圧縮tarballファイル(.tgzファイル)を1つのAPI操作でアップロードすることもできます。次の手順を実行します。
ツールでAPIが正常に実行されると、ジョブIDを含む応答が返されます。このジョブIDを使用して、操作の完了を追跡します。
200 ACCEPTED
応答本文:
{
"job": {
"job_id": "12345678"
}
}
ジョブIDを使用して操作のステータスを追跡します。
HTTPメソッド: GET
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/jobs/<job-id>
ジョブのステータスが返されます。
200 OK
応答本文:
{
"job": {
"job_id": "<job-id>",
"progress_info": [
{
"is_last": "true",
"message": "No job found",
"status": "failed"
}
],
"status": "completed"
}
}
「completed」のステータス値は、StyleBookが正常にインポートされたことを示します。StyleBookに関する情報を取得して、操作のステータスを確認します。
HTTPメソッド: GET
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/stylebooks/samples/1.0/demo-helper-object
インポートされたStyleBookの詳細が表示されます。
200 OK
応答本文:
{
"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"
}
}