150 lines
6.1 KiB
YAML
150 lines
6.1 KiB
YAML
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.14.0
|
|
labels:
|
|
group: fission.io
|
|
name: httptriggers.fission.io
|
|
spec:
|
|
group: fission.io
|
|
names:
|
|
kind: HTTPTrigger
|
|
listKind: HTTPTriggerList
|
|
plural: httptriggers
|
|
singular: httptrigger
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: HTTPTrigger is the trigger invokes user functions when receiving
|
|
HTTP requests.
|
|
properties:
|
|
apiVersion:
|
|
description: |-
|
|
APIVersion defines the versioned schema of this representation of an object.
|
|
Servers should convert recognized schemas to the latest internal value, and
|
|
may reject unrecognized values.
|
|
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
type: string
|
|
kind:
|
|
description: |-
|
|
Kind is a string value representing the REST resource this object represents.
|
|
Servers may infer this from the endpoint the client submits requests to.
|
|
Cannot be updated.
|
|
In CamelCase.
|
|
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: HTTPTriggerSpec is for router to expose user functions at
|
|
the given URL path.
|
|
properties:
|
|
createingress:
|
|
description: If CreateIngress is true, router will create an ingress
|
|
definition.
|
|
type: boolean
|
|
functionref:
|
|
description: FunctionReference is a reference to the target function.
|
|
properties:
|
|
functionweights:
|
|
additionalProperties:
|
|
type: integer
|
|
description: |-
|
|
Function Reference by weight. this map contains function name as key and its weight
|
|
as the value. This is for canary upgrade purpose.
|
|
nullable: true
|
|
type: object
|
|
name:
|
|
description: Name of the function.
|
|
type: string
|
|
type:
|
|
description: |-
|
|
Type indicates whether this function reference is by name or selector. For now,
|
|
the only supported reference type is by "name". Future reference types:
|
|
* Function by label or annotation
|
|
* Branch or tag of a versioned function
|
|
* A "rolling upgrade" from one version of a function to another
|
|
Available value:
|
|
- name
|
|
- function-weights
|
|
type: string
|
|
required:
|
|
- name
|
|
- type
|
|
type: object
|
|
host:
|
|
description: |-
|
|
TODO: remove this field since we have IngressConfig already
|
|
Deprecated: the original idea of this field is not for setting Ingress.
|
|
Since we have IngressConfig now, remove Host after couple releases.
|
|
type: string
|
|
ingressconfig:
|
|
description: |-
|
|
TODO: make IngressConfig an independent Fission resource
|
|
IngressConfig for router to set up Ingress.
|
|
properties:
|
|
annotations:
|
|
additionalProperties:
|
|
type: string
|
|
description: Annotations will be added to metadata when creating
|
|
Ingress.
|
|
nullable: true
|
|
type: object
|
|
host:
|
|
description: |-
|
|
Host is for ingress controller to apply rules. If
|
|
host is empty or "*", the rule applies to all
|
|
inbound HTTP traffic.
|
|
type: string
|
|
path:
|
|
description: |-
|
|
Path is for path matching. The format of path
|
|
depends on what ingress controller you used.
|
|
type: string
|
|
tls:
|
|
description: |-
|
|
TLS is for user to specify a Secret that contains
|
|
TLS key and certificate. The domain name in the
|
|
key and crt must match the value of Host field.
|
|
type: string
|
|
type: object
|
|
keepPrefix:
|
|
description: |-
|
|
When function is exposed with Prefix based path,
|
|
keepPrefix decides whether to keep or trim prefix in URL while invoking function.
|
|
type: boolean
|
|
method:
|
|
description: |-
|
|
Use Methods instead of Method. This field is going to be deprecated in a future release
|
|
HTTP method to access a function.
|
|
type: string
|
|
methods:
|
|
description: HTTP methods to access a function
|
|
items:
|
|
type: string
|
|
type: array
|
|
prefix:
|
|
description: |-
|
|
Prefix with which functions are exposed.
|
|
NOTE: Prefix takes precedence over URL/RelativeURL.
|
|
Note that it does not treat slashes specially ("/foobar/" will be matched by
|
|
the prefix "/foobar").
|
|
type: string
|
|
relativeurl:
|
|
description: RelativeURL is the exposed URL for external client to
|
|
access a function with.
|
|
type: string
|
|
required:
|
|
- functionref
|
|
type: object
|
|
required:
|
|
- metadata
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {} |