1.118. io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps schema


説明
JSONSchemaProps は Specification Draft 4 (http://json-schema.org/) に準拠した JSON スキーマです。
タイプ
object

スキーマ

プロパティータイプ説明

$ref

string

 

$schema

string

 

additionalItems

``

 

additionalProperties

``

 

allOf

array (undefined)

 

anyOf

array (undefined)

 

default

JSON

default は、未定義のオブジェクトフィールドのデフォルト値です。defaulting は CustomResourceDefaulting 機能ゲートのベータ機能です。defaulting では、spec.preserveUnknownFields が false である必要があります。

definitions

object (undefined)

 

dependencies

object (undefined)

 

description

string

 

enum

array (JSON)

 

example

JSON

 

exclusiveMaximum

boolean

 

exclusiveMinimum

boolean

 

externalDocs

ExternalDocumentation

 

format

string

format は OpenAPI v3 形式の文字列です。不明な形式は無視されます。以下のフォーマットが検証されます。

- bsonobjectid: a bson object ID, i.e. a 24 characters hex string - uri: an URI as parsed by Golang net/url.ParseRequestURI - email: an email address as parsed by Golang net/mail.ParseAddress - hostname: a valid representation for an Internet host name, as defined by RFC 1034, section 3.1 [RFC1034]. - ipv4: an IPv4 IP as parsed by Golang net.ParseIP - ipv6: an IPv6 IP as parsed by Golang net.ParseIP - cidr: a CIDR as parsed by Golang net.ParseCIDR - mac: a MAC address as parsed by Golang net.ParseMAC - uuid: an UUID that allows uppercase defined by the regex (?i)^[0-9a-f]{8}-?[0-9a-f]{4}-?[0-9a-f]{4}-?[0-9a-f]{4}-?[0-9a-f]{12}$ - uuid3: an UUID3 that allows uppercase defined by the regex (?i)^[0-9a-f]{8}-?[0-9a-f]{4}-?3[0-9a-f]{3}-?[0-9a-f]{4}-?[0-9a-f]{12}$ - uuid4: an UUID4 that allows uppercase defined by the regex (?i)^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89ab][0-9a-f]{3}-?[0-9a-f]{12}$ - uuid5: an UUID5 that allows uppercase defined by the regex (?i)^[0-9a-f]{8}-?[0-9a-f]{4}-?5[0-9a-f]{3}-?[89ab][0-9a-f]{3}-?[0-9a-f]{12}$ - isbn: an ISBN10 or ISBN13 number string like "0321751043" or "978-0321751041" - isbn10: an ISBN10 number string like "0321751043" - isbn13: an ISBN13 number string like "978-0321751041" - creditcard: a credit card number defined by the regex ^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$ with any non digit characters mixed in - ssn: a U.S. social security number following the regex ^\d{3}[- ]?\d{2}[- ]?\d{4}$ - hexcolor: an hexadecimal color code like "FFFFFF: following the regex ^?([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$ - rgbcolor: an RGB color code like rgb like "rgb(255,255,2559" - byte: base64 encoded binary data - password: any kind of string - date: a date string like "2006-01-02" as defined by full-date in RFC3339 - duration: a duration string like "22 ns" as parsed by Golang time.ParseDuration or compatible with Scala duration format - datetime: a date time string like "2014-12-15T19:30:20.000Z" as defined by date-time in RFC3339.

id

string

 

items

``

 

maxItems

integer

 

maxLength

integer

 

maxProperties

integer

 

maximum

number

 

minItems

integer

 

minLength

integer

 

minProperties

integer

 

minimum

number

 

multipleOf

number

 

not

``

 

nullable

boolean

 

oneOf

array (undefined)

 

pattern

string

 

patternProperties

object (undefined)

 

properties

object (undefined)

 

required

array (string)

 

title

string

 

type

string

 

uniqueItems

boolean

 

x-kubernetes-embedded-resource

boolean

x-kubernetes-embedded-resource は、TypeMeta および ObjectMeta を使用して、値が埋め込み型 Kubernetes runtime.Object であることを定義します。タイプは object である必要があります。埋め込まれたオブジェクトをさらに制限することができます。kind、apiVersion、およびメタデータは自動的に検証されます。x-kubernetes-preserve-unknown-fields は true にできますが、オブジェクトが完全に指定されている場合 (kind、apiVersion、metadata まで) は true である必要はありません。

x-kubernetes-int-or-string

boolean

x-kubernetes-int-or-string は、この値が整数または文字列のいずれかであることを指定します。true の場合、空の型を使用でき、以下のいずれかのパターンに従い anyOf の子としての型が許可されます。

1) anyOf: - type: integer - type: string 2) allOf: - anyOf: - type: integer - type: string - …​ zero or more

x-kubernetes-list-map-keys

array (string)

x-kubernetes-list-map-keys は、マップのインデックスとして使用されるキーを指定して、配列に x-kubernetes-list-type map のアノテーションを付けます。

このタグは、"x-kubernetes-list-type" エクステンションが "map" に設定されているリストでのみ使用する必要があります。また、この属性に指定する値は、子構造のスカラー型フィールドである必要があります (ネストはサポートされていません)。

指定されたプロパティーは、すべてのリストアイテムに確実に存在するように、必須であるかデフォルト値を持っている必要があります。

x-kubernetes-list-type

string

x-kubernetes-list-type は、トポロジーをさらに記述するためにアレイにアノテーションを付けます。この拡張機能はリストでのみ使用する必要があり、3 つの値を使用できます。

1) Atomic: このリストは、スケーラーのような単一のエンティティーとして扱われます。Atomic リストは更新時に完全に置き換えられます。このエクステンションは、任意のタイプのリスト (struct、scalar、…​) で使用できます。2) set: set は、同じ値を持つ複数のアイテムを持つべきでないリストです。それぞれの値は scalar で、x-kubernetes-map-type atomic または x-kubernetes-list-type atomic のアレイである必要があります。3) map: これらのリストは、要素の識別に使用するインデックス以外のキーを持つ点で map に似ています。順序はマージ時に保持されます。map タグは、タイプオブジェクトの要素が含まれるリストでのみ使用する必要があります。アレイの場合、デフォルトは atomic です。

x-kubernetes-map-type

string

x-kubernetes-map-type は、そのトポロジーをさらに記述するためにオブジェクトにアノテーションを付けます。このエクステンションは、タイプが object で、2 つの値がある可能性がある場合にのみ使用します。

1) granular: これらのマップは実際のマップ (キーと値のペア) であり、各フィールドは互いに独立しています (それぞれが別々のアクターによって操作できます)。これは、すべてのマップのデフォルト動作です。2) atomic: このリストは、スケーラーのような単一のエンティティーとして扱われます。atomic マップは更新時に完全に置き換えられます。

x-kubernetes-preserve-unknown-fields

boolean

x-kubernetes-preserve-unknown-fields は、検証スキーマで指定されていないフィールドのプルーニングから、API サーバーのデコードステップを停止します。これはフィールドに再帰的に影響しますが、ネストされたプロパティーまたは additionalProperties がスキーマで指定されている場合、通常のプルーニング動作に戻ります。これは true または undefined のいずれかになります。false は禁止されています。

x-kubernetes-validations

array (ValidationRule)

x-kubernetes-validations は、CEL 式言語で記述された検証ルールのリストを記述します。このフィールドはアルファレベルです。このフィールドを使用するには、CustomResourceValidationExpressions フィーチャーゲートを有効にする必要があります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.