private

package
v1.27.9-rc.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 17, 2024 License: BSD-3-Clause Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type EksclusterKfdV1Alpha2

type EksclusterKfdV1Alpha2 struct {
	// ApiVersion corresponds to the JSON schema field "apiVersion".
	ApiVersion string `json:"apiVersion" yaml:"apiVersion" mapstructure:"apiVersion"`

	// Kind corresponds to the JSON schema field "kind".
	Kind EksclusterKfdV1Alpha2Kind `json:"kind" yaml:"kind" mapstructure:"kind"`

	// Metadata corresponds to the JSON schema field "metadata".
	Metadata Metadata `json:"metadata" yaml:"metadata" mapstructure:"metadata"`

	// Spec corresponds to the JSON schema field "spec".
	Spec Spec `json:"spec" yaml:"spec" mapstructure:"spec"`
}

A Fury Cluster deployed through AWS's Elastic Kubernetes Service

func (*EksclusterKfdV1Alpha2) UnmarshalJSON

func (j *EksclusterKfdV1Alpha2) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type EksclusterKfdV1Alpha2Kind

type EksclusterKfdV1Alpha2Kind string
const EksclusterKfdV1Alpha2KindEKSCluster EksclusterKfdV1Alpha2Kind = "EKSCluster"

func (*EksclusterKfdV1Alpha2Kind) UnmarshalJSON

func (j *EksclusterKfdV1Alpha2Kind) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type Metadata

type Metadata struct {
	// Name corresponds to the JSON schema field "name".
	Name string `json:"name" yaml:"name" mapstructure:"name"`
}

func (*Metadata) UnmarshalJSON

func (j *Metadata) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type Spec

type Spec struct {
	// Distribution corresponds to the JSON schema field "distribution".
	Distribution SpecDistribution `json:"distribution" yaml:"distribution" mapstructure:"distribution"`

	// DistributionVersion corresponds to the JSON schema field "distributionVersion".
	DistributionVersion string `json:"distributionVersion" yaml:"distributionVersion" mapstructure:"distributionVersion"`

	// Infrastructure corresponds to the JSON schema field "infrastructure".
	Infrastructure *SpecInfrastructure `json:"infrastructure,omitempty" yaml:"infrastructure,omitempty" mapstructure:"infrastructure,omitempty"`

	// Kubernetes corresponds to the JSON schema field "kubernetes".
	Kubernetes SpecKubernetes `json:"kubernetes" yaml:"kubernetes" mapstructure:"kubernetes"`

	// Plugins corresponds to the JSON schema field "plugins".
	Plugins *SpecPlugins `json:"plugins,omitempty" yaml:"plugins,omitempty" mapstructure:"plugins,omitempty"`

	// Region corresponds to the JSON schema field "region".
	Region TypesAwsRegion `json:"region" yaml:"region" mapstructure:"region"`

	// This map defines which will be the common tags that will be added to all the
	// resources created on AWS.
	Tags TypesAwsTags `json:"tags,omitempty" yaml:"tags,omitempty" mapstructure:"tags,omitempty"`

	// ToolsConfiguration corresponds to the JSON schema field "toolsConfiguration".
	ToolsConfiguration SpecToolsConfiguration `json:"toolsConfiguration" yaml:"toolsConfiguration" mapstructure:"toolsConfiguration"`
}

func (*Spec) UnmarshalJSON

func (j *Spec) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistribution

type SpecDistribution struct {
	// Common corresponds to the JSON schema field "common".
	Common *SpecDistributionCommon `json:"common,omitempty" yaml:"common,omitempty" mapstructure:"common,omitempty"`

	// CustomPatches corresponds to the JSON schema field "customPatches".
	CustomPatches *SpecDistributionCustompatches `json:"customPatches,omitempty" yaml:"customPatches,omitempty" mapstructure:"customPatches,omitempty"`

	// Modules corresponds to the JSON schema field "modules".
	Modules SpecDistributionModules `json:"modules" yaml:"modules" mapstructure:"modules"`
}

func (*SpecDistribution) UnmarshalJSON

func (j *SpecDistribution) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionCommon

type SpecDistributionCommon struct {
	// The node selector to use to place the pods for all the KFD modules
	NodeSelector TypesKubeNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`

	// Provider corresponds to the JSON schema field "provider".
	Provider *SpecDistributionCommonProvider `json:"provider,omitempty" yaml:"provider,omitempty" mapstructure:"provider,omitempty"`

	// URL of the registry where to pull images from for the Distribution phase.
	// (Default is registry.sighup.io/fury).
	//
	// NOTE: If plugins are pulling from the default registry, the registry will be
	// replaced for these plugins too.
	Registry *string `json:"registry,omitempty" yaml:"registry,omitempty" mapstructure:"registry,omitempty"`

	// The relative path to the vendor directory, does not need to be changed
	RelativeVendorPath *string `json:"relativeVendorPath,omitempty" yaml:"relativeVendorPath,omitempty" mapstructure:"relativeVendorPath,omitempty"`

	// The tolerations that will be added to the pods for all the KFD modules
	Tolerations []TypesKubeToleration `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
}

type SpecDistributionCommonProvider

type SpecDistributionCommonProvider struct {
	// The type of the provider, must be EKS if specified
	Type string `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecDistributionCommonProvider) UnmarshalJSON

func (j *SpecDistributionCommonProvider) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionCustomPatchesConfigMapGeneratorResource added in v1.26.6

type SpecDistributionCustomPatchesConfigMapGeneratorResource struct {
	// The behavior of the configmap
	Behavior *SpecDistributionCustomPatchesConfigMapGeneratorResourceBehavior `json:"behavior,omitempty" yaml:"behavior,omitempty" mapstructure:"behavior,omitempty"`

	// The envs of the configmap
	Envs []string `json:"envs,omitempty" yaml:"envs,omitempty" mapstructure:"envs,omitempty"`

	// The files of the configmap
	Files []string `json:"files,omitempty" yaml:"files,omitempty" mapstructure:"files,omitempty"`

	// The literals of the configmap
	Literals []string `json:"literals,omitempty" yaml:"literals,omitempty" mapstructure:"literals,omitempty"`

	// The name of the configmap
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// The namespace of the configmap
	Namespace *string `json:"namespace,omitempty" yaml:"namespace,omitempty" mapstructure:"namespace,omitempty"`

	// Options corresponds to the JSON schema field "options".
	Options *SpecDistributionCustomPatchesConfigMapGeneratorResourceOptions `json:"options,omitempty" yaml:"options,omitempty" mapstructure:"options,omitempty"`
}

func (*SpecDistributionCustomPatchesConfigMapGeneratorResource) UnmarshalJSON added in v1.26.6

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionCustomPatchesConfigMapGeneratorResourceBehavior added in v1.26.6

type SpecDistributionCustomPatchesConfigMapGeneratorResourceBehavior string
const (
	SpecDistributionCustomPatchesConfigMapGeneratorResourceBehaviorCreate  SpecDistributionCustomPatchesConfigMapGeneratorResourceBehavior = "create"
	SpecDistributionCustomPatchesConfigMapGeneratorResourceBehaviorMerge   SpecDistributionCustomPatchesConfigMapGeneratorResourceBehavior = "merge"
	SpecDistributionCustomPatchesConfigMapGeneratorResourceBehaviorReplace SpecDistributionCustomPatchesConfigMapGeneratorResourceBehavior = "replace"
)

func (*SpecDistributionCustomPatchesConfigMapGeneratorResourceBehavior) UnmarshalJSON added in v1.26.6

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionCustomPatchesConfigMapGeneratorResourceOptions added in v1.26.6

type SpecDistributionCustomPatchesConfigMapGeneratorResourceOptions struct {
	// The annotations of the configmap
	Annotations TypesKubeLabels `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`

	// If true, the name suffix hash will be disabled
	DisableNameSuffixHash *bool `json:"disableNameSuffixHash,omitempty" yaml:"disableNameSuffixHash,omitempty" mapstructure:"disableNameSuffixHash,omitempty"`

	// If true, the configmap will be immutable
	Immutable *bool `json:"immutable,omitempty" yaml:"immutable,omitempty" mapstructure:"immutable,omitempty"`

	// The labels of the configmap
	Labels TypesKubeLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
}

type SpecDistributionCustomPatchesImages added in v1.26.6

type SpecDistributionCustomPatchesImages []map[string]interface{}

Each entry should follow the format of Kustomize's images patch

type SpecDistributionCustomPatchesPatch

type SpecDistributionCustomPatchesPatch struct {
	// Options corresponds to the JSON schema field "options".
	Options *SpecDistributionCustomPatchesPatchOptions `json:"options,omitempty" yaml:"options,omitempty" mapstructure:"options,omitempty"`

	// The patch content
	Patch *string `json:"patch,omitempty" yaml:"patch,omitempty" mapstructure:"patch,omitempty"`

	// The path of the patch
	Path *string `json:"path,omitempty" yaml:"path,omitempty" mapstructure:"path,omitempty"`

	// Target corresponds to the JSON schema field "target".
	Target *SpecDistributionCustomPatchesPatchTarget `json:"target,omitempty" yaml:"target,omitempty" mapstructure:"target,omitempty"`
}

type SpecDistributionCustomPatchesPatchOptions

type SpecDistributionCustomPatchesPatchOptions struct {
	// If true, the kind change will be allowed
	AllowKindChange *bool `json:"allowKindChange,omitempty" yaml:"allowKindChange,omitempty" mapstructure:"allowKindChange,omitempty"`

	// If true, the name change will be allowed
	AllowNameChange *bool `json:"allowNameChange,omitempty" yaml:"allowNameChange,omitempty" mapstructure:"allowNameChange,omitempty"`
}

type SpecDistributionCustomPatchesPatchTarget

type SpecDistributionCustomPatchesPatchTarget struct {
	// The annotation selector of the target
	AnnotationSelector *string `json:"annotationSelector,omitempty" yaml:"annotationSelector,omitempty" mapstructure:"annotationSelector,omitempty"`

	// The group of the target
	Group *string `json:"group,omitempty" yaml:"group,omitempty" mapstructure:"group,omitempty"`

	// The kind of the target
	Kind *string `json:"kind,omitempty" yaml:"kind,omitempty" mapstructure:"kind,omitempty"`

	// The label selector of the target
	LabelSelector *string `json:"labelSelector,omitempty" yaml:"labelSelector,omitempty" mapstructure:"labelSelector,omitempty"`

	// The name of the target
	Name *string `json:"name,omitempty" yaml:"name,omitempty" mapstructure:"name,omitempty"`

	// The namespace of the target
	Namespace *string `json:"namespace,omitempty" yaml:"namespace,omitempty" mapstructure:"namespace,omitempty"`

	// The version of the target
	Version *string `json:"version,omitempty" yaml:"version,omitempty" mapstructure:"version,omitempty"`
}

type SpecDistributionCustomPatchesPatches

type SpecDistributionCustomPatchesPatches []SpecDistributionCustomPatchesPatch

type SpecDistributionCustomPatchesPatchesStrategicMerge

type SpecDistributionCustomPatchesPatchesStrategicMerge []string

Each entry should be either a relative file path or an inline content resolving to a partial or complete resource definition

type SpecDistributionCustomPatchesSecretGeneratorResource added in v1.26.6

type SpecDistributionCustomPatchesSecretGeneratorResource struct {
	// The behavior of the secret
	Behavior *SpecDistributionCustomPatchesSecretGeneratorResourceBehavior `json:"behavior,omitempty" yaml:"behavior,omitempty" mapstructure:"behavior,omitempty"`

	// The envs of the secret
	Envs []string `json:"envs,omitempty" yaml:"envs,omitempty" mapstructure:"envs,omitempty"`

	// The files of the secret
	Files []string `json:"files,omitempty" yaml:"files,omitempty" mapstructure:"files,omitempty"`

	// The literals of the secret
	Literals []string `json:"literals,omitempty" yaml:"literals,omitempty" mapstructure:"literals,omitempty"`

	// The name of the secret
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// The namespace of the secret
	Namespace *string `json:"namespace,omitempty" yaml:"namespace,omitempty" mapstructure:"namespace,omitempty"`

	// Options corresponds to the JSON schema field "options".
	Options *SpecDistributionCustomPatchesSecretGeneratorResourceOptions `json:"options,omitempty" yaml:"options,omitempty" mapstructure:"options,omitempty"`

	// The type of the secret
	Type *string `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}

func (*SpecDistributionCustomPatchesSecretGeneratorResource) UnmarshalJSON added in v1.26.6

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionCustomPatchesSecretGeneratorResourceBehavior added in v1.26.6

type SpecDistributionCustomPatchesSecretGeneratorResourceBehavior string
const (
	SpecDistributionCustomPatchesSecretGeneratorResourceBehaviorCreate  SpecDistributionCustomPatchesSecretGeneratorResourceBehavior = "create"
	SpecDistributionCustomPatchesSecretGeneratorResourceBehaviorMerge   SpecDistributionCustomPatchesSecretGeneratorResourceBehavior = "merge"
	SpecDistributionCustomPatchesSecretGeneratorResourceBehaviorReplace SpecDistributionCustomPatchesSecretGeneratorResourceBehavior = "replace"
)

func (*SpecDistributionCustomPatchesSecretGeneratorResourceBehavior) UnmarshalJSON added in v1.26.6

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionCustomPatchesSecretGeneratorResourceOptions added in v1.26.6

type SpecDistributionCustomPatchesSecretGeneratorResourceOptions struct {
	// The annotations of the secret
	Annotations TypesKubeLabels `json:"annotations,omitempty" yaml:"annotations,omitempty" mapstructure:"annotations,omitempty"`

	// If true, the name suffix hash will be disabled
	DisableNameSuffixHash *bool `json:"disableNameSuffixHash,omitempty" yaml:"disableNameSuffixHash,omitempty" mapstructure:"disableNameSuffixHash,omitempty"`

	// If true, the secret will be immutable
	Immutable *bool `json:"immutable,omitempty" yaml:"immutable,omitempty" mapstructure:"immutable,omitempty"`

	// The labels of the secret
	Labels TypesKubeLabels `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`
}

type SpecDistributionCustompatches added in v1.27.7

