k8s.io/apimachinery@v0.29.2/pkg/util/strategicpatch/testdata/swagger-merge-item-v3.json (about)

     1  {
     2    "openapi": "3.0",
     3    "info": {
     4      "title": "StrategicMergePatchTestingMergeItem",
     5      "version": "v3.0"
     6    },
     7    "paths": {},
     8    "components": {
     9      "schemas": {
    10        "mergeItem": {
    11          "description": "MergeItem is type definition for testing strategic merge.",
    12          "required": [],
    13          "properties": {
    14            "name": {
    15              "description": "Name field.",
    16              "type": "string"
    17            },
    18            "value": {
    19              "description": "Value field.",
    20              "type": "string"
    21            },
    22            "other": {
    23              "description": "Other field.",
    24              "type": "string"
    25            },
    26            "mergingList": {
    27              "description": "MergingList field.",
    28              "type": "array",
    29              "items": {
    30                "default": {},
    31                "allOf": [
    32                  {"$ref": "#/components/schemas/mergeItem"}
    33                ]
    34              },
    35              "x-kubernetes-patch-merge-key": "name",
    36              "x-kubernetes-patch-strategy": "merge"
    37            },
    38            "nonMergingList": {
    39              "description": "NonMergingList field.",
    40              "type": "array",
    41              "items": {
    42                "$ref": "#/components/schemas/mergeItem"
    43              }
    44            },
    45            "mergingIntList": {
    46              "description": "MergingIntList field.",
    47              "type": "array",
    48              "items": {
    49                "type": "integer",
    50                "format": "int32"
    51              },
    52              "x-kubernetes-patch-strategy": "merge"
    53            },
    54            "nonMergingIntList": {
    55              "description": "NonMergingIntList field.",
    56              "type": "array",
    57              "items": {
    58                "type": "integer",
    59                "format": "int32"
    60              }
    61            },
    62            "mergeItemPtr": {
    63              "description": "MergeItemPtr field.",
    64              "allOf": [
    65                {"$ref": "#/components/schemas/mergeItem"}
    66              ],
    67              "x-kubernetes-patch-merge-key": "name",
    68              "x-kubernetes-patch-strategy": "merge"
    69            },
    70            "simpleMap": {
    71              "description": "SimpleMap field.",
    72              "type": "object",
    73              "additionalProperties": {
    74                "type": "string"
    75              }
    76            },
    77            "replacingItem": {
    78              "description": "ReplacingItem field.",
    79              "allOf": [
    80                {"$ref": "#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"}
    81              ],
    82              "x-kubernetes-patch-strategy": "replace"
    83            },
    84            "retainKeysMap": {
    85              "description": "RetainKeysMap field.",
    86              "allOf": [
    87                {"$ref": "#/components/schemas/retainKeysMergeItem"}
    88              ],
    89              "x-kubernetes-patch-strategy": "retainKeys"
    90            },
    91            "retainKeysMergingList": {
    92              "description": "RetainKeysMergingList field.",
    93              "type": "array",
    94              "items": {
    95                "$ref": "#/components/schemas/mergeItem"
    96              },
    97              "x-kubernetes-patch-merge-key": "name",
    98              "x-kubernetes-patch-strategy": "merge,retainKeys"
    99            }
   100          },
   101          "x-kubernetes-group-version-kind": [
   102            {
   103              "group": "fake-group",
   104              "kind": "mergeItem",
   105              "version": "some-version"
   106            }
   107          ]
   108        },
   109        "retainKeysMergeItem": {
   110          "description": "RetainKeysMergeItem is type definition for testing strategic merge.",
   111          "required": [],
   112          "properties": {
   113            "name": {
   114              "description": "Name field.",
   115              "type": "string"
   116            },
   117            "value": {
   118              "description": "Value field.",
   119              "type": "string"
   120            },
   121            "other": {
   122              "description": "Other field.",
   123              "type": "string"
   124            },
   125            "simpleMap": {
   126              "description": "SimpleMap field.",
   127              "items": {
   128                "type": "string"
   129              }
   130            },
   131            "mergingList": {
   132              "description": "MergingList field.",
   133              "type": "array",
   134              "items": {
   135                "$ref": "#/components/schemas/mergeItem"
   136              },
   137              "x-kubernetes-patch-merge-key": "name",
   138              "x-kubernetes-patch-strategy": "merge"
   139            },
   140            "nonMergingList": {
   141              "description": "NonMergingList field.",
   142              "type": "array",
   143              "items": {
   144                "$ref": "#/components/schemas/mergeItem"
   145              }
   146            },
   147            "mergingIntList": {
   148              "description": "MergingIntList field.",
   149              "type": "array",
   150              "items": {
   151                "type": "integer",
   152                "format": "int32"
   153              },
   154              "x-kubernetes-patch-strategy": "merge"
   155            }
   156          },
   157          "x-kubernetes-group-version-kind": [
   158            {
   159              "group": "fake-group",
   160              "kind": "retainKeysMergeItem",
   161              "version": "some-version"
   162            }
   163          ]
   164        },
   165        "io.k8s.apimachinery.pkg.runtime.RawExtension": {
   166          "description": "RawExtension is used to hold extensions in external versions.",
   167          "required": [
   168            "Raw"
   169          ],
   170          "properties": {
   171            "Raw": {
   172              "description": "Raw is the underlying serialization of this object.",
   173              "type": "string",
   174              "format": "byte"
   175            }
   176          }
   177        }
   178      }
   179    }
   180  }