UNPKG

@kubernetes-models/flux-cd

Version:
61 lines (60 loc) 2.97 kB
import { IComGithubFluxcdNotificationControllerApiV1CrossNamespaceObjectReference } from "./CrossNamespaceObjectReference.js"; import { IComGithubFluxcdPkgApisMetaLocalObjectReference } from "../../github.com/fluxcd/pkg/apis/meta/LocalObjectReference.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * ReceiverSpec defines the desired state of the Receiver. */ export interface IReceiverSpec { /** * Events specifies the list of event types to handle, * e.g. 'push' for GitHub or 'Push Hook' for GitLab. */ "events"?: Array<string>; "interval"?: string; /** * ResourceFilter is a CEL expression expected to return a boolean that is * evaluated for each resource referenced in the Resources field when a * webhook is received. If the expression returns false then the controller * will not request a reconciliation for the resource. * When the expression is specified the controller will parse it and mark * the object as terminally failed if the expression is invalid or does not * return a boolean. */ "resourceFilter"?: string; /** * A list of resources to be notified about changes. */ "resources": Array<IComGithubFluxcdNotificationControllerApiV1CrossNamespaceObjectReference>; /** * SecretRef specifies the Secret containing the token used * to validate the payload authenticity. The Secret must contain a 'token' * key. For GCR receivers, the Secret must also contain an 'email' key * with the IAM service account email configured on the Pub/Sub push * subscription, and an 'audience' key with the expected OIDC token audience. */ "secretRef": IComGithubFluxcdPkgApisMetaLocalObjectReference; /** * Suspend tells the controller to suspend subsequent * events handling for this receiver. */ "suspend"?: boolean; /** * Type of webhook sender, used to determine * the validation procedure and payload deserialization. */ "type": "generic" | "generic-hmac" | "github" | "gitlab" | "bitbucket" | "harbor" | "dockerhub" | "quay" | "gcr" | "nexus" | "acr" | "cdevents"; } /** * ReceiverSpec defines the desired state of the Receiver. */ export declare class ReceiverSpec extends Model<IReceiverSpec> implements IReceiverSpec { "events"?: Array<string>; "interval"?: string; "resourceFilter"?: string; "resources": Array<IComGithubFluxcdNotificationControllerApiV1CrossNamespaceObjectReference>; "secretRef": IComGithubFluxcdPkgApisMetaLocalObjectReference; "suspend"?: boolean; "type": "generic" | "generic-hmac" | "github" | "gitlab" | "bitbucket" | "harbor" | "dockerhub" | "quay" | "gcr" | "nexus" | "acr" | "cdevents"; constructor(data?: ModelData<IReceiverSpec>); } export type { IReceiverSpec as IComGithubFluxcdNotificationControllerApiV1ReceiverSpec, ReceiverSpec as ComGithubFluxcdNotificationControllerApiV1ReceiverSpec };