trigger.vyra.sh API Reference
Resource Types
Example Resources
API Resources
Queue
Queue is the Schema for the queues API
API Version: trigger.vyra.sh/v1alpha1
Kind: Queue
| Field | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | trigger.vyra.sh/v1alpha1 | true |
| kind | string | Queue | true |
| metadata | object | Standard object metadata | true |
| spec | object | spec defines the desired state of Queue | true |
| status | object | status defines the observed state of Queue | false |
Queue.spec
spec defines the desired state of Queue
| Field | Type | Description | Required |
|---|---|---|---|
| type | enum | Type is the type of the queue. (Enum: "NATS", "Knative") | false |
| knativeConfig | object | KnativeConfig is the configuration for Knative queue type. | false |
| natsConfig | object | NATSConfig is the configuration for NATS queue type. | false |
Queue.spec.knativeConfig
KnativeConfig is the configuration for Knative queue type.
| Field | Type | Description | Required |
|---|---|---|---|
| enabled | boolean | Enabled indicates whether Knative queue is enabled. | true |
Queue.spec.natsConfig
NATSConfig is the configuration for NATS queue type.
| Field | Type | Description | Required |
|---|---|---|---|
| authentication | enum | Authentication specifies the authentication method for connecting to the NATS server. (Enum: "None", "Token", "TLS") | false |
| serverURL | string | ServerURL is the URL of the NATS server. | true |
| subject | string | Subject is the NATS subject to which messages will be published. | true |
Queue.spec.natsConfig.authentication
Authentication specifies the authentication method for connecting to the NATS server.
| Field | Type | Description | Required |
|---|---|---|---|
| secretRef | object | SecretRef is a reference to a secret containing authentication details. | false |
| type | enum | Type is the type of authentication to use. (Enum: "None", "Token", "TLS") | true |
Queue.spec.natsConfig.authentication.secretRef
SecretRef is a reference to a secret containing authentication details.
| Field | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | API version of the referent. | false |
| fieldPath | string | If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. | false |
| kind | string | Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | false |
| name | string | Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | false |
| namespace | string | Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ | false |
| resourceVersion | string | Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency | false |
| uid | string | UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids | false |
Queue.status
status defines the observed state of Queue
| Field | Type | Description | Required |
|---|---|---|---|
| conditions | []object | conditions represent the current state of the Queue resource. Each condition has a unique type and reflects the status of a specific aspect of the resource. Standard condition types include: - "Available": the resource is fully functional - "Progressing": the resource is being created or updated - "Degraded": the resource failed to reach or maintain its desired state The status of each condition is one of True, False, or Unknown. | false |
Queue.status.conditions[]
Condition contains details for one aspect of the current state of this API Resource.
| Field | Type | Description | Required |
|---|---|---|---|
| status | enum | status of the condition, one of True, False, Unknown. (Enum: "True", "False", "Unknown") | true |
| type | string | type of condition in CamelCase or in foo.example.com/CamelCase. | true |
| lastTransitionTime | string | lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. | true |
| message | string | message is a human readable message indicating details about the transition. This may be an empty string. | true |
| observedGeneration | integer | observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance. | false |
| reason | string | reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. | true |
WebhookEndpoint
WebhookEndpoint is the Schema for the webhookendpoints API
API Version: trigger.vyra.sh/v1alpha1
Kind: WebhookEndpoint
| Field | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | trigger.vyra.sh/v1alpha1 | true |
| kind | string | WebhookEndpoint | true |
| metadata | object | Standard object metadata | true |
| spec | object | spec defines the desired state of WebhookEndpoint | true |
| status | object | status defines the observed state of WebhookEndpoint | false |
WebhookEndpoint.spec
spec defines the desired state of WebhookEndpoint
| Field | Type | Description | Required |
|---|---|---|---|
| authentication | object | Authentication defines the authentication method for the webhook endpoint. | false |
| dataFormat | enum | DataFormat specifies the format of the data sent to the webhook endpoint. (Enum: "JSON", "XML", "Form") | false |
| path | string | Path is the URL path for the webhook endpoint. | false |
| queueName | string | QueueName is the name of the queue to which events will be sent for processing by this webhook endpoint. | false |
| webhookSetName | string | WebhookSetName is the name of the WebhookSet that this endpoint belongs to. | false |
WebhookEndpoint.spec.authentication
Authentication defines the authentication method for the webhook endpoint.
| Field | Type | Description | Required |
|---|---|---|---|
| secretRef | object | SecretRef is a reference to a secret containing authentication details. | false |
| type | enum | Type is the type of authentication to use. (Enum: "None", "Token", "TLS") | true |
WebhookEndpoint.spec.authentication.secretRef
SecretRef is a reference to a secret containing authentication details.
| Field | Type | Description | Required |
|---|---|---|---|
| namespace | string | Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ | false |
| resourceVersion | string | Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency | false |
| uid | string | UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids | false |
| apiVersion | string | API version of the referent. | false |
| fieldPath | string | If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. | false |
| kind | string | Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | false |
| name | string | Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | false |
WebhookEndpoint.status
status defines the observed state of WebhookEndpoint
| Field | Type | Description | Required |
|---|---|---|---|
| conditions | []object | The status of each condition is one of True, False, or Unknown. | false |
| ready | boolean | Ready indicates whether the webhook endpoint is ready to receive requests. | false |
WebhookEndpoint.status.conditions[]
Condition contains details for one aspect of the current state of this API Resource.
| Field | Type | Description | Required |
|---|---|---|---|
| lastTransitionTime | string | lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. | true |
| message | string | message is a human readable message indicating details about the transition. This may be an empty string. | true |
| observedGeneration | integer | observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance. | false |
| reason | string | reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. | true |
| status | enum | status of the condition, one of True, False, Unknown. (Enum: "True", "False", "Unknown") | true |
| type | string | type of condition in CamelCase or in foo.example.com/CamelCase. | true |
WebhookSet
WebhookSet is the Schema for the webhooksets API
API Version: trigger.vyra.sh/v1alpha1
Kind: WebhookSet
| Field | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | trigger.vyra.sh/v1alpha1 | true |
| kind | string | WebhookSet | true |
| metadata | object | Standard object metadata | true |
| spec | object | spec defines the desired state of WebhookSet | true |
| status | object | status defines the observed state of WebhookSet | false |
WebhookSet.spec
spec defines the desired state of WebhookSet
| Field | Type | Description | Required |
|---|---|---|---|
| deploymentSpec | object | DeplotmentSpec defines the deployment specifications for the webhook pods. | false |
| ingressSpec | object | IngressSpec defines the ingress specifications for accessing the webhooks. | false |
WebhookSet.spec.deploymentSpec
DeplotmentSpec defines the deployment specifications for the webhook pods.
| Field | Type | Description | Required |
|---|---|---|---|
| extraLabels | object | ExtraLabels defines additional labels to be added to the deployment and its pods. | false |
| imageSpec | object | ImageSpec defines the container image specifications for the webhook pods. | false |
| name | string | Name is the name of the deployment where the webhooks will be hosted. This field is optional; if not specified, a the WebhookSet name will be used to create a new deployment. | false |
| replicas | integer | Replicas specifies the number of pod replicas to run for the webhooks. If not specified, it defaults to 1. | false |
| resourceRequirements | object | ResourceRequirements defines the resource requests and limits for the webhook pods. | false |
| selector | object | Selector defines the label selector for the deployment. | false |
| tolerations | []object | Tolerations defines the list of tolerations for the pods. | false |
WebhookSet.spec.deploymentSpec.selector
Selector defines the label selector for the deployment.
| Field | Type | Description | Required |
|---|---|---|---|
| matchExpressions | []object | matchExpressions is a list of label selector requirements. The requirements are ANDed. | false |
| matchLabels | object | matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. | false |
WebhookSet.spec.deploymentSpec.selector.matchExpressions[]
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
| Field | Type | Description | Required |
|---|---|---|---|
| key | string | key is the label key that the selector applies to. | true |
| operator | string | operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. | true |
| values | []string | values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. | false |
WebhookSet.spec.deploymentSpec.tolerations[]
The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
| Field | Type | Description | Required |
|---|---|---|---|
| effect | string | Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. | false |
| key | string | Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. | false |
| operator | string | Operator represents a key's relationship to the value. Valid operators are Exists, Equal, Lt, and Gt. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. Lt and Gt perform numeric comparisons (requires feature gate TaintTolerationComparisonOperators). | false |
| tolerationSeconds | integer | TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. | false |
| value | string | Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. | false |
WebhookSet.spec.deploymentSpec.imageSpec
ImageSpec defines the container image specifications for the webhook pods.
| Field | Type | Description | Required |
|---|---|---|---|
| pullPolicy | enum | PullPolicy is the image pull policy. (Enum: "Always", "IfNotPresent", "Never") | false |
| registry | string | Registry is the container image registry. | false |
| repository | string | Repository is the container image repository. | false |
| tag | string | Tag is the container image tag. | false |
WebhookSet.spec.deploymentSpec.resourceRequirements
ResourceRequirements defines the resource requests and limits for the webhook pods.
| Field | Type | Description | Required |
|---|---|---|---|
| claims | []object | Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. This field depends on the DynamicResourceAllocation feature gate. This field is immutable. It can only be set for containers. | false |
| limits | object | Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ | false |
| requests | object | Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ | false |
WebhookSet.spec.deploymentSpec.resourceRequirements.claims[]
ResourceClaim references one entry in PodSpec.ResourceClaims.
| Field | Type | Description | Required |
|---|---|---|---|
| name | string | Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. | true |
| request | string | Request is the name chosen for a request in the referenced claim. If empty, everything from the claim is made available, otherwise only the result of this request. | false |
WebhookSet.spec.ingressSpec
IngressSpec defines the ingress specifications for accessing the webhooks.
| Field | Type | Description | Required |
|---|---|---|---|
| enabled | boolean | Enabled indicates whether the ingress is enabled. | false |
| hostname | string | Hostname is the hostname for the ingress. | false |
| tlsSecretName | string | TLSSecretName is the name of the TLS secret for the ingress. | false |
WebhookSet.status
status defines the observed state of WebhookSet
| Field | Type | Description | Required |
|---|---|---|---|
| conditions | []object | The status of each condition is one of True, False, or Unknown. | false |
| notReadyWebhooks | integer | NotReadyWebhooks indicates the number of webhooks that are not ready. | false |
| readyWebhooks | integer | ReadyWebhooks indicates the number of webhooks that are ready. | false |
WebhookSet.status.conditions[]
Condition contains details for one aspect of the current state of this API Resource.
| Field | Type | Description | Required |
|---|---|---|---|
| observedGeneration | integer | observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance. | false |
| reason | string | reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. | true |
| status | enum | status of the condition, one of True, False, Unknown. (Enum: "True", "False", "Unknown") | true |
| type | string | type of condition in CamelCase or in foo.example.com/CamelCase. | true |
| lastTransitionTime | string | lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. | true |
| message | string | message is a human readable message indicating details about the transition. This may be an empty string. | true |
Examples
Example: Queue
apiVersion: trigger.vyra.sh/v1alpha1
kind: Queue
metadata:
labels:
app.kubernetes.io/name: soar-operator
app.kubernetes.io/managed-by: kustomize
name: queue-sample
spec:
# TODO(user): Add fields hereExample: WebhookEndpoint
apiVersion: trigger.vyra.sh/v1alpha1
kind: WebhookEndpoint
metadata:
labels:
app.kubernetes.io/name: soar-operator
app.kubernetes.io/managed-by: kustomize
name: webhookendpoint-sample
spec:
# TODO(user): Add fields hereExample: WebhookSet
apiVersion: trigger.vyra.sh/v1alpha1
kind: WebhookSet
metadata:
labels:
app.kubernetes.io/name: soar-operator
app.kubernetes.io/managed-by: kustomize
name: webhookset-sample
spec:
# TODO(user): Add fields here