kubernetes/api/openapi-spec
Patrick Ohly bde9b64cdf DRA: remove "source" indirection from v1 Pod API
This makes the API nicer:

    resourceClaims:
    - name: with-template
      resourceClaimTemplateName: test-inline-claim-template
    - name: with-claim
      resourceClaimName: test-shared-claim

Previously, this was:

    resourceClaims:
    - name: with-template
      source:
        resourceClaimTemplateName: test-inline-claim-template
    - name: with-claim
      source:
        resourceClaimName: test-shared-claim

A more long-term benefit is that other, future alternatives
might not make sense under the "source" umbrella.

This is a breaking change. It's justified because DRA is still
alpha and will have several other API breaks in 1.31.
2024-06-27 17:53:24 +02:00
..
v3 DRA: remove "source" indirection from v1 Pod API 2024-06-27 17:53:24 +02:00
README.md Fix grammar in K8s OpenAPI spec doc 2022-06-14 21:29:23 -04:00
swagger.json DRA: remove "source" indirection from v1 Pod API 2024-06-27 17:53:24 +02:00

Kubernetes's OpenAPI Specification

This folder contains an OpenAPI specification for Kubernetes API.

Vendor Extensions

Kubernetes extends OpenAPI using these extensions. Note the version that extensions have been added.

x-kubernetes-group-version-kind

Operations and Definitions may have x-kubernetes-group-version-kind if they are associated with a kubernetes resource.

For example:

"paths": {
    ...
    "/api/v1/namespaces/{namespace}/pods/{name}": {
        ...
        "get": {
        ...
            "x-kubernetes-group-version-kind": {
            "group": "",
            "version": "v1",
            "kind": "Pod"
            }
        }
    }
}

x-kubernetes-action

Operations and Definitions may have x-kubernetes-action if they are associated with a kubernetes resource. Action can be one of get, list, put, patch, post, delete, deletecollection, watch, watchlist, proxy, or connect.

For example:

"paths": {
    ...
    "/api/v1/namespaces/{namespace}/pods/{name}": {
        ...
        "get": {
        ...
            "x-kubernetes-action": "list"
        }
    }
}

x-kubernetes-patch-strategy and x-kubernetes-patch-merge-key

Some of the definitions may have these extensions. For more information about PatchStrategy and PatchMergeKey see strategic-merge-patch.