type SpecDistributionCustompatches struct {
	// ConfigMapGenerator corresponds to the JSON schema field "configMapGenerator".
	ConfigMapGenerator SpecDistributionCustomPatchesConfigMapGenerator `json:"configMapGenerator,omitempty" yaml:"configMapGenerator,omitempty" mapstructure:"configMapGenerator,omitempty"`

	// Images corresponds to the JSON schema field "images".
	Images SpecDistributionCustomPatchesImages `json:"images,omitempty" yaml:"images,omitempty" mapstructure:"images,omitempty"`

	// Patches corresponds to the JSON schema field "patches".
	Patches SpecDistributionCustomPatchesPatches `json:"patches,omitempty" yaml:"patches,omitempty" mapstructure:"patches,omitempty"`

	// PatchesStrategicMerge corresponds to the JSON schema field
	// "patchesStrategicMerge".
	PatchesStrategicMerge SpecDistributionCustomPatchesPatchesStrategicMerge `json:"patchesStrategicMerge,omitempty" yaml:"patchesStrategicMerge,omitempty" mapstructure:"patchesStrategicMerge,omitempty"`

	// SecretGenerator corresponds to the JSON schema field "secretGenerator".
	SecretGenerator SpecDistributionCustomPatchesSecretGenerator `json:"secretGenerator,omitempty" yaml:"secretGenerator,omitempty" mapstructure:"secretGenerator,omitempty"`
}

type SpecDistributionModules

type SpecDistributionModules struct {
	// Auth corresponds to the JSON schema field "auth".
	Auth *SpecDistributionModulesAuth `json:"auth,omitempty" yaml:"auth,omitempty" mapstructure:"auth,omitempty"`

	// Aws corresponds to the JSON schema field "aws".
	Aws *SpecDistributionModulesAws `json:"aws,omitempty" yaml:"aws,omitempty" mapstructure:"aws,omitempty"`

	// Dr corresponds to the JSON schema field "dr".
	Dr SpecDistributionModulesDr `json:"dr" yaml:"dr" mapstructure:"dr"`

	// Ingress corresponds to the JSON schema field "ingress".
	Ingress SpecDistributionModulesIngress `json:"ingress" yaml:"ingress" mapstructure:"ingress"`

	// Logging corresponds to the JSON schema field "logging".
	Logging SpecDistributionModulesLogging `json:"logging" yaml:"logging" mapstructure:"logging"`

	// Monitoring corresponds to the JSON schema field "monitoring".
	Monitoring *SpecDistributionModulesMonitoring `json:"monitoring,omitempty" yaml:"monitoring,omitempty" mapstructure:"monitoring,omitempty"`

	// Networking corresponds to the JSON schema field "networking".
	Networking *SpecDistributionModulesNetworking `json:"networking,omitempty" yaml:"networking,omitempty" mapstructure:"networking,omitempty"`

	// Policy corresponds to the JSON schema field "policy".
	Policy SpecDistributionModulesPolicy `json:"policy" yaml:"policy" mapstructure:"policy"`

	// Tracing corresponds to the JSON schema field "tracing".
	Tracing *SpecDistributionModulesTracing `json:"tracing,omitempty" yaml:"tracing,omitempty" mapstructure:"tracing,omitempty"`
}

func (*SpecDistributionModules) UnmarshalJSON

func (j *SpecDistributionModules) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAuth

