extconfig

package
v2.34.0 Latest Latest
Warning

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

Go to latest
Published: Jan 30, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

+kubebuilder:validation:Optional

Index

Constants

View Source
const (
	// ExtensionConfigKey is the key for the extension configuration.
	ExtensionConfigKey = "fluxninja"
)

Variables

This section is empty.

Functions

func Module

func Module() fx.Option

Module provides the FluxNinja extension configuration.

Types

type ClientConfig

type ClientConfig struct {
	// HTTP client settings.
	HTTPClient http.HTTPClientConfig `json:"http"`
	// gRPC client settings.
	GRPCClient grpc.GRPCClientConfig `json:"grpc"`
}

ClientConfig is the client configuration. swagger:model +kubebuilder:object:generate=true

func (*ClientConfig) DeepCopy

func (in *ClientConfig) DeepCopy() *ClientConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientConfig.

func (*ClientConfig) DeepCopyInto

func (in *ClientConfig) DeepCopyInto(out *ClientConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FluxNinjaExtensionConfig

type FluxNinjaExtensionConfig struct {
	// Address to gRPC or HTTP(s) server listening in agent service.
	// For connecting to Aperture Cloud Controller, the `endpoint` should be a `grpc/http2` address.
	// For self-hosted controller, the HTTP protocol address can start with `http(s)://`.
	Endpoint string `json:"endpoint" validate:"omitempty,hostname_port|url|fqdn"`
	// API Key for this agent. If this key is not set, the extension won't be enabled.
	APIKey string `json:"api_key"`
	// Deprecated: v3.0.0. Use APIKey instead
	AgentAPIKey string `json:"agent_api_key" validate:"deprecated"`
	// Installation mode describes on which underlying platform the Agent or the Controller is being run.
	InstallationMode string `` /* 137-byte string literal not displayed */
	// Whether to connect to [Aperture Cloud Controller](/reference/fluxninja.md).
	//
	// Enabling this flag configures various agent components to point to the
	// Aperture Cloud Controller, for example configures remote etcd endpoint and disables
	// local Prometheus OTel pipelines.
	//
	// Disable this flag only if using [Self-Hosted](/aperture-for-infra/aperture-for-infra.md) Aperture Controller.
	EnableCloudController bool `json:"enable_cloud_controller" default:"false"`
	// Interval between each heartbeat.
	HeartbeatInterval config.Duration `json:"heartbeat_interval" validate:"gte=0s" default:"5s"`
	// Client configuration.
	ClientConfig ClientConfig `json:"client"`
	// Disables local Prometheus OTel pipelines for metrics. Implied by EnableCloudController.
	DisableLocalOTelPipeline bool `json:"disable_local_otel_pipeline" default:"false"`
	// Overrides Controller ID for Aperture Controller. If not set, random id will be generated and persisted in etcd.
	ControllerID string `json:"controller_id,omitempty"`
}

FluxNinjaExtensionConfig is the configuration for [FluxNinja integration](/reference/fluxninja.md). swagger:model +kubebuilder:object:generate=true

func (*FluxNinjaExtensionConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluxNinjaExtensionConfig.

func (*FluxNinjaExtensionConfig) DeepCopyInto

func (in *FluxNinjaExtensionConfig) DeepCopyInto(out *FluxNinjaExtensionConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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