pkg/krm/functions/api/v1/swagger.yaml (136 lines of code) (raw):

swagger: "2.0" info: title: KRM Functions Specification (ResourceList) version: v1 definitions: ResourceList: type: object description: ResourceList is the input/output wire format for KRM functions. x-kubernetes-group-version-kind: - group: config.kubernetes.io kind: ResourceList version: v1 required: - items properties: apiVersion: description: apiVersion of ResourceList type: string kind: description: kind of ResourceList i.e. `ResourceList` type: string items: type: array description: | [input/output] Items is a list of Kubernetes objects: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#types-kinds). A function will read this field in the input ResourceList and populate this field in the output ResourceList. items: type: object functionConfig: type: object description: | [input] FunctionConfig is an optional Kubernetes object for passing arguments to a function invocation. results: type: array description: | [output] Results is an optional list that can be used by function to emit results for observability and debugging purposes. items: "$ref": "#/definitions/Result" Result: type: object required: - message properties: message: type: string description: Message is a human readable message. severity: type: string enum: - error - warning - info default: error description: | Severity is the severity of a result: "error": indicates an error result. "warning": indicates a warning result. "info": indicates an informational result. resourceRef: type: object description: | ResourceRef is the metadata for referencing a Kubernetes object associated with a result. required: - apiVersion - kind - name properties: apiVersion: description: APIVersion refers to the `apiVersion` field of the object manifest. type: string kind: description: Kind refers to the `kind` field of the object. type: string namespace: description: Namespace refers to the `metadata.namespace` field of the object manifest. type: string name: description: Name refers to the `metadata.name` field of the object manifest. type: string field: type: object description: | Field is the reference to a field in the object. If defined, `ResourceRef` must also be provided. required: - path properties: path: type: string description: | Path is the JSON path of the field e.g. `spec.template.spec.containers[3].resources.limits.cpu` currentValue: description: | CurrrentValue is the current value of the field. Can be any value - string, number, boolean, array or object. proposedValue: description: | PropposedValue is the proposed value of the field to fix an issue. Can be any value - string, number, boolean, array or object. file: type: object description: File references a file containing the resource. required: - path properties: path: type: string description: | Path is the OS agnostic, slash-delimited, relative path. e.g. `some-dir/some-file.yaml`. index: type: number default: 0 description: Index of the object in a multi-object YAML file. tags: type: object additionalProperties: type: string description: | Tags is an unstructured key value map stored with a result that may be set by external tools to store and retrieve arbitrary metadata. paths: {}