helm

package
v1.7.0 Latest Latest
Warning

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

Go to latest
Published: Feb 14, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package helm contains the helm values and functions used for deploying the mesh.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AWSPCA

type AWSPCA struct {
	Region                  string `yaml:"region" json:"region"`
	CertificateAuthorityArn string `yaml:"certificateAuthorityArn" json:"certificateAuthorityArn"`
	AWSAccessKeyID          string `yaml:"awsAccessKeyID" json:"awsAccessKeyID"`
	AWSSecretAccessKey      string `yaml:"awsSecretAccessKey" json:"awsSecretAccessKey"`
	CASigningTemplateArn    string `yaml:"caSigningTemplateArn,omitempty" json:"caSigningTemplateArn,omitempty"`
	SigningAlgorithm        string `yaml:"signingAlgorithm,omitempty" json:"signingAlgorithm,omitempty"`
	AssumeRoleArn           string `yaml:"assumeRoleArn,omitempty" json:"assumeRoleArn,omitempty"`
	Endpoint                string `yaml:"endpoint,omitempty" json:"endpoint,omitempty"`
	SupplementalBundle      string `yaml:"supplementalBundle,omitempty" json:"supplementalBundle,omitempty"`
}

AWSPCA is the awsPCA struct within upstreamAuthority.

type AWSSecret

type AWSSecret struct {
	Region             string `yaml:"region" json:"region"`
	CertFileArn        string `yaml:"certFileArn" json:"certFileArn"`
	KeyFileArn         string `yaml:"keyFileArn" json:"keyFileArn"`
	AWSAccessKeyID     string `yaml:"awsAccessKeyID,omitempty" json:"awsAccessKeyID,omitempty"`
	AWSSecretAccessKey string `yaml:"awsSecretAccessKey,omitempty" json:"awsSecretAccessKey,omitempty"`
	AWSSecretToken     string `yaml:"awsSecretToken,omitempty" json:"awsSecretToken,omitempty"`
	AssumeRoleArn      string `yaml:"assumeRoleArn,omitempty" json:"assumeRoleArn,omitempty"`
}

AWSSecret is the awsSecret struct within upstreamAuthority.

type ApproleAuth

type ApproleAuth struct {
	ApproleID             string `yaml:"approleID" json:"approleID"`
	ApproleSecretID       string `yaml:"approleSecretID" json:"approleSecretID"`
	ApproleAuthMountPoint string `yaml:"approleAuthMountPoint,omitempty" json:"approleAuthMountPoint,omitempty"`
}

ApproleAuth is the approleAuth struct within vault.

type AutoInjection

type AutoInjection struct {
	DisabledNamespaces []string `yaml:"disabledNamespaces" json:"disabledNamespaces"`
}

AutoInjection is the autoInjection struct within Values.

type CertAuth

type CertAuth struct {
	ClientCert         string `yaml:"clientCert" json:"clientCert"`
	ClientKey          string `yaml:"clientKey" json:"clientKey"`
	CertAuthMountPoint string `yaml:"certAuthMountPoint,omitempty" json:"certAuthMountPoint,omitempty"`
	CertAuthRoleName   string `yaml:"certAuthRoleName,omitempty" json:"certAuthRoleName,omitempty"`
}

CertAuth is the certAuth struct within vault.

type CertManager

type CertManager struct {
	Namespace   string `yaml:"namespace" json:"namespace"`
	IssuerName  string `yaml:"issuerName" json:"issuerName"`
	IssuerKind  string `yaml:"issuerKind,omitempty" json:"issuerKind,omitempty"`
	IssuerGroup string `yaml:"issuerGroup,omitempty" json:"issuerGroup,omitempty"`
	KubeConfig  string `yaml:"kubeConfig,omitempty" json:"kubeConfig,omitempty"`
}

CertManager is the certManager struct within upstreamAuthority.

type Disk

type Disk struct {
	Cert   string `yaml:"cert" json:"cert"`
	Key    string `yaml:"key" json:"key"`
	Bundle string `yaml:"bundle,omitempty" json:"bundle,omitempty"`
}

Disk is the disk struct within upstreamAuthority.

type Exporter

type Exporter struct {
	OTLP *OTLP `yaml:"otlp,omitempty" json:"otlp,omitempty"`
}

Exporter is the telemetry exporter struct within Values.

type MTLS

type MTLS struct {
	UpstreamAuthority     UpstreamAuthority `yaml:"upstreamAuthority,omitempty" json:"upstreamAuthority,omitempty"`
	Mode                  string            `yaml:"mode" json:"mode"`
	SVIDTTL               string            `yaml:"svidTTL" json:"svidTTL"`
	TrustDomain           string            `yaml:"trustDomain" json:"trustDomain"`
	PersistentStorage     string            `yaml:"persistentStorage" json:"persistentStorage"`
	SpireServerKeyManager string            `yaml:"spireServerKeyManager" json:"spireServerKeyManager"`
	CAKeyType             string            `yaml:"caKeyType" json:"caKeyType"`
	CATTL                 string            `yaml:"caTTL" json:"caTTL"`
}

MTLS is the mTLS struct within Values.