type SpecDistributionModulesAuth struct {
	// The base domain for the auth module
	BaseDomain *string `json:"baseDomain,omitempty" yaml:"baseDomain,omitempty" mapstructure:"baseDomain,omitempty"`

	// Dex corresponds to the JSON schema field "dex".
	Dex *SpecDistributionModulesAuthDex `json:"dex,omitempty" yaml:"dex,omitempty" mapstructure:"dex,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *SpecDistributionModulesAuthOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// Pomerium corresponds to the JSON schema field "pomerium".
	Pomerium SpecDistributionModulesAuthPomerium `json:"pomerium,omitempty" yaml:"pomerium,omitempty" mapstructure:"pomerium,omitempty"`

	// Provider corresponds to the JSON schema field "provider".
	Provider SpecDistributionModulesAuthProvider `json:"provider" yaml:"provider" mapstructure:"provider"`
}

func (*SpecDistributionModulesAuth) UnmarshalJSON

func (j *SpecDistributionModulesAuth) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAuthDex

type SpecDistributionModulesAuthDex struct {
	// The additional static clients for dex
	AdditionalStaticClients []interface{} `` /* 130-byte string literal not displayed */

	// The connectors for dex
	Connectors []interface{} `json:"connectors" yaml:"connectors" mapstructure:"connectors"`

	// Expiry corresponds to the JSON schema field "expiry".
	Expiry *SpecDistributionModulesAuthDexExpiry `json:"expiry,omitempty" yaml:"expiry,omitempty" mapstructure:"expiry,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

func (*SpecDistributionModulesAuthDex) UnmarshalJSON

func (j *SpecDistributionModulesAuthDex) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAuthDexExpiry added in v1.27.8

type SpecDistributionModulesAuthDexExpiry struct {
	// Dex ID tokens expiration time duration (default 24h).
	IdTokens *string `json:"idTokens,omitempty" yaml:"idTokens,omitempty" mapstructure:"idTokens,omitempty"`

	// Dex signing key expiration time duration (default 6h).
	SigningKeys *string `json:"signingKeys,omitempty" yaml:"signingKeys,omitempty" mapstructure:"signingKeys,omitempty"`
}

type SpecDistributionModulesAuthOverrides

type SpecDistributionModulesAuthOverrides struct {
	// Ingresses corresponds to the JSON schema field "ingresses".
	Ingresses SpecDistributionModulesAuthOverridesIngresses `json:"ingresses,omitempty" yaml:"ingresses,omitempty" mapstructure:"ingresses,omitempty"`

	// The node selector to use to place the pods for the auth module
	NodeSelector TypesKubeNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`

	// The tolerations that will be added to the pods for the auth module
	Tolerations []TypesKubeToleration `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
}

type SpecDistributionModulesAuthOverridesIngress

type SpecDistributionModulesAuthOverridesIngress struct {
	// The host of the ingress
	Host string `json:"host" yaml:"host" mapstructure:"host"`

	// The ingress class of the ingress
	IngressClass string `json:"ingressClass" yaml:"ingressClass" mapstructure:"ingressClass"`
}

func (*SpecDistributionModulesAuthOverridesIngress) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAuthOverridesIngresses

type SpecDistributionModulesAuthOverridesIngresses map[string]SpecDistributionModulesAuthOverridesIngress

type SpecDistributionModulesAuthPomerium

type SpecDistributionModulesAuthPomerium interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicy added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicy struct {
	// GatekeeperPolicyManager corresponds to the JSON schema field
	// "gatekeeperPolicyManager".
	GatekeeperPolicyManager []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyGatekeeperPolicyManagerElem `` /* 130-byte string literal not displayed */

	// HubbleUi corresponds to the JSON schema field "hubbleUi".
	HubbleUi []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyHubbleUiElem `json:"hubbleUi,omitempty" yaml:"hubbleUi,omitempty" mapstructure:"hubbleUi,omitempty"`

	// IngressNgnixForecastle corresponds to the JSON schema field
	// "ingressNgnixForecastle".
	IngressNgnixForecastle []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyIngressNgnixForecastleElem `` /* 127-byte string literal not displayed */

	// LoggingMinioConsole corresponds to the JSON schema field "loggingMinioConsole".
	LoggingMinioConsole []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyLoggingMinioConsoleElem `json:"loggingMinioConsole,omitempty" yaml:"loggingMinioConsole,omitempty" mapstructure:"loggingMinioConsole,omitempty"`

	// LoggingOpensearchDashboards corresponds to the JSON schema field
	// "loggingOpensearchDashboards".
	LoggingOpensearchDashboards []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyLoggingOpensearchDashboardsElem `` /* 142-byte string literal not displayed */

	// MonitoringAlertmanager corresponds to the JSON schema field
	// "monitoringAlertmanager".
	MonitoringAlertmanager []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringAlertmanagerElem `` /* 127-byte string literal not displayed */

	// MonitoringGrafana corresponds to the JSON schema field "monitoringGrafana".
	MonitoringGrafana []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringGrafanaElem `json:"monitoringGrafana,omitempty" yaml:"monitoringGrafana,omitempty" mapstructure:"monitoringGrafana,omitempty"`

	// MonitoringMinioConsole corresponds to the JSON schema field
	// "monitoringMinioConsole".
	MonitoringMinioConsole []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringMinioConsoleElem `` /* 127-byte string literal not displayed */

	// MonitoringPrometheus corresponds to the JSON schema field
	// "monitoringPrometheus".
	MonitoringPrometheus []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringPrometheusElem `json:"monitoringPrometheus,omitempty" yaml:"monitoringPrometheus,omitempty" mapstructure:"monitoringPrometheus,omitempty"`

	// TracingMinioConsole corresponds to the JSON schema field "tracingMinioConsole".
	TracingMinioConsole []SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyTracingMinioConsoleElem `json:"tracingMinioConsole,omitempty" yaml:"tracingMinioConsole,omitempty" mapstructure:"tracingMinioConsole,omitempty"`
}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyGatekeeperPolicyManagerElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyGatekeeperPolicyManagerElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyHubbleUiElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyHubbleUiElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyIngressNgnixForecastleElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyIngressNgnixForecastleElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyLoggingMinioConsoleElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyLoggingMinioConsoleElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyLoggingOpensearchDashboardsElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyLoggingOpensearchDashboardsElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringAlertmanagerElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringAlertmanagerElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringGrafanaElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringGrafanaElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringMinioConsoleElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringMinioConsoleElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringPrometheusElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyMonitoringPrometheusElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyTracingMinioConsoleElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumDefaultRoutesPolicyTracingMinioConsoleElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumRoutesElem added in v1.27.7

type SpecDistributionModulesAuthPomeriumRoutesElem map[string]interface{}

type SpecDistributionModulesAuthPomeriumSecrets

type SpecDistributionModulesAuthPomeriumSecrets struct {
	// Cookie Secret is the secret used to encrypt and sign session cookies.
	COOKIESECRET string `json:"COOKIE_SECRET" yaml:"COOKIE_SECRET" mapstructure:"COOKIE_SECRET"`

	// Identity Provider Client Secret is the OAuth 2.0 Secret Identifier retrieved
	// from your identity provider.
	IDPCLIENTSECRET string `json:"IDP_CLIENT_SECRET" yaml:"IDP_CLIENT_SECRET" mapstructure:"IDP_CLIENT_SECRET"`

	// Shared Secret is the base64-encoded, 256-bit key used to mutually authenticate
	// requests between Pomerium services. It's critical that secret keys are random,
	// and stored safely.
	SHAREDSECRET string `json:"SHARED_SECRET" yaml:"SHARED_SECRET" mapstructure:"SHARED_SECRET"`

	// Signing Key is one or more PEM-encoded private keys used to sign a user's
	// attestation JWT, which can be consumed by upstream applications to pass along
	// identifying user information like username, id, and groups.
	SIGNINGKEY string `json:"SIGNING_KEY" yaml:"SIGNING_KEY" mapstructure:"SIGNING_KEY"`
}

func (*SpecDistributionModulesAuthPomeriumSecrets) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAuthPomerium_2 added in v1.27.7

type SpecDistributionModulesAuthPomerium_2 struct {
	// DefaultRoutesPolicy corresponds to the JSON schema field "defaultRoutesPolicy".
	DefaultRoutesPolicy *SpecDistributionModulesAuthPomeriumDefaultRoutesPolicy `json:"defaultRoutesPolicy,omitempty" yaml:"defaultRoutesPolicy,omitempty" mapstructure:"defaultRoutesPolicy,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides_1 `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// DEPRECATED: Use defaultRoutesPolicy and/or routes
	Policy *string `json:"policy,omitempty" yaml:"policy,omitempty" mapstructure:"policy,omitempty"`

	// Routes configuration for pomerium
	Routes []SpecDistributionModulesAuthPomeriumRoutesElem `json:"routes,omitempty" yaml:"routes,omitempty" mapstructure:"routes,omitempty"`

	// Secrets corresponds to the JSON schema field "secrets".
	Secrets SpecDistributionModulesAuthPomeriumSecrets `json:"secrets" yaml:"secrets" mapstructure:"secrets"`
}

func (*SpecDistributionModulesAuthPomerium_2) UnmarshalJSON added in v1.27.7

func (j *SpecDistributionModulesAuthPomerium_2) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAuthProvider

type SpecDistributionModulesAuthProvider struct {
	// BasicAuth corresponds to the JSON schema field "basicAuth".
	BasicAuth *SpecDistributionModulesAuthProviderBasicAuth `json:"basicAuth,omitempty" yaml:"basicAuth,omitempty" mapstructure:"basicAuth,omitempty"`

	// The type of the provider, must be ***none***, ***sso*** or ***basicAuth***
	Type SpecDistributionModulesAuthProviderType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecDistributionModulesAuthProvider) UnmarshalJSON

func (j *SpecDistributionModulesAuthProvider) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAuthProviderBasicAuth

type SpecDistributionModulesAuthProviderBasicAuth struct {
	// The password for the basic auth
	Password string `json:"password" yaml:"password" mapstructure:"password"`

	// The username for the basic auth
	Username string `json:"username" yaml:"username" mapstructure:"username"`
}

func (*SpecDistributionModulesAuthProviderBasicAuth) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAuthProviderType

type SpecDistributionModulesAuthProviderType string
const (
	SpecDistributionModulesAuthProviderTypeBasicAuth SpecDistributionModulesAuthProviderType = "basicAuth"
	SpecDistributionModulesAuthProviderTypeNone      SpecDistributionModulesAuthProviderType = "none"
	SpecDistributionModulesAuthProviderTypeSso       SpecDistributionModulesAuthProviderType = "sso"
)

func (*SpecDistributionModulesAuthProviderType) UnmarshalJSON

func (j *SpecDistributionModulesAuthProviderType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAws

type SpecDistributionModulesAws struct {
	// ClusterAutoscaler corresponds to the JSON schema field "clusterAutoscaler".
	ClusterAutoscaler SpecDistributionModulesAwsClusterAutoscaler `json:"clusterAutoscaler" yaml:"clusterAutoscaler" mapstructure:"clusterAutoscaler"`

	// EbsCsiDriver corresponds to the JSON schema field "ebsCsiDriver".
	EbsCsiDriver SpecDistributionModulesAwsEbsCsiDriver `json:"ebsCsiDriver" yaml:"ebsCsiDriver" mapstructure:"ebsCsiDriver"`

	// EbsSnapshotController corresponds to the JSON schema field
	// "ebsSnapshotController".
	EbsSnapshotController *SpecDistributionModulesAwsEbsSnapshotController `json:"ebsSnapshotController,omitempty" yaml:"ebsSnapshotController,omitempty" mapstructure:"ebsSnapshotController,omitempty"`

	// LoadBalancerController corresponds to the JSON schema field
	// "loadBalancerController".
	LoadBalancerController SpecDistributionModulesAwsLoadBalancerController `json:"loadBalancerController" yaml:"loadBalancerController" mapstructure:"loadBalancerController"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides TypesFuryModuleOverrides `json:"overrides" yaml:"overrides" mapstructure:"overrides"`
}

func (*SpecDistributionModulesAws) UnmarshalJSON

func (j *SpecDistributionModulesAws) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAwsClusterAutoscaler

type SpecDistributionModulesAwsClusterAutoscaler struct {
	// IamRoleArn corresponds to the JSON schema field "iamRoleArn".
	IamRoleArn TypesAwsArn `json:"iamRoleArn" yaml:"iamRoleArn" mapstructure:"iamRoleArn"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverridesWithIAMRoleName `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

func (*SpecDistributionModulesAwsClusterAutoscaler) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAwsEbsCsiDriver

type SpecDistributionModulesAwsEbsCsiDriver struct {
	// IamRoleArn corresponds to the JSON schema field "iamRoleArn".
	IamRoleArn TypesAwsArn `json:"iamRoleArn" yaml:"iamRoleArn" mapstructure:"iamRoleArn"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverridesWithIAMRoleName `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

func (*SpecDistributionModulesAwsEbsCsiDriver) UnmarshalJSON

func (j *SpecDistributionModulesAwsEbsCsiDriver) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesAwsEbsSnapshotController

type SpecDistributionModulesAwsEbsSnapshotController struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

type SpecDistributionModulesAwsLoadBalancerController

type SpecDistributionModulesAwsLoadBalancerController struct {
	// IamRoleArn corresponds to the JSON schema field "iamRoleArn".
	IamRoleArn TypesAwsArn `json:"iamRoleArn" yaml:"iamRoleArn" mapstructure:"iamRoleArn"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverridesWithIAMRoleName `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

func (*SpecDistributionModulesAwsLoadBalancerController) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesDr

type SpecDistributionModulesDr struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// The type of the DR, must be ***none*** or ***eks***
	Type SpecDistributionModulesDrType `json:"type" yaml:"type" mapstructure:"type"`

	// Velero corresponds to the JSON schema field "velero".
	Velero *SpecDistributionModulesDrVelero `json:"velero,omitempty" yaml:"velero,omitempty" mapstructure:"velero,omitempty"`
}

func (*SpecDistributionModulesDr) UnmarshalJSON

func (j *SpecDistributionModulesDr) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesDrType

type SpecDistributionModulesDrType string
const (
	SpecDistributionModulesDrTypeEks  SpecDistributionModulesDrType = "eks"
	SpecDistributionModulesDrTypeNone SpecDistributionModulesDrType = "none"
)

func (*SpecDistributionModulesDrType) UnmarshalJSON

func (j *SpecDistributionModulesDrType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesDrVelero

type SpecDistributionModulesDrVelero struct {
	// Eks corresponds to the JSON schema field "eks".
	Eks SpecDistributionModulesDrVeleroEks `json:"eks" yaml:"eks" mapstructure:"eks"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

func (*SpecDistributionModulesDrVelero) UnmarshalJSON

func (j *SpecDistributionModulesDrVelero) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesDrVeleroEks

type SpecDistributionModulesDrVeleroEks struct {
	// The name of the velero bucket
	BucketName TypesAwsS3BucketName `json:"bucketName" yaml:"bucketName" mapstructure:"bucketName"`

	// IamRoleArn corresponds to the JSON schema field "iamRoleArn".
	IamRoleArn TypesAwsArn `json:"iamRoleArn" yaml:"iamRoleArn" mapstructure:"iamRoleArn"`

	// The region where the velero bucket is located
	Region TypesAwsRegion `json:"region" yaml:"region" mapstructure:"region"`
}

func (*SpecDistributionModulesDrVeleroEks) UnmarshalJSON

func (j *SpecDistributionModulesDrVeleroEks) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngress

type SpecDistributionModulesIngress struct {
	// the base domain used for all the KFD ingresses, if in the nginx dual
	// configuration, it should be the same as the
	// .spec.distribution.modules.ingress.dns.private.name zone
	BaseDomain string `json:"baseDomain" yaml:"baseDomain" mapstructure:"baseDomain"`

	// CertManager corresponds to the JSON schema field "certManager".
	CertManager SpecDistributionModulesIngressCertManager `json:"certManager" yaml:"certManager" mapstructure:"certManager"`

	// Dns corresponds to the JSON schema field "dns".
	Dns SpecDistributionModulesIngressDNS `json:"dns" yaml:"dns" mapstructure:"dns"`

	// ExternalDns corresponds to the JSON schema field "externalDns".
	ExternalDns SpecDistributionModulesIngressExternalDNS `json:"externalDns" yaml:"externalDns" mapstructure:"externalDns"`

	// Forecastle corresponds to the JSON schema field "forecastle".
	Forecastle *SpecDistributionModulesIngressForecastle `json:"forecastle,omitempty" yaml:"forecastle,omitempty" mapstructure:"forecastle,omitempty"`

	// Configurations for the nginx ingress controller module
	Nginx SpecDistributionModulesIngressNginx `json:"nginx" yaml:"nginx" mapstructure:"nginx"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *SpecDistributionModulesIngressOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

func (*SpecDistributionModulesIngress) UnmarshalJSON

func (j *SpecDistributionModulesIngress) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressCertManager

type SpecDistributionModulesIngressCertManager struct {
	// ClusterIssuer corresponds to the JSON schema field "clusterIssuer".
	ClusterIssuer SpecDistributionModulesIngressCertManagerClusterIssuer `json:"clusterIssuer" yaml:"clusterIssuer" mapstructure:"clusterIssuer"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

func (*SpecDistributionModulesIngressCertManager) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressCertManagerClusterIssuer

type SpecDistributionModulesIngressCertManagerClusterIssuer struct {
	// The email of the cluster issuer
	Email string `json:"email" yaml:"email" mapstructure:"email"`

	// The name of the cluster issuer
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// Route53 corresponds to the JSON schema field "route53".
	Route53 SpecDistributionModulesIngressClusterIssuerRoute53 `json:"route53" yaml:"route53" mapstructure:"route53"`

	// The custom solvers configurations
	Solvers []interface{} `json:"solvers,omitempty" yaml:"solvers,omitempty" mapstructure:"solvers,omitempty"`

	// The type of the cluster issuer, must be ***dns01*** or ***http01***
	Type *SpecDistributionModulesIngressCertManagerClusterIssuerType `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}

func (*SpecDistributionModulesIngressCertManagerClusterIssuer) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressCertManagerClusterIssuerType

type SpecDistributionModulesIngressCertManagerClusterIssuerType string
const (
	SpecDistributionModulesIngressCertManagerClusterIssuerTypeDns01  SpecDistributionModulesIngressCertManagerClusterIssuerType = "dns01"
	SpecDistributionModulesIngressCertManagerClusterIssuerTypeHttp01 SpecDistributionModulesIngressCertManagerClusterIssuerType = "http01"
)

func (*SpecDistributionModulesIngressCertManagerClusterIssuerType) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressClusterIssuerRoute53

type SpecDistributionModulesIngressClusterIssuerRoute53 struct {
	// HostedZoneId corresponds to the JSON schema field "hostedZoneId".
	HostedZoneId string `json:"hostedZoneId" yaml:"hostedZoneId" mapstructure:"hostedZoneId"`

	// IamRoleArn corresponds to the JSON schema field "iamRoleArn".
	IamRoleArn TypesAwsArn `json:"iamRoleArn" yaml:"iamRoleArn" mapstructure:"iamRoleArn"`

	// Region corresponds to the JSON schema field "region".
	Region TypesAwsRegion `json:"region" yaml:"region" mapstructure:"region"`
}

func (*SpecDistributionModulesIngressClusterIssuerRoute53) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressDNS

type SpecDistributionModulesIngressDNS struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// Private corresponds to the JSON schema field "private".
	Private SpecDistributionModulesIngressDNSPrivate `json:"private" yaml:"private" mapstructure:"private"`

	// Public corresponds to the JSON schema field "public".
	Public SpecDistributionModulesIngressDNSPublic `json:"public" yaml:"public" mapstructure:"public"`
}

func (*SpecDistributionModulesIngressDNS) UnmarshalJSON

func (j *SpecDistributionModulesIngressDNS) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressDNSPrivate

type SpecDistributionModulesIngressDNSPrivate struct {
	// If true, the private hosted zone will be created
	Create bool `json:"create" yaml:"create" mapstructure:"create"`

	// The name of the private hosted zone
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// VpcId corresponds to the JSON schema field "vpcId".
	VpcId string `json:"vpcId" yaml:"vpcId" mapstructure:"vpcId"`
}

func (*SpecDistributionModulesIngressDNSPrivate) UnmarshalJSON

func (j *SpecDistributionModulesIngressDNSPrivate) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressDNSPublic

type SpecDistributionModulesIngressDNSPublic struct {
	// If true, the public hosted zone will be created
	Create bool `json:"create" yaml:"create" mapstructure:"create"`

	// The name of the public hosted zone
	Name string `json:"name" yaml:"name" mapstructure:"name"`
}

func (*SpecDistributionModulesIngressDNSPublic) UnmarshalJSON

func (j *SpecDistributionModulesIngressDNSPublic) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressExternalDNS

type SpecDistributionModulesIngressExternalDNS struct {
	// PrivateIamRoleArn corresponds to the JSON schema field "privateIamRoleArn".
	PrivateIamRoleArn TypesAwsArn `json:"privateIamRoleArn" yaml:"privateIamRoleArn" mapstructure:"privateIamRoleArn"`

	// PublicIamRoleArn corresponds to the JSON schema field "publicIamRoleArn".
	PublicIamRoleArn TypesAwsArn `json:"publicIamRoleArn" yaml:"publicIamRoleArn" mapstructure:"publicIamRoleArn"`
}

func (*SpecDistributionModulesIngressExternalDNS) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressForecastle

type SpecDistributionModulesIngressForecastle struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

type SpecDistributionModulesIngressNginx

type SpecDistributionModulesIngressNginx struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// Tls corresponds to the JSON schema field "tls".
	Tls *SpecDistributionModulesIngressNginxTLS `json:"tls,omitempty" yaml:"tls,omitempty" mapstructure:"tls,omitempty"`

	// The type of the nginx ingress controller, must be ***none***, ***single*** or
	// ***dual***
	Type SpecDistributionModulesIngressNginxType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecDistributionModulesIngressNginx) UnmarshalJSON

func (j *SpecDistributionModulesIngressNginx) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressNginxTLS

type SpecDistributionModulesIngressNginxTLS struct {
	// The provider of the TLS certificate, must be ***none***, ***certManager*** or
	// ***secret***
	Provider SpecDistributionModulesIngressNginxTLSProvider `json:"provider" yaml:"provider" mapstructure:"provider"`

	// Secret corresponds to the JSON schema field "secret".
	Secret *SpecDistributionModulesIngressNginxTLSSecret `json:"secret,omitempty" yaml:"secret,omitempty" mapstructure:"secret,omitempty"`
}

func (*SpecDistributionModulesIngressNginxTLS) UnmarshalJSON

func (j *SpecDistributionModulesIngressNginxTLS) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressNginxTLSProvider

type SpecDistributionModulesIngressNginxTLSProvider string
const (
	SpecDistributionModulesIngressNginxTLSProviderCertManager SpecDistributionModulesIngressNginxTLSProvider = "certManager"
	SpecDistributionModulesIngressNginxTLSProviderNone        SpecDistributionModulesIngressNginxTLSProvider = "none"
	SpecDistributionModulesIngressNginxTLSProviderSecret      SpecDistributionModulesIngressNginxTLSProvider = "secret"
)

func (*SpecDistributionModulesIngressNginxTLSProvider) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressNginxTLSSecret

type SpecDistributionModulesIngressNginxTLSSecret struct {
	// Ca corresponds to the JSON schema field "ca".
	Ca string `json:"ca" yaml:"ca" mapstructure:"ca"`

	// The certificate file content or you can use the file notation to get the
	// content from a file
	Cert string `json:"cert" yaml:"cert" mapstructure:"cert"`

	// Key corresponds to the JSON schema field "key".
	Key string `json:"key" yaml:"key" mapstructure:"key"`
}

func (*SpecDistributionModulesIngressNginxTLSSecret) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressNginxType

type SpecDistributionModulesIngressNginxType string
const (
	SpecDistributionModulesIngressNginxTypeDual   SpecDistributionModulesIngressNginxType = "dual"
	SpecDistributionModulesIngressNginxTypeNone   SpecDistributionModulesIngressNginxType = "none"
	SpecDistributionModulesIngressNginxTypeSingle SpecDistributionModulesIngressNginxType = "single"
)

func (*SpecDistributionModulesIngressNginxType) UnmarshalJSON

func (j *SpecDistributionModulesIngressNginxType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesIngressOverrides

type SpecDistributionModulesIngressOverrides struct {
	// Ingresses corresponds to the JSON schema field "ingresses".
	Ingresses *SpecDistributionModulesIngressOverridesIngresses `json:"ingresses,omitempty" yaml:"ingresses,omitempty" mapstructure:"ingresses,omitempty"`

	// The node selector to use to place the pods for the ingress module
	NodeSelector TypesKubeNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`

	// The tolerations that will be added to the pods for the ingress module
	Tolerations []TypesKubeToleration `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
}

type SpecDistributionModulesIngressOverridesIngresses

type SpecDistributionModulesIngressOverridesIngresses struct {
	// Forecastle corresponds to the JSON schema field "forecastle".
	Forecastle *TypesFuryModuleOverridesIngress `json:"forecastle,omitempty" yaml:"forecastle,omitempty" mapstructure:"forecastle,omitempty"`
}

type SpecDistributionModulesLogging

type SpecDistributionModulesLogging struct {
	// Cerebro corresponds to the JSON schema field "cerebro".
	Cerebro *SpecDistributionModulesLoggingCerebro `json:"cerebro,omitempty" yaml:"cerebro,omitempty" mapstructure:"cerebro,omitempty"`

	// CustomOutputs corresponds to the JSON schema field "customOutputs".
	CustomOutputs *SpecDistributionModulesLoggingCustomOutputs `json:"customOutputs,omitempty" yaml:"customOutputs,omitempty" mapstructure:"customOutputs,omitempty"`

	// Loki corresponds to the JSON schema field "loki".
	Loki *SpecDistributionModulesLoggingLoki `json:"loki,omitempty" yaml:"loki,omitempty" mapstructure:"loki,omitempty"`

	// Minio corresponds to the JSON schema field "minio".
	Minio *SpecDistributionModulesLoggingMinio `json:"minio,omitempty" yaml:"minio,omitempty" mapstructure:"minio,omitempty"`

	// Opensearch corresponds to the JSON schema field "opensearch".
	Opensearch *SpecDistributionModulesLoggingOpensearch `json:"opensearch,omitempty" yaml:"opensearch,omitempty" mapstructure:"opensearch,omitempty"`

	// Operator corresponds to the JSON schema field "operator".
	Operator *SpecDistributionModulesLoggingOperator `json:"operator,omitempty" yaml:"operator,omitempty" mapstructure:"operator,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// selects the logging stack. Choosing none will disable the centralized logging.
	// Choosing opensearch will deploy and configure the Logging Operator and an
	// OpenSearch cluster (can be single or triple for HA) where the logs will be
	// stored. Choosing loki will use a distributed Grafana Loki instead of OpenSearh
	// for storage. Choosing customOuput the Logging Operator will be deployed and
	// installed but with no local storage, you will have to create the needed Outputs
	// and ClusterOutputs to ship the logs to your desired storage.
	Type SpecDistributionModulesLoggingType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecDistributionModulesLogging) UnmarshalJSON

func (j *SpecDistributionModulesLogging) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesLoggingCerebro

type SpecDistributionModulesLoggingCerebro struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

type SpecDistributionModulesLoggingCustomOutputs added in v1.27.7

type SpecDistributionModulesLoggingCustomOutputs struct {
	// This value defines where the output from Flow will be sent. Will be the `spec`
	// section of the `Output` object. It must be a string (and not a YAML object)
	// following the OutputSpec definition. Use the nullout output to discard the
	// flow.
	Audit string `json:"audit" yaml:"audit" mapstructure:"audit"`

	// This value defines where the output from Flow will be sent. Will be the `spec`
	// section of the `Output` object. It must be a string (and not a YAML object)
	// following the OutputSpec definition. Use the nullout output to discard the
	// flow.
	Errors string `json:"errors" yaml:"errors" mapstructure:"errors"`

	// This value defines where the output from Flow will be sent. Will be the `spec`
	// section of the `Output` object. It must be a string (and not a YAML object)
	// following the OutputSpec definition. Use the nullout output to discard the
	// flow.
	Events string `json:"events" yaml:"events" mapstructure:"events"`

	// This value defines where the output from Flow will be sent. Will be the `spec`
	// section of the `Output` object. It must be a string (and not a YAML object)
	// following the OutputSpec definition. Use the nullout output to discard the
	// flow.
	Infra string `json:"infra" yaml:"infra" mapstructure:"infra"`

	// This value defines where the output from Flow will be sent. Will be the `spec`
	// section of the `Output` object. It must be a string (and not a YAML object)
	// following the OutputSpec definition. Use the nullout output to discard the
	// flow.
	IngressNginx string `json:"ingressNginx" yaml:"ingressNginx" mapstructure:"ingressNginx"`

	// This value defines where the output from Flow will be sent. Will be the `spec`
	// section of the `Output` object. It must be a string (and not a YAML object)
	// following the OutputSpec definition. Use the nullout output to discard the
	// flow.
	Kubernetes string `json:"kubernetes" yaml:"kubernetes" mapstructure:"kubernetes"`

	// This value defines where the output from Flow will be sent. Will be the `spec`
	// section of the `Output` object. It must be a string (and not a YAML object)
	// following the OutputSpec definition. Use the nullout output to discard the
	// flow.
	SystemdCommon string `json:"systemdCommon" yaml:"systemdCommon" mapstructure:"systemdCommon"`

	// This value defines where the output from Flow will be sent. Will be the `spec`
	// section of the `Output` object. It must be a string (and not a YAML object)
	// following the OutputSpec definition. Use the nullout output to discard the
	// flow.
	SystemdEtcd string `json:"systemdEtcd" yaml:"systemdEtcd" mapstructure:"systemdEtcd"`
}

when using the customOutputs logging type, you need to manually specify the spec of the several Output and ClusterOutputs that the Logging Operator expects to forward the logs collected by the pre-defined flows.

func (*SpecDistributionModulesLoggingCustomOutputs) UnmarshalJSON added in v1.27.7

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesLoggingLoki

type SpecDistributionModulesLoggingLoki struct {
	// Backend corresponds to the JSON schema field "backend".
	Backend *SpecDistributionModulesLoggingLokiBackend `json:"backend,omitempty" yaml:"backend,omitempty" mapstructure:"backend,omitempty"`

	// ExternalEndpoint corresponds to the JSON schema field "externalEndpoint".
	ExternalEndpoint *SpecDistributionModulesLoggingLokiExternalEndpoint `json:"externalEndpoint,omitempty" yaml:"externalEndpoint,omitempty" mapstructure:"externalEndpoint,omitempty"`

	// Resources corresponds to the JSON schema field "resources".
	Resources *TypesKubeResources `json:"resources,omitempty" yaml:"resources,omitempty" mapstructure:"resources,omitempty"`
}

type SpecDistributionModulesLoggingLokiBackend added in v1.25.9

type SpecDistributionModulesLoggingLokiBackend string
const (
	SpecDistributionModulesLoggingLokiBackendExternalEndpoint SpecDistributionModulesLoggingLokiBackend = "externalEndpoint"
	SpecDistributionModulesLoggingLokiBackendMinio            SpecDistributionModulesLoggingLokiBackend = "minio"
)

func (*SpecDistributionModulesLoggingLokiBackend) UnmarshalJSON added in v1.25.9

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesLoggingLokiExternalEndpoint added in v1.25.9

type SpecDistributionModulesLoggingLokiExternalEndpoint struct {
	// The access key id of the loki external endpoint
	AccessKeyId *string `json:"accessKeyId,omitempty" yaml:"accessKeyId,omitempty" mapstructure:"accessKeyId,omitempty"`

	// The bucket name of the loki external endpoint
	BucketName *string `json:"bucketName,omitempty" yaml:"bucketName,omitempty" mapstructure:"bucketName,omitempty"`

	// The endpoint of the loki external endpoint
	Endpoint *string `json:"endpoint,omitempty" yaml:"endpoint,omitempty" mapstructure:"endpoint,omitempty"`

	// If true, the loki external endpoint will be insecure
	Insecure *bool `json:"insecure,omitempty" yaml:"insecure,omitempty" mapstructure:"insecure,omitempty"`

	// The secret access key of the loki external endpoint
	SecretAccessKey *string `json:"secretAccessKey,omitempty" yaml:"secretAccessKey,omitempty" mapstructure:"secretAccessKey,omitempty"`
}

type SpecDistributionModulesLoggingMinio

type SpecDistributionModulesLoggingMinio struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// RootUser corresponds to the JSON schema field "rootUser".
	RootUser *SpecDistributionModulesLoggingMinioRootUser `json:"rootUser,omitempty" yaml:"rootUser,omitempty" mapstructure:"rootUser,omitempty"`

	// The PVC size for each minio disk, 6 disks total
	StorageSize *string `json:"storageSize,omitempty" yaml:"storageSize,omitempty" mapstructure:"storageSize,omitempty"`
}

type SpecDistributionModulesLoggingMinioRootUser added in v1.25.9

type SpecDistributionModulesLoggingMinioRootUser struct {
	// The password of the minio root user
	Password *string `json:"password,omitempty" yaml:"password,omitempty" mapstructure:"password,omitempty"`

	// The username of the minio root user
	Username *string `json:"username,omitempty" yaml:"username,omitempty" mapstructure:"username,omitempty"`
}

type SpecDistributionModulesLoggingOpensearch

type SpecDistributionModulesLoggingOpensearch struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// Resources corresponds to the JSON schema field "resources".
	Resources *TypesKubeResources `json:"resources,omitempty" yaml:"resources,omitempty" mapstructure:"resources,omitempty"`

	// The storage size for the opensearch pods
	StorageSize *string `json:"storageSize,omitempty" yaml:"storageSize,omitempty" mapstructure:"storageSize,omitempty"`

	// The type of the opensearch, must be ***single*** or ***triple***
	Type SpecDistributionModulesLoggingOpensearchType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecDistributionModulesLoggingOpensearch) UnmarshalJSON

func (j *SpecDistributionModulesLoggingOpensearch) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesLoggingOpensearchType

type SpecDistributionModulesLoggingOpensearchType string
const (
	SpecDistributionModulesLoggingOpensearchTypeSingle SpecDistributionModulesLoggingOpensearchType = "single"
	SpecDistributionModulesLoggingOpensearchTypeTriple SpecDistributionModulesLoggingOpensearchType = "triple"
)

func (*SpecDistributionModulesLoggingOpensearchType) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesLoggingOperator

type SpecDistributionModulesLoggingOperator struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

type SpecDistributionModulesLoggingType

type SpecDistributionModulesLoggingType string
const (
	SpecDistributionModulesLoggingTypeCustomOutputs SpecDistributionModulesLoggingType = "customOutputs"
	SpecDistributionModulesLoggingTypeLoki          SpecDistributionModulesLoggingType = "loki"
	SpecDistributionModulesLoggingTypeNone          SpecDistributionModulesLoggingType = "none"
	SpecDistributionModulesLoggingTypeOpensearch    SpecDistributionModulesLoggingType = "opensearch"
)

func (*SpecDistributionModulesLoggingType) UnmarshalJSON

func (j *SpecDistributionModulesLoggingType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesMonitoring

type SpecDistributionModulesMonitoring struct {
	// Alertmanager corresponds to the JSON schema field "alertmanager".
	Alertmanager *SpecDistributionModulesMonitoringAlertManager `json:"alertmanager,omitempty" yaml:"alertmanager,omitempty" mapstructure:"alertmanager,omitempty"`

	// BlackboxExporter corresponds to the JSON schema field "blackboxExporter".
	BlackboxExporter *SpecDistributionModulesMonitoringBlackboxExporter `json:"blackboxExporter,omitempty" yaml:"blackboxExporter,omitempty" mapstructure:"blackboxExporter,omitempty"`

	// Grafana corresponds to the JSON schema field "grafana".
	Grafana *SpecDistributionModulesMonitoringGrafana `json:"grafana,omitempty" yaml:"grafana,omitempty" mapstructure:"grafana,omitempty"`

	// KubeStateMetrics corresponds to the JSON schema field "kubeStateMetrics".
	KubeStateMetrics *SpecDistributionModulesMonitoringKubeStateMetrics `json:"kubeStateMetrics,omitempty" yaml:"kubeStateMetrics,omitempty" mapstructure:"kubeStateMetrics,omitempty"`

	// Mimir corresponds to the JSON schema field "mimir".
	Mimir *SpecDistributionModulesMonitoringMimir `json:"mimir,omitempty" yaml:"mimir,omitempty" mapstructure:"mimir,omitempty"`

	// Minio corresponds to the JSON schema field "minio".
	Minio *SpecDistributionModulesMonitoringMinio `json:"minio,omitempty" yaml:"minio,omitempty" mapstructure:"minio,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// Prometheus corresponds to the JSON schema field "prometheus".
	Prometheus *SpecDistributionModulesMonitoringPrometheus `json:"prometheus,omitempty" yaml:"prometheus,omitempty" mapstructure:"prometheus,omitempty"`

	// PrometheusAgent corresponds to the JSON schema field "prometheusAgent".
	PrometheusAgent *SpecDistributionModulesMonitoringPrometheusAgent `json:"prometheusAgent,omitempty" yaml:"prometheusAgent,omitempty" mapstructure:"prometheusAgent,omitempty"`

	// The type of the monitoring, must be ***none***, ***prometheus***,
	// ***prometheusAgent*** or ***mimir***.
	//
	// - `none`: will disable the whole monitoring stack.
	// - `prometheus`: will install Prometheus Operator and a preconfigured Prometheus
	// instance, Alertmanager, a set of alert rules, exporters needed to monitor all
	// the components of the cluster, Grafana and a series of dashboards to view the
	// collected metrics, and more.
	// - `prometheusAgent`: wil install Prometheus operator, an instance of Prometheus
	// in Agent mode (no alerting, no queries, no storage), and all the exporters
	// needed to get metrics for the status of the cluster and the workloads. Useful
	// when having a centralized (remote) Prometheus where to ship the metrics and not
	// storing them locally in the cluster.
	// - `mimir`: will install the same as the `prometheus` option, and in addition
	// Grafana Mimir that allows for longer retention of metrics and the usage of
	// Object Storage.
	Type SpecDistributionModulesMonitoringType `json:"type" yaml:"type" mapstructure:"type"`

	// X509Exporter corresponds to the JSON schema field "x509Exporter".
	X509Exporter *SpecDistributionModulesMonitoringX509Exporter `json:"x509Exporter,omitempty" yaml:"x509Exporter,omitempty" mapstructure:"x509Exporter,omitempty"`
}

configuration for the Monitoring module components

func (*SpecDistributionModulesMonitoring) UnmarshalJSON added in v1.25.9

func (j *SpecDistributionModulesMonitoring) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesMonitoringAlertManager

type SpecDistributionModulesMonitoringAlertManager struct {
	// The webhook url to send deadman switch monitoring, for example to use with
	// healthchecks.io
	DeadManSwitchWebhookUrl *string `` /* 130-byte string literal not displayed */

	// If true, the default rules will be installed
	InstallDefaultRules *bool `json:"installDefaultRules,omitempty" yaml:"installDefaultRules,omitempty" mapstructure:"installDefaultRules,omitempty"`

	// The slack webhook url to send alerts
	SlackWebhookUrl *string `json:"slackWebhookUrl,omitempty" yaml:"slackWebhookUrl,omitempty" mapstructure:"slackWebhookUrl,omitempty"`
}

type SpecDistributionModulesMonitoringBlackboxExporter

type SpecDistributionModulesMonitoringBlackboxExporter struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

type SpecDistributionModulesMonitoringGrafana

type SpecDistributionModulesMonitoringGrafana struct {
	// BasicAuthIngress corresponds to the JSON schema field "basicAuthIngress".
	BasicAuthIngress *bool `json:"basicAuthIngress,omitempty" yaml:"basicAuthIngress,omitempty" mapstructure:"basicAuthIngress,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// UsersRoleAttributePath corresponds to the JSON schema field
	// "usersRoleAttributePath".
	UsersRoleAttributePath *string `` /* 127-byte string literal not displayed */
}

type SpecDistributionModulesMonitoringKubeStateMetrics

type SpecDistributionModulesMonitoringKubeStateMetrics struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

type SpecDistributionModulesMonitoringMimir added in v1.26.4

type SpecDistributionModulesMonitoringMimir struct {
	// The backend for the mimir pods, must be ***minio*** or ***externalEndpoint***
	Backend *SpecDistributionModulesMonitoringMimirBackend `json:"backend,omitempty" yaml:"backend,omitempty" mapstructure:"backend,omitempty"`

	// ExternalEndpoint corresponds to the JSON schema field "externalEndpoint".
	ExternalEndpoint *SpecDistributionModulesMonitoringMimirExternalEndpoint `json:"externalEndpoint,omitempty" yaml:"externalEndpoint,omitempty" mapstructure:"externalEndpoint,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// The retention time for the mimir pods
	RetentionTime *string `json:"retentionTime,omitempty" yaml:"retentionTime,omitempty" mapstructure:"retentionTime,omitempty"`
}

type SpecDistributionModulesMonitoringMimirBackend added in v1.26.4

type SpecDistributionModulesMonitoringMimirBackend string
const (
	SpecDistributionModulesMonitoringMimirBackendExternalEndpoint SpecDistributionModulesMonitoringMimirBackend = "externalEndpoint"
	SpecDistributionModulesMonitoringMimirBackendMinio            SpecDistributionModulesMonitoringMimirBackend = "minio"
)

func (*SpecDistributionModulesMonitoringMimirBackend) UnmarshalJSON added in v1.26.4

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesMonitoringMimirExternalEndpoint added in v1.26.4

type SpecDistributionModulesMonitoringMimirExternalEndpoint struct {
	// The access key id of the external mimir backend
	AccessKeyId *string `json:"accessKeyId,omitempty" yaml:"accessKeyId,omitempty" mapstructure:"accessKeyId,omitempty"`

	// The bucket name of the external mimir backend
	BucketName *string `json:"bucketName,omitempty" yaml:"bucketName,omitempty" mapstructure:"bucketName,omitempty"`

	// The endpoint of the external mimir backend
	Endpoint *string `json:"endpoint,omitempty" yaml:"endpoint,omitempty" mapstructure:"endpoint,omitempty"`

	// If true, the external mimir backend will not use tls
	Insecure *bool `json:"insecure,omitempty" yaml:"insecure,omitempty" mapstructure:"insecure,omitempty"`

	// The secret access key of the external mimir backend
	SecretAccessKey *string `json:"secretAccessKey,omitempty" yaml:"secretAccessKey,omitempty" mapstructure:"secretAccessKey,omitempty"`
}

type SpecDistributionModulesMonitoringMinio added in v1.26.4

type SpecDistributionModulesMonitoringMinio struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// RootUser corresponds to the JSON schema field "rootUser".
	RootUser *SpecDistributionModulesMonitoringMinioRootUser `json:"rootUser,omitempty" yaml:"rootUser,omitempty" mapstructure:"rootUser,omitempty"`

	// The storage size for the minio pods
	StorageSize *string `json:"storageSize,omitempty" yaml:"storageSize,omitempty" mapstructure:"storageSize,omitempty"`
}

type SpecDistributionModulesMonitoringMinioRootUser added in v1.26.4

type SpecDistributionModulesMonitoringMinioRootUser struct {
	// The password for the minio root user
	Password *string `json:"password,omitempty" yaml:"password,omitempty" mapstructure:"password,omitempty"`

	// The username for the minio root user
	Username *string `json:"username,omitempty" yaml:"username,omitempty" mapstructure:"username,omitempty"`
}

type SpecDistributionModulesMonitoringPrometheus

type SpecDistributionModulesMonitoringPrometheus struct {
	// Set this option to ship the collected metrics to a remote Prometheus receiver.
	//
	// `remoteWrite` is an array of objects that allows configuring the
	// [remoteWrite](https://prometheus.io/docs/specs/remote_write_spec/) options for
	// Prometheus. The objects in the array follow [the same schema as in the
	// prometheus
	// operator](https://prometheus-operator.dev/docs/operator/api/#monitoring.coreos.com/v1.RemoteWriteSpec).
	RemoteWrite []SpecDistributionModulesMonitoringPrometheusRemoteWriteElem `json:"remoteWrite,omitempty" yaml:"remoteWrite,omitempty" mapstructure:"remoteWrite,omitempty"`

	// Resources corresponds to the JSON schema field "resources".
	Resources *TypesKubeResources `json:"resources,omitempty" yaml:"resources,omitempty" mapstructure:"resources,omitempty"`

	// The retention size for the k8s Prometheus instance.
	RetentionSize *string `json:"retentionSize,omitempty" yaml:"retentionSize,omitempty" mapstructure:"retentionSize,omitempty"`

	// The retention time for the k8s Prometheus instance.
	RetentionTime *string `json:"retentionTime,omitempty" yaml:"retentionTime,omitempty" mapstructure:"retentionTime,omitempty"`

	// The storage size for the k8s Prometheus instance.
	StorageSize *string `json:"storageSize,omitempty" yaml:"storageSize,omitempty" mapstructure:"storageSize,omitempty"`
}

type SpecDistributionModulesMonitoringPrometheusAgent added in v1.27.7

type SpecDistributionModulesMonitoringPrometheusAgent struct {
	// Set this option to ship the collected metrics to a remote Prometheus receiver.
	//
	// `remoteWrite` is an array of objects that allows configuring the
	// [remoteWrite](https://prometheus.io/docs/specs/remote_write_spec/) options for
	// Prometheus. The objects in the array follow [the same schema as in the
	// prometheus
	// operator](https://prometheus-operator.dev/docs/operator/api/#monitoring.coreos.com/v1.RemoteWriteSpec).
	RemoteWrite []SpecDistributionModulesMonitoringPrometheusAgentRemoteWriteElem `json:"remoteWrite,omitempty" yaml:"remoteWrite,omitempty" mapstructure:"remoteWrite,omitempty"`

	// Resources corresponds to the JSON schema field "resources".
	Resources *TypesKubeResources `json:"resources,omitempty" yaml:"resources,omitempty" mapstructure:"resources,omitempty"`
}

type SpecDistributionModulesMonitoringPrometheusAgentRemoteWriteElem added in v1.27.7

type SpecDistributionModulesMonitoringPrometheusAgentRemoteWriteElem map[string]interface{}

type SpecDistributionModulesMonitoringPrometheusRemoteWriteElem added in v1.27.7

type SpecDistributionModulesMonitoringPrometheusRemoteWriteElem map[string]interface{}

type SpecDistributionModulesMonitoringType added in v1.25.9

type SpecDistributionModulesMonitoringType string
const (
	SpecDistributionModulesMonitoringTypeMimir           SpecDistributionModulesMonitoringType = "mimir"
	SpecDistributionModulesMonitoringTypeNone            SpecDistributionModulesMonitoringType = "none"
	SpecDistributionModulesMonitoringTypePrometheus      SpecDistributionModulesMonitoringType = "prometheus"
	SpecDistributionModulesMonitoringTypePrometheusAgent SpecDistributionModulesMonitoringType = "prometheusAgent"
)

func (*SpecDistributionModulesMonitoringType) UnmarshalJSON added in v1.25.9

func (j *SpecDistributionModulesMonitoringType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesMonitoringX509Exporter

type SpecDistributionModulesMonitoringX509Exporter struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

type SpecDistributionModulesNetworking

type SpecDistributionModulesNetworking struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// TigeraOperator corresponds to the JSON schema field "tigeraOperator".
	TigeraOperator *SpecDistributionModulesNetworkingTigeraOperator `json:"tigeraOperator,omitempty" yaml:"tigeraOperator,omitempty" mapstructure:"tigeraOperator,omitempty"`

	// Type corresponds to the JSON schema field "type".
	Type *SpecDistributionModulesNetworkingType `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}

type SpecDistributionModulesNetworkingTigeraOperator

type SpecDistributionModulesNetworkingTigeraOperator struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

type SpecDistributionModulesNetworkingType

type SpecDistributionModulesNetworkingType string
const SpecDistributionModulesNetworkingTypeNone SpecDistributionModulesNetworkingType = "none"

func (*SpecDistributionModulesNetworkingType) UnmarshalJSON

func (j *SpecDistributionModulesNetworkingType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesPolicy

type SpecDistributionModulesPolicy struct {
	// Gatekeeper corresponds to the JSON schema field "gatekeeper".
	Gatekeeper *SpecDistributionModulesPolicyGatekeeper `json:"gatekeeper,omitempty" yaml:"gatekeeper,omitempty" mapstructure:"gatekeeper,omitempty"`

	// Kyverno corresponds to the JSON schema field "kyverno".
	Kyverno *SpecDistributionModulesPolicyKyverno `json:"kyverno,omitempty" yaml:"kyverno,omitempty" mapstructure:"kyverno,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// The type of security to use, either ***none***, ***gatekeeper*** or
	// ***kyverno***
	Type SpecDistributionModulesPolicyType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecDistributionModulesPolicy) UnmarshalJSON

func (j *SpecDistributionModulesPolicy) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesPolicyGatekeeper

type SpecDistributionModulesPolicyGatekeeper struct {
	// This parameter adds namespaces to Gatekeeper's exemption list, so it will not
	// enforce the constraints on them.
	AdditionalExcludedNamespaces []string `` /* 145-byte string literal not displayed */

	// The enforcement action to use for the gatekeeper module
	EnforcementAction SpecDistributionModulesPolicyGatekeeperEnforcementAction `json:"enforcementAction" yaml:"enforcementAction" mapstructure:"enforcementAction"`

	// If true, the default policies will be installed
	InstallDefaultPolicies bool `json:"installDefaultPolicies" yaml:"installDefaultPolicies" mapstructure:"installDefaultPolicies"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`
}

func (*SpecDistributionModulesPolicyGatekeeper) UnmarshalJSON added in v1.25.10

func (j *SpecDistributionModulesPolicyGatekeeper) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesPolicyGatekeeperEnforcementAction added in v1.25.10

type SpecDistributionModulesPolicyGatekeeperEnforcementAction string
const (
	SpecDistributionModulesPolicyGatekeeperEnforcementActionDeny   SpecDistributionModulesPolicyGatekeeperEnforcementAction = "deny"
	SpecDistributionModulesPolicyGatekeeperEnforcementActionDryrun SpecDistributionModulesPolicyGatekeeperEnforcementAction = "dryrun"
	SpecDistributionModulesPolicyGatekeeperEnforcementActionWarn   SpecDistributionModulesPolicyGatekeeperEnforcementAction = "warn"
)

func (*SpecDistributionModulesPolicyGatekeeperEnforcementAction) UnmarshalJSON added in v1.25.10

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesPolicyKyverno added in v1.25.9

type SpecDistributionModulesPolicyKyverno struct {
	// This parameter adds namespaces to Kyverno's exemption list, so it will not
	// enforce the constraints on them.
	AdditionalExcludedNamespaces []string `` /* 145-byte string literal not displayed */

	// If true, the default policies will be installed
	InstallDefaultPolicies bool `json:"installDefaultPolicies" yaml:"installDefaultPolicies" mapstructure:"installDefaultPolicies"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// The validation failure action to use for the kyverno module
	ValidationFailureAction SpecDistributionModulesPolicyKyvernoValidationFailureAction `json:"validationFailureAction" yaml:"validationFailureAction" mapstructure:"validationFailureAction"`
}

func (*SpecDistributionModulesPolicyKyverno) UnmarshalJSON added in v1.25.10

func (j *SpecDistributionModulesPolicyKyverno) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesPolicyKyvernoValidationFailureAction added in v1.25.10

type SpecDistributionModulesPolicyKyvernoValidationFailureAction string
const (
	SpecDistributionModulesPolicyKyvernoValidationFailureActionAudit   SpecDistributionModulesPolicyKyvernoValidationFailureAction = "audit"
	SpecDistributionModulesPolicyKyvernoValidationFailureActionEnforce SpecDistributionModulesPolicyKyvernoValidationFailureAction = "enforce"
)

func (*SpecDistributionModulesPolicyKyvernoValidationFailureAction) UnmarshalJSON added in v1.25.10

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesPolicyType

type SpecDistributionModulesPolicyType string
const (
	SpecDistributionModulesPolicyTypeGatekeeper SpecDistributionModulesPolicyType = "gatekeeper"
	SpecDistributionModulesPolicyTypeKyverno    SpecDistributionModulesPolicyType = "kyverno"
	SpecDistributionModulesPolicyTypeNone       SpecDistributionModulesPolicyType = "none"
)

func (*SpecDistributionModulesPolicyType) UnmarshalJSON

func (j *SpecDistributionModulesPolicyType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesTracing added in v1.26.4

type SpecDistributionModulesTracing struct {
	// Minio corresponds to the JSON schema field "minio".
	Minio *SpecDistributionModulesTracingMinio `json:"minio,omitempty" yaml:"minio,omitempty" mapstructure:"minio,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// Tempo corresponds to the JSON schema field "tempo".
	Tempo *SpecDistributionModulesTracingTempo `json:"tempo,omitempty" yaml:"tempo,omitempty" mapstructure:"tempo,omitempty"`

	// The type of tracing to use, either ***none*** or ***tempo***
	Type SpecDistributionModulesTracingType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecDistributionModulesTracing) UnmarshalJSON added in v1.26.4

func (j *SpecDistributionModulesTracing) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesTracingMinio added in v1.26.4

type SpecDistributionModulesTracingMinio struct {
	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// RootUser corresponds to the JSON schema field "rootUser".
	RootUser *SpecDistributionModulesTracingMinioRootUser `json:"rootUser,omitempty" yaml:"rootUser,omitempty" mapstructure:"rootUser,omitempty"`

	// The storage size for the minio pods
	StorageSize *string `json:"storageSize,omitempty" yaml:"storageSize,omitempty" mapstructure:"storageSize,omitempty"`
}

type SpecDistributionModulesTracingMinioRootUser added in v1.26.4

type SpecDistributionModulesTracingMinioRootUser struct {
	// The password for the minio root user
	Password *string `json:"password,omitempty" yaml:"password,omitempty" mapstructure:"password,omitempty"`

	// The username for the minio root user
	Username *string `json:"username,omitempty" yaml:"username,omitempty" mapstructure:"username,omitempty"`
}

type SpecDistributionModulesTracingTempo added in v1.26.4

type SpecDistributionModulesTracingTempo struct {
	// The backend for the tempo pods, must be ***minio*** or ***externalEndpoint***
	Backend *SpecDistributionModulesTracingTempoBackend `json:"backend,omitempty" yaml:"backend,omitempty" mapstructure:"backend,omitempty"`

	// ExternalEndpoint corresponds to the JSON schema field "externalEndpoint".
	ExternalEndpoint *SpecDistributionModulesTracingTempoExternalEndpoint `json:"externalEndpoint,omitempty" yaml:"externalEndpoint,omitempty" mapstructure:"externalEndpoint,omitempty"`

	// Overrides corresponds to the JSON schema field "overrides".
	Overrides *TypesFuryModuleComponentOverrides `json:"overrides,omitempty" yaml:"overrides,omitempty" mapstructure:"overrides,omitempty"`

	// The retention time for the tempo pods
	RetentionTime *string `json:"retentionTime,omitempty" yaml:"retentionTime,omitempty" mapstructure:"retentionTime,omitempty"`
}

type SpecDistributionModulesTracingTempoBackend added in v1.26.4

type SpecDistributionModulesTracingTempoBackend string
const (
	SpecDistributionModulesTracingTempoBackendExternalEndpoint SpecDistributionModulesTracingTempoBackend = "externalEndpoint"
	SpecDistributionModulesTracingTempoBackendMinio            SpecDistributionModulesTracingTempoBackend = "minio"
)

func (*SpecDistributionModulesTracingTempoBackend) UnmarshalJSON added in v1.26.4

UnmarshalJSON implements json.Unmarshaler.

type SpecDistributionModulesTracingTempoExternalEndpoint added in v1.26.4

type SpecDistributionModulesTracingTempoExternalEndpoint struct {
	// The access key id of the external tempo backend
	AccessKeyId *string `json:"accessKeyId,omitempty" yaml:"accessKeyId,omitempty" mapstructure:"accessKeyId,omitempty"`

	// The bucket name of the external tempo backend
	BucketName *string `json:"bucketName,omitempty" yaml:"bucketName,omitempty" mapstructure:"bucketName,omitempty"`

	// The endpoint of the external tempo backend
	Endpoint *string `json:"endpoint,omitempty" yaml:"endpoint,omitempty" mapstructure:"endpoint,omitempty"`

	// If true, the external tempo backend will not use tls
	Insecure *bool `json:"insecure,omitempty" yaml:"insecure,omitempty" mapstructure:"insecure,omitempty"`

	// The secret access key of the external tempo backend
	SecretAccessKey *string `json:"secretAccessKey,omitempty" yaml:"secretAccessKey,omitempty" mapstructure:"secretAccessKey,omitempty"`
}

type SpecDistributionModulesTracingType added in v1.26.4

type SpecDistributionModulesTracingType string
const (
	SpecDistributionModulesTracingTypeNone  SpecDistributionModulesTracingType = "none"
	SpecDistributionModulesTracingTypeTempo SpecDistributionModulesTracingType = "tempo"
)

func (*SpecDistributionModulesTracingType) UnmarshalJSON added in v1.26.4

func (j *SpecDistributionModulesTracingType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecInfrastructure

type SpecInfrastructure struct {
	// This key defines the VPC that will be created in AWS
	Vpc *SpecInfrastructureVpc `json:"vpc,omitempty" yaml:"vpc,omitempty" mapstructure:"vpc,omitempty"`

	// This section defines the creation of VPN bastions
	Vpn *SpecInfrastructureVpn `json:"vpn,omitempty" yaml:"vpn,omitempty" mapstructure:"vpn,omitempty"`
}

type SpecInfrastructureVpc

type SpecInfrastructureVpc struct {
	// Network corresponds to the JSON schema field "network".
	Network SpecInfrastructureVpcNetwork `json:"network" yaml:"network" mapstructure:"network"`
}

func (*SpecInfrastructureVpc) UnmarshalJSON

func (j *SpecInfrastructureVpc) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecInfrastructureVpcNetwork

type SpecInfrastructureVpcNetwork struct {
	// This is the CIDR of the VPC that will be created
	Cidr TypesCidr `json:"cidr" yaml:"cidr" mapstructure:"cidr"`

	// SubnetsCidrs corresponds to the JSON schema field "subnetsCidrs".
	SubnetsCidrs SpecInfrastructureVpcNetworkSubnetsCidrs `json:"subnetsCidrs" yaml:"subnetsCidrs" mapstructure:"subnetsCidrs"`
}

func (*SpecInfrastructureVpcNetwork) UnmarshalJSON

func (j *SpecInfrastructureVpcNetwork) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecInfrastructureVpcNetworkSubnetsCidrs

type SpecInfrastructureVpcNetworkSubnetsCidrs struct {
	// These are the CIRDs for the private subnets, where the nodes, the pods, and the
	// private load balancers will be created
	Private []TypesCidr `json:"private" yaml:"private" mapstructure:"private"`

	// These are the CIDRs for the public subnets, where the public load balancers and
	// the VPN servers will be created
	Public []TypesCidr `json:"public" yaml:"public" mapstructure:"public"`
}

func (*SpecInfrastructureVpcNetworkSubnetsCidrs) UnmarshalJSON

func (j *SpecInfrastructureVpcNetworkSubnetsCidrs) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecInfrastructureVpn

type SpecInfrastructureVpn struct {
	// This value defines the prefix that will be used to create the bucket name where
	// the VPN servers will store the states
	BucketNamePrefix *TypesAwsS3BucketNamePrefix `json:"bucketNamePrefix,omitempty" yaml:"bucketNamePrefix,omitempty" mapstructure:"bucketNamePrefix,omitempty"`

	// The dhParamsBits size used for the creation of the .pem file that will be used
	// in the dh openvpn server.conf file
	DhParamsBits *int `json:"dhParamsBits,omitempty" yaml:"dhParamsBits,omitempty" mapstructure:"dhParamsBits,omitempty"`

	// The size of the disk in GB
	DiskSize *int `json:"diskSize,omitempty" yaml:"diskSize,omitempty" mapstructure:"diskSize,omitempty"`

	// Overrides the default IAM user name for the VPN
	IamUserNameOverride *TypesAwsIamRoleName `json:"iamUserNameOverride,omitempty" yaml:"iamUserNameOverride,omitempty" mapstructure:"iamUserNameOverride,omitempty"`

	// The size of the AWS EC2 instance
	InstanceType *string `json:"instanceType,omitempty" yaml:"instanceType,omitempty" mapstructure:"instanceType,omitempty"`

	// The number of instances to create, 0 to skip the creation
	Instances *int `json:"instances,omitempty" yaml:"instances,omitempty" mapstructure:"instances,omitempty"`

	// The username of the account to create in the bastion's operating system
	OperatorName *string `json:"operatorName,omitempty" yaml:"operatorName,omitempty" mapstructure:"operatorName,omitempty"`

	// The port used by the OpenVPN server
	Port *TypesTcpPort `json:"port,omitempty" yaml:"port,omitempty" mapstructure:"port,omitempty"`

	// Ssh corresponds to the JSON schema field "ssh".
	Ssh SpecInfrastructureVpnSsh `json:"ssh" yaml:"ssh" mapstructure:"ssh"`

	// The VPC ID where the VPN servers will be created, required only if
	// .spec.infrastructure.vpc is omitted
	VpcId *TypesAwsVpcId `json:"vpcId,omitempty" yaml:"vpcId,omitempty" mapstructure:"vpcId,omitempty"`

	// The CIDR that will be used to assign IP addresses to the VPN clients when
	// connected
	VpnClientsSubnetCidr TypesCidr `json:"vpnClientsSubnetCidr" yaml:"vpnClientsSubnetCidr" mapstructure:"vpnClientsSubnetCidr"`
}

func (*SpecInfrastructureVpn) UnmarshalJSON

func (j *SpecInfrastructureVpn) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecInfrastructureVpnSsh

type SpecInfrastructureVpnSsh struct {
	// The CIDR enabled in the security group that can access the bastions in SSH
	AllowedFromCidrs []TypesCidr `json:"allowedFromCidrs" yaml:"allowedFromCidrs" mapstructure:"allowedFromCidrs"`

	// The github user name list that will be used to get the ssh public key that will
	// be added as authorized key to the operatorName user
	GithubUsersName []string `json:"githubUsersName" yaml:"githubUsersName" mapstructure:"githubUsersName"`

	// This value defines the public keys that will be added to the bastion's
	// operating system NOTES: Not yet implemented
	PublicKeys []interface{} `json:"publicKeys,omitempty" yaml:"publicKeys,omitempty" mapstructure:"publicKeys,omitempty"`
}

func (*SpecInfrastructureVpnSsh) UnmarshalJSON

func (j *SpecInfrastructureVpnSsh) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetes

type SpecKubernetes struct {
	// ApiServer corresponds to the JSON schema field "apiServer".
	ApiServer SpecKubernetesAPIServer `json:"apiServer" yaml:"apiServer" mapstructure:"apiServer"`

	// AwsAuth corresponds to the JSON schema field "awsAuth".
	AwsAuth *SpecKubernetesAwsAuth `json:"awsAuth,omitempty" yaml:"awsAuth,omitempty" mapstructure:"awsAuth,omitempty"`

	// Overrides the default IAM role name prefix for the EKS cluster
	ClusterIAMRoleNamePrefixOverride *TypesAwsIamRoleNamePrefix `` /* 157-byte string literal not displayed */

	// Optional Kubernetes Cluster log retention in days. Defaults to 90 days.
	LogRetentionDays *int `json:"logRetentionDays,omitempty" yaml:"logRetentionDays,omitempty" mapstructure:"logRetentionDays,omitempty"`

	// Optional list of Kubernetes Cluster log types to enable. Defaults to all types.
	LogsTypes []SpecKubernetesLogsTypesElem `json:"logsTypes,omitempty" yaml:"logsTypes,omitempty" mapstructure:"logsTypes,omitempty"`

	// This key contains the ssh public key that can connect to the nodes via SSH
	// using the ec2-user user
	NodeAllowedSshPublicKey interface{} `json:"nodeAllowedSshPublicKey" yaml:"nodeAllowedSshPublicKey" mapstructure:"nodeAllowedSshPublicKey"`

	// NodePools corresponds to the JSON schema field "nodePools".
	NodePools []SpecKubernetesNodePool `json:"nodePools" yaml:"nodePools" mapstructure:"nodePools"`

	// Either `launch_configurations`, `launch_templates` or `both`. For new clusters
	// use `launch_templates`, for existing cluster you'll need to migrate from
	// `launch_configurations` to `launch_templates` using `both` as interim.
	NodePoolsLaunchKind SpecKubernetesNodePoolsLaunchKind `json:"nodePoolsLaunchKind" yaml:"nodePoolsLaunchKind" mapstructure:"nodePoolsLaunchKind"`

	// This value defines the CIDR that will be used to assign IP addresses to the
	// services
	ServiceIpV4Cidr *TypesCidr `json:"serviceIpV4Cidr,omitempty" yaml:"serviceIpV4Cidr,omitempty" mapstructure:"serviceIpV4Cidr,omitempty"`

	// This value defines the subnet IDs where the EKS cluster will be created,
	// required only if .spec.infrastructure.vpc is omitted
	SubnetIds []TypesAwsSubnetId `json:"subnetIds,omitempty" yaml:"subnetIds,omitempty" mapstructure:"subnetIds,omitempty"`

	// This value defines the VPC ID where the EKS cluster will be created, required
	// only if .spec.infrastructure.vpc is omitted
	VpcId *TypesAwsVpcId `json:"vpcId,omitempty" yaml:"vpcId,omitempty" mapstructure:"vpcId,omitempty"`

	// Overrides the default IAM role name prefix for the EKS workers
	WorkersIAMRoleNamePrefixOverride *TypesAwsIamRoleNamePrefix `` /* 157-byte string literal not displayed */
}

func (*SpecKubernetes) UnmarshalJSON

func (j *SpecKubernetes) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesAPIServer

type SpecKubernetesAPIServer struct {
	// This value defines if the API server will be accessible only from the private
	// subnets
	PrivateAccess bool `json:"privateAccess" yaml:"privateAccess" mapstructure:"privateAccess"`

	// This value defines the CIDRs that will be allowed to access the API server from
	// the private subnets
	PrivateAccessCidrs []TypesCidr `json:"privateAccessCidrs,omitempty" yaml:"privateAccessCidrs,omitempty" mapstructure:"privateAccessCidrs,omitempty"`

	// This value defines if the API server will be accessible from the public subnets
	PublicAccess bool `json:"publicAccess" yaml:"publicAccess" mapstructure:"publicAccess"`

	// This value defines the CIDRs that will be allowed to access the API server from
	// the public subnets
	PublicAccessCidrs []TypesCidr `json:"publicAccessCidrs,omitempty" yaml:"publicAccessCidrs,omitempty" mapstructure:"publicAccessCidrs,omitempty"`
}

func (*SpecKubernetesAPIServer) UnmarshalJSON

func (j *SpecKubernetesAPIServer) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesAwsAuth

type SpecKubernetesAwsAuth struct {
	// This optional array defines additional AWS accounts that will be added to the
	// aws-auth configmap
	AdditionalAccounts []string `json:"additionalAccounts,omitempty" yaml:"additionalAccounts,omitempty" mapstructure:"additionalAccounts,omitempty"`

	// This optional array defines additional IAM roles that will be added to the
	// aws-auth configmap
	Roles []SpecKubernetesAwsAuthRole `json:"roles,omitempty" yaml:"roles,omitempty" mapstructure:"roles,omitempty"`

	// This optional array defines additional IAM users that will be added to the
	// aws-auth configmap
	Users []SpecKubernetesAwsAuthUser `json:"users,omitempty" yaml:"users,omitempty" mapstructure:"users,omitempty"`
}

type SpecKubernetesAwsAuthRole

type SpecKubernetesAwsAuthRole struct {
	// Groups corresponds to the JSON schema field "groups".
	Groups []string `json:"groups" yaml:"groups" mapstructure:"groups"`

	// Rolearn corresponds to the JSON schema field "rolearn".
	Rolearn TypesAwsArn `json:"rolearn" yaml:"rolearn" mapstructure:"rolearn"`

	// Username corresponds to the JSON schema field "username".
	Username string `json:"username" yaml:"username" mapstructure:"username"`
}

func (*SpecKubernetesAwsAuthRole) UnmarshalJSON

func (j *SpecKubernetesAwsAuthRole) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesAwsAuthUser

type SpecKubernetesAwsAuthUser struct {
	// Groups corresponds to the JSON schema field "groups".
	Groups []string `json:"groups" yaml:"groups" mapstructure:"groups"`

	// Userarn corresponds to the JSON schema field "userarn".
	Userarn TypesAwsArn `json:"userarn" yaml:"userarn" mapstructure:"userarn"`

	// Username corresponds to the JSON schema field "username".
	Username string `json:"username" yaml:"username" mapstructure:"username"`
}

func (*SpecKubernetesAwsAuthUser) UnmarshalJSON

func (j *SpecKubernetesAwsAuthUser) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesLogsTypesElem added in v1.25.10

type SpecKubernetesLogsTypesElem string
const (
	SpecKubernetesLogsTypesElemApi               SpecKubernetesLogsTypesElem = "api"
	SpecKubernetesLogsTypesElemAudit             SpecKubernetesLogsTypesElem = "audit"
	SpecKubernetesLogsTypesElemAuthenticator     SpecKubernetesLogsTypesElem = "authenticator"
	SpecKubernetesLogsTypesElemControllerManager SpecKubernetesLogsTypesElem = "controllerManager"
	SpecKubernetesLogsTypesElemScheduler         SpecKubernetesLogsTypesElem = "scheduler"
)

func (*SpecKubernetesLogsTypesElem) UnmarshalJSON added in v1.25.10

func (j *SpecKubernetesLogsTypesElem) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePool

type SpecKubernetesNodePool struct {
	// AdditionalFirewallRules corresponds to the JSON schema field
	// "additionalFirewallRules".
	AdditionalFirewallRules *SpecKubernetesNodePoolAdditionalFirewallRules `` /* 130-byte string literal not displayed */

	// Ami corresponds to the JSON schema field "ami".
	Ami *SpecKubernetesNodePoolAmi `json:"ami,omitempty" yaml:"ami,omitempty" mapstructure:"ami,omitempty"`

	// This optional array defines additional target groups to attach to the instances
	// in the node pool
	AttachedTargetGroups []TypesAwsArn `json:"attachedTargetGroups,omitempty" yaml:"attachedTargetGroups,omitempty" mapstructure:"attachedTargetGroups,omitempty"`

	// The container runtime to use for the nodes
	ContainerRuntime *SpecKubernetesNodePoolContainerRuntime `json:"containerRuntime,omitempty" yaml:"containerRuntime,omitempty" mapstructure:"containerRuntime,omitempty"`

	// Instance corresponds to the JSON schema field "instance".
	Instance SpecKubernetesNodePoolInstance `json:"instance" yaml:"instance" mapstructure:"instance"`

	// Kubernetes labels that will be added to the nodes
	Labels TypesKubeLabels_1 `json:"labels,omitempty" yaml:"labels,omitempty" mapstructure:"labels,omitempty"`

	// The name of the node pool
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// Size corresponds to the JSON schema field "size".
	Size SpecKubernetesNodePoolSize `json:"size" yaml:"size" mapstructure:"size"`

	// This value defines the subnet IDs where the nodes will be created
	SubnetIds []TypesAwsSubnetId `json:"subnetIds,omitempty" yaml:"subnetIds,omitempty" mapstructure:"subnetIds,omitempty"`

	// AWS tags that will be added to the ASG and EC2 instances
	Tags TypesAwsTags `json:"tags,omitempty" yaml:"tags,omitempty" mapstructure:"tags,omitempty"`

	// Kubernetes taints that will be added to the nodes
	Taints TypesKubeTaints `json:"taints,omitempty" yaml:"taints,omitempty" mapstructure:"taints,omitempty"`

	// Type corresponds to the JSON schema field "type".
	Type *SpecKubernetesNodePoolType `json:"type,omitempty" yaml:"type,omitempty" mapstructure:"type,omitempty"`
}

func (*SpecKubernetesNodePool) UnmarshalJSON

func (j *SpecKubernetesNodePool) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlock

type SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlock struct {
	// CidrBlocks corresponds to the JSON schema field "cidrBlocks".
	CidrBlocks []TypesCidr `json:"cidrBlocks" yaml:"cidrBlocks" mapstructure:"cidrBlocks"`

	// Name corresponds to the JSON schema field "name".
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// Ports corresponds to the JSON schema field "ports".
	Ports SpecKubernetesNodePoolAdditionalFirewallRulePorts `json:"ports" yaml:"ports" mapstructure:"ports"`

	// Protocol corresponds to the JSON schema field "protocol".
	Protocol TypesAwsIpProtocol `json:"protocol" yaml:"protocol" mapstructure:"protocol"`

	// Tags corresponds to the JSON schema field "tags".
	Tags TypesAwsTags `json:"tags,omitempty" yaml:"tags,omitempty" mapstructure:"tags,omitempty"`

	// Type corresponds to the JSON schema field "type".
	Type SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlockType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlock) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlockType

type SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlockType string
const (
	SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlockTypeEgress  SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlockType = "egress"
	SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlockTypeIngress SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlockType = "ingress"
)

func (*SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlockType) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAdditionalFirewallRulePorts

type SpecKubernetesNodePoolAdditionalFirewallRulePorts struct {
	// From corresponds to the JSON schema field "from".
	From TypesTcpPort `json:"from" yaml:"from" mapstructure:"from"`

	// To corresponds to the JSON schema field "to".
	To TypesTcpPort `json:"to" yaml:"to" mapstructure:"to"`
}

func (*SpecKubernetesNodePoolAdditionalFirewallRulePorts) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAdditionalFirewallRuleSelf

type SpecKubernetesNodePoolAdditionalFirewallRuleSelf struct {
	// The name of the FW rule
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// Ports corresponds to the JSON schema field "ports".
	Ports SpecKubernetesNodePoolAdditionalFirewallRulePorts `json:"ports" yaml:"ports" mapstructure:"ports"`

	// The protocol of the FW rule
	Protocol TypesAwsIpProtocol `json:"protocol" yaml:"protocol" mapstructure:"protocol"`

	// If true, the source will be the security group itself
	Self bool `json:"self" yaml:"self" mapstructure:"self"`

	// The tags of the FW rule
	Tags TypesAwsTags `json:"tags,omitempty" yaml:"tags,omitempty" mapstructure:"tags,omitempty"`

	// The type of the FW rule can be ingress or egress
	Type SpecKubernetesNodePoolAdditionalFirewallRuleSelfType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecKubernetesNodePoolAdditionalFirewallRuleSelf) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAdditionalFirewallRuleSelfType

type SpecKubernetesNodePoolAdditionalFirewallRuleSelfType string
const (
	SpecKubernetesNodePoolAdditionalFirewallRuleSelfTypeEgress  SpecKubernetesNodePoolAdditionalFirewallRuleSelfType = "egress"
	SpecKubernetesNodePoolAdditionalFirewallRuleSelfTypeIngress SpecKubernetesNodePoolAdditionalFirewallRuleSelfType = "ingress"
)

func (*SpecKubernetesNodePoolAdditionalFirewallRuleSelfType) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupId

type SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupId struct {
	// The name of the FW rule
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// Ports corresponds to the JSON schema field "ports".
	Ports SpecKubernetesNodePoolAdditionalFirewallRulePorts `json:"ports" yaml:"ports" mapstructure:"ports"`

	// The protocol of the FW rule
	Protocol TypesAwsIpProtocol `json:"protocol" yaml:"protocol" mapstructure:"protocol"`

	// The source security group ID
	SourceSecurityGroupId string `json:"sourceSecurityGroupId" yaml:"sourceSecurityGroupId" mapstructure:"sourceSecurityGroupId"`

	// The tags of the FW rule
	Tags TypesAwsTags `json:"tags,omitempty" yaml:"tags,omitempty" mapstructure:"tags,omitempty"`

	// The type of the FW rule can be ingress or egress
	Type SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupIdType `json:"type" yaml:"type" mapstructure:"type"`
}

func (*SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupId) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupIdType

type SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupIdType string
const (
	SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupIdTypeEgress  SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupIdType = "egress"
	SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupIdTypeIngress SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupIdType = "ingress"
)

func (*SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupIdType) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAdditionalFirewallRules

type SpecKubernetesNodePoolAdditionalFirewallRules struct {
	// The CIDR blocks for the FW rule. At the moment the first item of the list will
	// be used, others will be ignored.
	CidrBlocks []SpecKubernetesNodePoolAdditionalFirewallRuleCidrBlock `json:"cidrBlocks,omitempty" yaml:"cidrBlocks,omitempty" mapstructure:"cidrBlocks,omitempty"`

	// Self corresponds to the JSON schema field "self".
	Self []SpecKubernetesNodePoolAdditionalFirewallRuleSelf `json:"self,omitempty" yaml:"self,omitempty" mapstructure:"self,omitempty"`

	// SourceSecurityGroupId corresponds to the JSON schema field
	// "sourceSecurityGroupId".
	SourceSecurityGroupId []SpecKubernetesNodePoolAdditionalFirewallRuleSourceSecurityGroupId `json:"sourceSecurityGroupId,omitempty" yaml:"sourceSecurityGroupId,omitempty" mapstructure:"sourceSecurityGroupId,omitempty"`
}

func (*SpecKubernetesNodePoolAdditionalFirewallRules) UnmarshalJSON

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolAmi

type SpecKubernetesNodePoolAmi struct {
	// The AMI ID to use for the nodes
	Id string `json:"id" yaml:"id" mapstructure:"id"`

	// The owner of the AMI
	Owner string `json:"owner" yaml:"owner" mapstructure:"owner"`
}

func (*SpecKubernetesNodePoolAmi) UnmarshalJSON

func (j *SpecKubernetesNodePoolAmi) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolContainerRuntime

type SpecKubernetesNodePoolContainerRuntime string
const (
	SpecKubernetesNodePoolContainerRuntimeContainerd SpecKubernetesNodePoolContainerRuntime = "containerd"
	SpecKubernetesNodePoolContainerRuntimeDocker     SpecKubernetesNodePoolContainerRuntime = "docker"
)

func (*SpecKubernetesNodePoolContainerRuntime) UnmarshalJSON

func (j *SpecKubernetesNodePoolContainerRuntime) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolInstance

type SpecKubernetesNodePoolInstance struct {
	// MaxPods corresponds to the JSON schema field "maxPods".
	MaxPods *int `json:"maxPods,omitempty" yaml:"maxPods,omitempty" mapstructure:"maxPods,omitempty"`

	// If true, the nodes will be created as spot instances
	Spot *bool `json:"spot,omitempty" yaml:"spot,omitempty" mapstructure:"spot,omitempty"`

	// The instance type to use for the nodes
	Type string `json:"type" yaml:"type" mapstructure:"type"`

	// The size of the disk in GB
	VolumeSize *int `json:"volumeSize,omitempty" yaml:"volumeSize,omitempty" mapstructure:"volumeSize,omitempty"`

	// VolumeType corresponds to the JSON schema field "volumeType".
	VolumeType *SpecKubernetesNodePoolInstanceVolumeType `json:"volumeType,omitempty" yaml:"volumeType,omitempty" mapstructure:"volumeType,omitempty"`
}

func (*SpecKubernetesNodePoolInstance) UnmarshalJSON

func (j *SpecKubernetesNodePoolInstance) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolInstanceVolumeType added in v1.27.7

type SpecKubernetesNodePoolInstanceVolumeType string
const (
	SpecKubernetesNodePoolInstanceVolumeTypeGp2      SpecKubernetesNodePoolInstanceVolumeType = "gp2"
	SpecKubernetesNodePoolInstanceVolumeTypeGp3      SpecKubernetesNodePoolInstanceVolumeType = "gp3"
	SpecKubernetesNodePoolInstanceVolumeTypeIo1      SpecKubernetesNodePoolInstanceVolumeType = "io1"
	SpecKubernetesNodePoolInstanceVolumeTypeStandard SpecKubernetesNodePoolInstanceVolumeType = "standard"
)

func (*SpecKubernetesNodePoolInstanceVolumeType) UnmarshalJSON added in v1.27.7

func (j *SpecKubernetesNodePoolInstanceVolumeType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolSize

type SpecKubernetesNodePoolSize struct {
	// The maximum number of nodes in the node pool
	Max int `json:"max" yaml:"max" mapstructure:"max"`

	// The minimum number of nodes in the node pool
	Min int `json:"min" yaml:"min" mapstructure:"min"`
}

func (*SpecKubernetesNodePoolSize) UnmarshalJSON

func (j *SpecKubernetesNodePoolSize) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolType added in v1.25.9

type SpecKubernetesNodePoolType string
const (
	SpecKubernetesNodePoolTypeEksManaged  SpecKubernetesNodePoolType = "eks-managed"
	SpecKubernetesNodePoolTypeSelfManaged SpecKubernetesNodePoolType = "self-managed"
)

func (*SpecKubernetesNodePoolType) UnmarshalJSON added in v1.25.9

func (j *SpecKubernetesNodePoolType) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecKubernetesNodePoolsLaunchKind

type SpecKubernetesNodePoolsLaunchKind string
const (
	SpecKubernetesNodePoolsLaunchKindBoth                 SpecKubernetesNodePoolsLaunchKind = "both"
	SpecKubernetesNodePoolsLaunchKindLaunchConfigurations SpecKubernetesNodePoolsLaunchKind = "launch_configurations"
	SpecKubernetesNodePoolsLaunchKindLaunchTemplates      SpecKubernetesNodePoolsLaunchKind = "launch_templates"
)

func (*SpecKubernetesNodePoolsLaunchKind) UnmarshalJSON

func (j *SpecKubernetesNodePoolsLaunchKind) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecPlugins added in v1.25.8

type SpecPlugins struct {
	// Helm corresponds to the JSON schema field "helm".
	Helm *SpecPluginsHelm `json:"helm,omitempty" yaml:"helm,omitempty" mapstructure:"helm,omitempty"`

	// Kustomize corresponds to the JSON schema field "kustomize".
	Kustomize SpecPluginsKustomize `json:"kustomize,omitempty" yaml:"kustomize,omitempty" mapstructure:"kustomize,omitempty"`
}

type SpecPluginsHelm added in v1.25.8

type SpecPluginsHelm struct {
	// Releases corresponds to the JSON schema field "releases".
	Releases SpecPluginsHelmReleases `json:"releases,omitempty" yaml:"releases,omitempty" mapstructure:"releases,omitempty"`

	// Repositories corresponds to the JSON schema field "repositories".
	Repositories SpecPluginsHelmRepositories `json:"repositories,omitempty" yaml:"repositories,omitempty" mapstructure:"repositories,omitempty"`
}

type SpecPluginsHelmReleases added in v1.25.8

type SpecPluginsHelmReleases []struct {
	// The chart of the release
	Chart string `json:"chart" yaml:"chart" mapstructure:"chart"`

	// The name of the release
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// The namespace of the release
	Namespace string `json:"namespace" yaml:"namespace" mapstructure:"namespace"`

	// Set corresponds to the JSON schema field "set".
	Set []SpecPluginsHelmReleasesElemSetElem `json:"set,omitempty" yaml:"set,omitempty" mapstructure:"set,omitempty"`

	// The values of the release
	Values []string `json:"values,omitempty" yaml:"values,omitempty" mapstructure:"values,omitempty"`

	// The version of the release
	Version *string `json:"version,omitempty" yaml:"version,omitempty" mapstructure:"version,omitempty"`
}

type SpecPluginsHelmReleasesElemSetElem added in v1.25.8

type SpecPluginsHelmReleasesElemSetElem struct {
	// The name of the set
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// The value of the set
	Value string `json:"value" yaml:"value" mapstructure:"value"`
}

func (*SpecPluginsHelmReleasesElemSetElem) UnmarshalJSON added in v1.25.8

func (j *SpecPluginsHelmReleasesElemSetElem) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecPluginsHelmRepositories added in v1.25.8

type SpecPluginsHelmRepositories []struct {
	// The name of the repository
	Name string `json:"name" yaml:"name" mapstructure:"name"`

	// The url of the repository
	Url string `json:"url" yaml:"url" mapstructure:"url"`
}

type SpecPluginsKustomize added in v1.25.8

type SpecPluginsKustomize []struct {
	// The folder of the kustomize plugin
	Folder string `json:"folder" yaml:"folder" mapstructure:"folder"`

	// The name of the kustomize plugin
	Name string `json:"name" yaml:"name" mapstructure:"name"`
}

type SpecToolsConfiguration

type SpecToolsConfiguration struct {
	// Terraform corresponds to the JSON schema field "terraform".
	Terraform SpecToolsConfigurationTerraform `json:"terraform" yaml:"terraform" mapstructure:"terraform"`
}

func (*SpecToolsConfiguration) UnmarshalJSON

func (j *SpecToolsConfiguration) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecToolsConfigurationTerraform

type SpecToolsConfigurationTerraform struct {
	// State corresponds to the JSON schema field "state".
	State SpecToolsConfigurationTerraformState `json:"state" yaml:"state" mapstructure:"state"`
}

func (*SpecToolsConfigurationTerraform) UnmarshalJSON

func (j *SpecToolsConfigurationTerraform) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecToolsConfigurationTerraformState

type SpecToolsConfigurationTerraformState struct {
	// S3 corresponds to the JSON schema field "s3".
	S3 SpecToolsConfigurationTerraformStateS3 `json:"s3" yaml:"s3" mapstructure:"s3"`
}

func (*SpecToolsConfigurationTerraformState) UnmarshalJSON

func (j *SpecToolsConfigurationTerraformState) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SpecToolsConfigurationTerraformStateS3

type SpecToolsConfigurationTerraformStateS3 struct {
	// This value defines which bucket will be used to store all the states
	BucketName TypesAwsS3BucketName `json:"bucketName" yaml:"bucketName" mapstructure:"bucketName"`

	// This value defines which folder will be used to store all the states inside the
	// bucket
	KeyPrefix TypesAwsS3KeyPrefix `json:"keyPrefix" yaml:"keyPrefix" mapstructure:"keyPrefix"`

	// This value defines in which region the bucket is located
	Region TypesAwsRegion `json:"region" yaml:"region" mapstructure:"region"`

	// This value defines if the region of the bucket should be validated or not by
	// Terraform, useful when using a bucket in a recently added region
	SkipRegionValidation *bool `json:"skipRegionValidation,omitempty" yaml:"skipRegionValidation,omitempty" mapstructure:"skipRegionValidation,omitempty"`
}

func (*SpecToolsConfigurationTerraformStateS3) UnmarshalJSON

func (j *SpecToolsConfigurationTerraformStateS3) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type TypesAwsArn

type TypesAwsArn string

type TypesAwsIamRoleName added in v1.27.7

type TypesAwsIamRoleName string

type TypesAwsIamRoleNamePrefix added in v1.27.7

type TypesAwsIamRoleNamePrefix string

type TypesAwsIpProtocol

type TypesAwsIpProtocol string

type TypesAwsRegion

type TypesAwsRegion string
const (
	TypesAwsRegionAfSouth1     TypesAwsRegion = "af-south-1"
	TypesAwsRegionApEast1      TypesAwsRegion = "ap-east-1"
	TypesAwsRegionApNortheast1 TypesAwsRegion = "ap-northeast-1"
	TypesAwsRegionApNortheast2 TypesAwsRegion = "ap-northeast-2"
	TypesAwsRegionApNortheast3 TypesAwsRegion = "ap-northeast-3"
	TypesAwsRegionApSouth1     TypesAwsRegion = "ap-south-1"
	TypesAwsRegionApSouth2     TypesAwsRegion = "ap-south-2"
	TypesAwsRegionApSoutheast1 TypesAwsRegion = "ap-southeast-1"
	TypesAwsRegionApSoutheast2 TypesAwsRegion = "ap-southeast-2"
	TypesAwsRegionApSoutheast3 TypesAwsRegion = "ap-southeast-3"
	TypesAwsRegionApSoutheast4 TypesAwsRegion = "ap-southeast-4"
	TypesAwsRegionCaCentral1   TypesAwsRegion = "ca-central-1"
	TypesAwsRegionEuCentral1   TypesAwsRegion = "eu-central-1"
	TypesAwsRegionEuCentral2   TypesAwsRegion = "eu-central-2"
	TypesAwsRegionEuNorth1     TypesAwsRegion = "eu-north-1"
	TypesAwsRegionEuSouth1     TypesAwsRegion = "eu-south-1"
	TypesAwsRegionEuSouth2     TypesAwsRegion = "eu-south-2"
	TypesAwsRegionEuWest1      TypesAwsRegion = "eu-west-1"
	TypesAwsRegionEuWest2      TypesAwsRegion = "eu-west-2"
	TypesAwsRegionEuWest3      TypesAwsRegion = "eu-west-3"
	TypesAwsRegionMeCentral1   TypesAwsRegion = "me-central-1"
	TypesAwsRegionMeSouth1     TypesAwsRegion = "me-south-1"
	TypesAwsRegionSaEast1      TypesAwsRegion = "sa-east-1"
	TypesAwsRegionUsEast1      TypesAwsRegion = "us-east-1"
	TypesAwsRegionUsEast2      TypesAwsRegion = "us-east-2"
	TypesAwsRegionUsGovEast1   TypesAwsRegion = "us-gov-east-1"
	TypesAwsRegionUsGovWest1   TypesAwsRegion = "us-gov-west-1"
	TypesAwsRegionUsWest1      TypesAwsRegion = "us-west-1"
	TypesAwsRegionUsWest2      TypesAwsRegion = "us-west-2"
)

func (*TypesAwsRegion) UnmarshalJSON

func (j *TypesAwsRegion) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type TypesAwsS3BucketName

type TypesAwsS3BucketName string

type TypesAwsS3BucketNamePrefix added in v1.25.6

type TypesAwsS3BucketNamePrefix string

type TypesAwsS3KeyPrefix

type TypesAwsS3KeyPrefix string

type TypesAwsSshPubKey

type TypesAwsSshPubKey string

type TypesAwsSubnetId

type TypesAwsSubnetId string

type TypesAwsTags

type TypesAwsTags map[string]string

type TypesAwsVpcId

type TypesAwsVpcId string

type TypesCidr

type TypesCidr string

type TypesEnvRef

type TypesEnvRef string

type TypesFileRef

type TypesFileRef string

type TypesFuryModuleComponentOverrides

type TypesFuryModuleComponentOverrides struct {
	// The node selector to use to place the pods for the minio module
	NodeSelector TypesKubeNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`

	// The tolerations that will be added to the pods for the cert-manager module
	Tolerations []TypesKubeToleration `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
}

type TypesFuryModuleComponentOverridesWithIAMRoleName added in v1.27.7

type TypesFuryModuleComponentOverridesWithIAMRoleName struct {
	// IamRoleName corresponds to the JSON schema field "iamRoleName".
	IamRoleName *TypesAwsIamRoleName `json:"iamRoleName,omitempty" yaml:"iamRoleName,omitempty" mapstructure:"iamRoleName,omitempty"`

	// The node selector to use to place the pods for the load balancer controller
	// module
	NodeSelector TypesKubeNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`

	// The tolerations that will be added to the pods for the cluster autoscaler
	// module
	Tolerations []TypesKubeToleration `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
}

type TypesFuryModuleComponentOverrides_1 added in v1.27.7

type TypesFuryModuleComponentOverrides_1 struct {
	// NodeSelector corresponds to the JSON schema field "nodeSelector".
	NodeSelector TypesKubeNodeSelector_1 `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`

	// Tolerations corresponds to the JSON schema field "tolerations".
	Tolerations []TypesKubeToleration_1 `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
}

type TypesFuryModuleOverrides

type TypesFuryModuleOverrides struct {
	// Ingresses corresponds to the JSON schema field "ingresses".
	Ingresses TypesFuryModuleOverridesIngresses `json:"ingresses,omitempty" yaml:"ingresses,omitempty" mapstructure:"ingresses,omitempty"`

	// The node selector to use to place the pods for the dr module
	NodeSelector TypesKubeNodeSelector `json:"nodeSelector,omitempty" yaml:"nodeSelector,omitempty" mapstructure:"nodeSelector,omitempty"`

	// The tolerations that will be added to the pods for the monitoring module
	Tolerations []TypesKubeToleration `json:"tolerations,omitempty" yaml:"tolerations,omitempty" mapstructure:"tolerations,omitempty"`
}

type TypesFuryModuleOverridesIngress

type TypesFuryModuleOverridesIngress struct {
	// If true, the ingress will not have authentication
	DisableAuth *bool `json:"disableAuth,omitempty" yaml:"disableAuth,omitempty" mapstructure:"disableAuth,omitempty"`

	// The host of the ingress
	Host *string `json:"host,omitempty" yaml:"host,omitempty" mapstructure:"host,omitempty"`

	// The ingress class of the ingress
	IngressClass *string `json:"ingressClass,omitempty" yaml:"ingressClass,omitempty" mapstructure:"ingressClass,omitempty"`
}

type TypesFuryModuleOverridesIngresses

type TypesFuryModuleOverridesIngresses map[string]TypesFuryModuleOverridesIngress

type TypesIpAddress

type TypesIpAddress string

type TypesKubeLabels

type TypesKubeLabels map[string]string

type TypesKubeLabels_1 added in v1.26.6

type TypesKubeLabels_1 map[string]string

type TypesKubeNodeSelector

type TypesKubeNodeSelector map[string]string

type TypesKubeNodeSelector_1 added in v1.27.7

type TypesKubeNodeSelector_1 map[string]string

type TypesKubeResources

type TypesKubeResources struct {
	// Limits corresponds to the JSON schema field "limits".
	Limits *TypesKubeResourcesLimits `json:"limits,omitempty" yaml:"limits,omitempty" mapstructure:"limits,omitempty"`

	// Requests corresponds to the JSON schema field "requests".
	Requests *TypesKubeResourcesRequests `json:"requests,omitempty" yaml:"requests,omitempty" mapstructure:"requests,omitempty"`
}

type TypesKubeResourcesLimits

type TypesKubeResourcesLimits struct {
	// The cpu limit for the opensearch pods
	Cpu *string `json:"cpu,omitempty" yaml:"cpu,omitempty" mapstructure:"cpu,omitempty"`

	// The memory limit for the opensearch pods
	Memory *string `json:"memory,omitempty" yaml:"memory,omitempty" mapstructure:"memory,omitempty"`
}

type TypesKubeResourcesRequests

type TypesKubeResourcesRequests struct {
	// The cpu request for the prometheus pods
	Cpu *string `json:"cpu,omitempty" yaml:"cpu,omitempty" mapstructure:"cpu,omitempty"`

	// The memory request for the opensearch pods
	Memory *string `json:"memory,omitempty" yaml:"memory,omitempty" mapstructure:"memory,omitempty"`
}

type TypesKubeTaints

type TypesKubeTaints []string

type TypesKubeToleration

type TypesKubeToleration struct {
	// Effect corresponds to the JSON schema field "effect".
	Effect TypesKubeTolerationEffect `json:"effect" yaml:"effect" mapstructure:"effect"`

	// The key of the toleration
	Key string `json:"key" yaml:"key" mapstructure:"key"`

	// Operator corresponds to the JSON schema field "operator".
	Operator *TypesKubeTolerationOperator `json:"operator,omitempty" yaml:"operator,omitempty" mapstructure:"operator,omitempty"`

	// The value of the toleration
	Value *string `json:"value,omitempty" yaml:"value,omitempty" mapstructure:"value,omitempty"`
}

func (*TypesKubeToleration) UnmarshalJSON

func (j *TypesKubeToleration) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type TypesKubeTolerationEffect

type TypesKubeTolerationEffect string
const (
	TypesKubeTolerationEffectNoExecute        TypesKubeTolerationEffect = "NoExecute"
	TypesKubeTolerationEffectNoSchedule       TypesKubeTolerationEffect = "NoSchedule"
	TypesKubeTolerationEffectPreferNoSchedule TypesKubeTolerationEffect = "PreferNoSchedule"
)

func (*TypesKubeTolerationEffect) UnmarshalJSON

func (j *TypesKubeTolerationEffect) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type TypesKubeTolerationEffect_1 added in v1.27.7

type TypesKubeTolerationEffect_1 string
const (
	TypesKubeTolerationEffect_1_NoExecute        TypesKubeTolerationEffect_1 = "NoExecute"
	TypesKubeTolerationEffect_1_NoSchedule       TypesKubeTolerationEffect_1 = "NoSchedule"
	TypesKubeTolerationEffect_1_PreferNoSchedule TypesKubeTolerationEffect_1 = "PreferNoSchedule"
)

func (*TypesKubeTolerationEffect_1) UnmarshalJSON added in v1.27.7

func (j *TypesKubeTolerationEffect_1) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type TypesKubeTolerationOperator added in v1.25.5

type TypesKubeTolerationOperator string
const (
	TypesKubeTolerationOperatorEqual  TypesKubeTolerationOperator = "Equal"
	TypesKubeTolerationOperatorExists TypesKubeTolerationOperator = "Exists"
)

func (*TypesKubeTolerationOperator) UnmarshalJSON added in v1.25.5

func (j *TypesKubeTolerationOperator) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type TypesKubeTolerationOperator_1 added in v1.27.7

type TypesKubeTolerationOperator_1 string
const (
	TypesKubeTolerationOperator_1_Equal  TypesKubeTolerationOperator_1 = "Equal"
	TypesKubeTolerationOperator_1_Exists TypesKubeTolerationOperator_1 = "Exists"
)

func (*TypesKubeTolerationOperator_1) UnmarshalJSON added in v1.27.7

func (j *TypesKubeTolerationOperator_1) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type TypesKubeToleration_1 added in v1.27.7

type TypesKubeToleration_1 struct {
	// Effect corresponds to the JSON schema field "effect".
	Effect TypesKubeTolerationEffect_1 `json:"effect" yaml:"effect" mapstructure:"effect"`

	// Key corresponds to the JSON schema field "key".
	Key string `json:"key" yaml:"key" mapstructure:"key"`

	// Operator corresponds to the JSON schema field "operator".
	Operator *TypesKubeTolerationOperator_1 `json:"operator,omitempty" yaml:"operator,omitempty" mapstructure:"operator,omitempty"`

	// Value corresponds to the JSON schema field "value".
	Value string `json:"value" yaml:"value" mapstructure:"value"`
}

func (*TypesKubeToleration_1) UnmarshalJSON added in v1.27.7

func (j *TypesKubeToleration_1) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler.

type TypesSemVer

type TypesSemVer string

type TypesSshPubKey

type TypesSshPubKey string

type TypesTcpPort

type TypesTcpPort int

type TypesUri

type TypesUri string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL