UNPKG

@kubernetes-models/flux-cd

Version:
99 lines (98 loc) 4.28 kB
import { IComGithubFluxcdPkgApisAclAccessFrom } from "../../github.com/fluxcd/pkg/apis/acl/AccessFrom.js"; import { IComGithubFluxcdPkgApisMetaLocalObjectReference } from "../../github.com/fluxcd/pkg/apis/meta/LocalObjectReference.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * HelmRepositorySpec specifies the required configuration to produce an * Artifact for a Helm repository index YAML. */ export interface IHelmRepositorySpec { /** * AccessFrom specifies an Access Control List for allowing cross-namespace * references to this object. * NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 */ "accessFrom"?: IComGithubFluxcdPkgApisAclAccessFrom; /** * 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`. * * It takes precedence over the values specified in the Secret referred * to by `.spec.secretRef`. */ "certSecretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference; /** * Insecure allows connecting to a non-TLS HTTP container registry. * This field is only taken into account if the .spec.type field is set to 'oci'. */ "insecure"?: boolean; "interval"?: string; /** * PassCredentials allows the credentials from the SecretRef to be passed * on to a host that does not match the host as defined in URL. * This may be required if the host of the advertised chart URLs in the * index differ from the defined URL. * Enabling this should be done with caution, as it can potentially result * in credentials getting stolen in a MITM-attack. */ "passCredentials"?: boolean; /** * Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. * This field is optional, and only taken into account if the .spec.type field is set to 'oci'. * When not specified, defaults to 'generic'. */ "provider"?: "generic" | "aws" | "azure" | "gcp"; /** * SecretRef specifies the Secret containing authentication credentials * for the HelmRepository. * For HTTP/S basic auth the secret must contain 'username' and 'password' * fields. * Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile' * keys is deprecated. Please use `.spec.certSecretRef` instead. */ "secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference; /** * Suspend tells the controller to suspend the reconciliation of this * HelmRepository. */ "suspend"?: boolean; "timeout"?: string; /** * Type of the HelmRepository. * When this field is set to "oci", the URL field value must be prefixed with "oci://". */ "type"?: "default" | "oci"; /** * URL of the Helm repository, a valid URL contains at least a protocol and * host. */ "url": string; } /** * HelmRepositorySpec specifies the required configuration to produce an * Artifact for a Helm repository index YAML. */ export declare class HelmRepositorySpec extends Model<IHelmRepositorySpec> implements IHelmRepositorySpec { "accessFrom"?: IComGithubFluxcdPkgApisAclAccessFrom; "certSecretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference; "insecure"?: boolean; "interval"?: string; "passCredentials"?: boolean; "provider"?: "generic" | "aws" | "azure" | "gcp"; "secretRef"?: IComGithubFluxcdPkgApisMetaLocalObjectReference; "suspend"?: boolean; "timeout"?: string; "type"?: "default" | "oci"; "url": string; constructor(data?: ModelData<IHelmRepositorySpec>); } export type { IHelmRepositorySpec as IComGithubFluxcdSourceControllerApiV1HelmRepositorySpec, HelmRepositorySpec as ComGithubFluxcdSourceControllerApiV1HelmRepositorySpec };