type OTLP

type OTLP struct {
	Host string `yaml:"host" json:"host"`
	Port int    `yaml:"port" json:"port"`
}

OTLP is the telemetry OTLP struct within Values.

type Registry

type Registry struct {
	Server              string `yaml:"server" json:"server"`
	ImageTag            string `yaml:"imageTag" json:"imageTag"`
	Key                 string `yaml:"key" json:"key"`
	Username            string `yaml:"username" json:"username"`
	Password            string `yaml:"password" json:"password"`
	ImagePullPolicy     string `yaml:"imagePullPolicy" json:"imagePullPolicy"`
	DisablePublicImages bool   `yaml:"disablePublicImages" json:"disablePublicImages"`
}

Registry is the registry struct within Values.

type Telemetry

type Telemetry struct {
	Exporters    *Exporter `yaml:"exporters,omitempty" json:"exporters,omitempty"`
	SamplerRatio float32   `yaml:"samplerRatio" json:"samplerRatio"`
}

Telemetry is the telemetry struct within Values.

type TokenAuth

type TokenAuth struct {
	Token string `yaml:"token" json:"token"`
}

TokenAuth is the tokenAuth struct within vault.

type Tracing

type Tracing struct {
	Address    string  `yaml:"address" json:"address"`
	Backend    string  `yaml:"backend" json:"backend"`
	SampleRate float32 `yaml:"sampleRate" json:"sampleRate"`
}

Tracing is the tracing struct within Values.

type UpstreamAuthority

type UpstreamAuthority struct {
	Disk        *Disk        `yaml:"disk,omitempty" json:"disk,omitempty"`
	AWSPCA      *AWSPCA      `yaml:"awsPCA,omitempty" json:"awsPCA,omitempty"`
	AWSSecret   *AWSSecret   `yaml:"awsSecret,omitempty" json:"awsSecret,omitempty"`
	Vault       *Vault       `yaml:"vault,omitempty" json:"vault,omitempty"`
	CertManager *CertManager `yaml:"certManager,omitempty" json:"certManager,omitempty"`
}

UpstreamAuthority is the upstreamAuthority struct within mTLS.

type Values

type Values struct {
	Tracing              *Tracing      `yaml:"tracing" json:"tracing"`
	Telemetry            *Telemetry    `yaml:"telemetry" json:"telemetry"`
	MTLS                 MTLS          `yaml:"mtls" json:"mtls"`
	ClientMaxBodySize    string        `yaml:"clientMaxBodySize" json:"clientMaxBodySize"`
	PrometheusAddress    string        `yaml:"prometheusAddress" json:"prometheusAddress"`
	Environment          string        `yaml:"environment" json:"environment"`
	AccessControlMode    string        `yaml:"accessControlMode" json:"accessControlMode"`
	NGINXErrorLogLevel   string        `yaml:"nginxErrorLogLevel" json:"nginxErrorLogLevel"`
	NGINXLBMethod        string        `yaml:"nginxLBMethod" json:"nginxLBMethod"`
	NGINXLogFormat       string        `yaml:"nginxLogFormat" json:"nginxLogFormat"`
	Registry             Registry      `yaml:"registry" json:"registry"`
	AutoInjection        AutoInjection `yaml:"autoInjection" json:"autoInjection"`
	EnabledNamespaces    []string      `yaml:"enabledNamespaces" json:"enabledNamespaces"`
	EnableUDP            bool          `yaml:"enableUDP" json:"enableUDP"`
	DisableAutoInjection bool          `yaml:"disableAutoInjection" json:"disableAutoInjection"`
}

Values is the top level representation of the Helm values.yaml.

func GetBufferedFilesAndValues

func GetBufferedFilesAndValues() ([]*loader.BufferedFile, *Values, error)

GetBufferedFilesAndValues loads helm files and values.

func GetDeployValues

func GetDeployValues(client k8s.Client, releaseName string) (*Values, []byte, error)

GetDeployValues gets the values used to deploy the mesh. Returns both the struct and raw data.

func (*Values) ConvertToMap

func (v *Values) ConvertToMap() (map[string]interface{}, error)

ConvertToMap converts a Values struct to a map[string]interface{}.

type Vault

type Vault struct {
	TokenAuth          *TokenAuth   `yaml:"tokenAuth,omitempty" json:"tokenAuth,omitempty"`
	ApproleAuth        *ApproleAuth `yaml:"approleAuth,omitempty" json:"approleAuth,omitempty"`
	CertAuth           *CertAuth    `yaml:"certAuth,omitempty" json:"certAuth,omitempty"`
	CACert             string       `yaml:"caCert" json:"caCert"`
	PKIMountPoint      string       `yaml:"pkiMountPoint,omitempty" json:"pkiMountPoint,omitempty"`
	VaultAddr          string       `yaml:"vaultAddr" json:"vaultAddr"`
	Namespace          string       `yaml:"namespace" json:"namespace"`
	InsecureSkipVerify bool         `yaml:"insecureSkipVerify,omitempty" json:"insecureSkipVerify,omitempty"`
}

Vault is the vault struct within upstreamAuthority.

Jump to

Keyboard shortcuts

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