UNPKG

@kubernetes-models/flux-cd

Version:
118 lines (117 loc) 4.97 kB
import { IComGithubFluxcdHelmControllerApiV2CRDsPolicy } from "./CRDsPolicy.js"; import { IComGithubFluxcdHelmControllerApiV2UpgradeRemediation } from "./UpgradeRemediation.js"; import { IComGithubFluxcdHelmControllerApiV2ServerSideApplyMode } from "./ServerSideApplyMode.js"; import { IComGithubFluxcdHelmControllerApiV2UpgradeStrategy } from "./UpgradeStrategy.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * Upgrade holds the configuration for Helm upgrade actions for this * HelmRelease. */ export interface IUpgrade { /** * CleanupOnFail allows deletion of new resources created during the Helm * upgrade action when it fails. */ "cleanupOnFail"?: boolean; /** * CRDs upgrade CRDs from the Helm Chart's crds directory according * to the CRD upgrade policy provided here. Valid values are `Skip`, * `Create` or `CreateReplace`. Default is `Skip` and if omitted * CRDs are neither installed nor upgraded. * * Skip: do neither install nor replace (update) any CRDs. * * Create: new CRDs are created, existing CRDs are neither updated nor deleted. * * CreateReplace: new CRDs are created, existing CRDs are updated (replaced) * but not deleted. * * By default, CRDs are not applied during Helm upgrade action. With this * option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm. * https://helm.sh/docs/chart_best_practices/custom_resource_definitions. */ "crds"?: IComGithubFluxcdHelmControllerApiV2CRDsPolicy; /** * DisableHooks prevents hooks from running during the Helm upgrade action. */ "disableHooks"?: boolean; /** * DisableOpenAPIValidation prevents the Helm upgrade action from validating * rendered templates against the Kubernetes OpenAPI Schema. */ "disableOpenAPIValidation"?: boolean; /** * DisableSchemaValidation prevents the Helm upgrade action from validating * the values against the JSON Schema. */ "disableSchemaValidation"?: boolean; /** * DisableTakeOwnership disables taking ownership of existing resources * during the Helm upgrade action. Defaults to false. */ "disableTakeOwnership"?: boolean; /** * DisableWait disables the waiting for resources to be ready after a Helm * upgrade has been performed. */ "disableWait"?: boolean; /** * DisableWaitForJobs disables waiting for jobs to complete after a Helm * upgrade has been performed. */ "disableWaitForJobs"?: boolean; /** * Force forces resource updates through a replacement strategy * that avoids 3-way merge conflicts on client-side apply. * This field is ignored for server-side apply (which always * forces conflicts with other field managers). */ "force"?: boolean; /** * PreserveValues will make Helm reuse the last release's values and merge in * overrides from 'Values'. Setting this flag makes the HelmRelease * non-declarative. */ "preserveValues"?: boolean; /** * Remediation holds the remediation configuration for when the Helm upgrade * action for the HelmRelease fails. The default is to not perform any action. */ "remediation"?: IComGithubFluxcdHelmControllerApiV2UpgradeRemediation; /** * ServerSideApply enables server-side apply for resources during upgrade. * Can be "enabled", "disabled", or "auto". * When "auto", server-side apply usage will be based on the release's previous usage. * Defaults to "auto". */ "serverSideApply"?: IComGithubFluxcdHelmControllerApiV2ServerSideApplyMode; /** * Strategy defines the upgrade strategy to use for this HelmRelease. * Defaults to 'RemediateOnFailure', or 'RetryOnFailure' when the * DefaultToRetryOnFailure feature gate is enabled. */ "strategy"?: IComGithubFluxcdHelmControllerApiV2UpgradeStrategy; "timeout"?: string; } /** * Upgrade holds the configuration for Helm upgrade actions for this * HelmRelease. */ export declare class Upgrade extends Model<IUpgrade> implements IUpgrade { "cleanupOnFail"?: boolean; "crds"?: IComGithubFluxcdHelmControllerApiV2CRDsPolicy; "disableHooks"?: boolean; "disableOpenAPIValidation"?: boolean; "disableSchemaValidation"?: boolean; "disableTakeOwnership"?: boolean; "disableWait"?: boolean; "disableWaitForJobs"?: boolean; "force"?: boolean; "preserveValues"?: boolean; "remediation"?: IComGithubFluxcdHelmControllerApiV2UpgradeRemediation; "serverSideApply"?: IComGithubFluxcdHelmControllerApiV2ServerSideApplyMode; "strategy"?: IComGithubFluxcdHelmControllerApiV2UpgradeStrategy; "timeout"?: string; constructor(data?: ModelData<IUpgrade>); } export type { IUpgrade as IComGithubFluxcdHelmControllerApiV2Upgrade, Upgrade as ComGithubFluxcdHelmControllerApiV2Upgrade };