@kubernetes-models/flux-cd
Version:
109 lines (108 loc) • 4.97 kB
TypeScript
import { IComGithubFluxcdPkgApisMetaLocalObjectReference } from "../../github.com/fluxcd/pkg/apis/meta/LocalObjectReference.js";
import { IComGithubFluxcdSourceControllerApiV1beta2OCILayerSelector } from "./OCILayerSelector.js";
import { IComGithubFluxcdSourceControllerApiV1beta2OCIRepositoryRef } from "./OCIRepositoryRef.js";
import { IComGithubFluxcdSourceControllerApiV1OCIRepositoryVerification } from "../v1/OCIRepositoryVerification.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
* OCIRepositorySpec defines the desired state of OCIRepository
*/
export interface IOCIRepositorySpec {
/**
* CertSecretRef can be given the name of a Secret containing
* either or both of
*
* - a PEM-encoded client certificate (`tls.crt`) and private
* key (`tls.key`);
* - a PEM-encoded CA certificate (`ca.crt`)
*
* and whichever are supplied, will be used for connecting to the
* registry. The client cert and key are useful if you are
* authenticating with a certificate; the CA cert is useful if
* you are using a self-signed server certificate. The Secret must
* be of type `Opaque` or `kubernetes.io/tls`.
*
* Note: Support for the `caFile`, `certFile` and `keyFile` keys have
* been deprecated.
*/
"certSecretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
/**
* Ignore overrides the set of excluded patterns in the .sourceignore format
* (which is the same as .gitignore). If not provided, a default will be used,
* consult the documentation for your version to find out what those are.
*/
"ignore"?: string;
/**
* Insecure allows connecting to a non-TLS HTTP container registry.
*/
"insecure"?: boolean;
"interval": string;
/**
* LayerSelector specifies which layer should be extracted from the OCI artifact.
* When not specified, the first layer found in the artifact is selected.
*/
"layerSelector"?: IComGithubFluxcdSourceControllerApiV1beta2OCILayerSelector;
/**
* The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'.
* When not specified, defaults to 'generic'.
*/
"provider"?: "generic" | "aws" | "azure" | "gcp";
/**
* ProxySecretRef specifies the Secret containing the proxy configuration
* to use while communicating with the container registry.
*/
"proxySecretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
/**
* The OCI reference to pull and monitor for changes,
* defaults to the latest tag.
*/
"ref"?: IComGithubFluxcdSourceControllerApiV1beta2OCIRepositoryRef;
/**
* SecretRef contains the secret name containing the registry login
* credentials to resolve image metadata.
* The secret must be of type kubernetes.io/dockerconfigjson.
*/
"secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
/**
* ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate
* the image pull if the service account has attached pull secrets. For more information:
* https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account
*/
"serviceAccountName"?: string;
/**
* This flag tells the controller to suspend the reconciliation of this source.
*/
"suspend"?: boolean;
"timeout"?: string;
/**
* URL is a reference to an OCI artifact repository hosted
* on a remote container registry.
*/
"url": string;
/**
* Verify contains the secret name containing the trusted public keys
* used to verify the signature and specifies which provider to use to check
* whether OCI image is authentic.
*/
"verify"?: IComGithubFluxcdSourceControllerApiV1OCIRepositoryVerification;
}
/**
* OCIRepositorySpec defines the desired state of OCIRepository
*/
export declare class OCIRepositorySpec extends Model<IOCIRepositorySpec> implements IOCIRepositorySpec {
"certSecretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
"ignore"?: string;
"insecure"?: boolean;
"interval": string;
"layerSelector"?: IComGithubFluxcdSourceControllerApiV1beta2OCILayerSelector;
"provider"?: "generic" | "aws" | "azure" | "gcp";
"proxySecretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
"ref"?: IComGithubFluxcdSourceControllerApiV1beta2OCIRepositoryRef;
"secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference;
"serviceAccountName"?: string;
"suspend"?: boolean;
"timeout"?: string;
"url": string;
"verify"?: IComGithubFluxcdSourceControllerApiV1OCIRepositoryVerification;
constructor(data?: ModelData<IOCIRepositorySpec>);
}
export type { IOCIRepositorySpec as IComGithubFluxcdSourceControllerApiV1beta2OCIRepositorySpec, OCIRepositorySpec as ComGithubFluxcdSourceControllerApiV1beta2OCIRepositorySpec };