options

package
v0.18.17 Latest Latest
Warning

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

Go to latest
Published: Aug 15, 2019 License: Apache-2.0 Imports: 8 Imported by: 38

Documentation

Index

Constants

View Source
const (
	UpstreamType_Aws    = "aws"
	UpstreamType_AwsEc2 = "ec2"
	UpstreamType_Azure  = "azure"
	UpstreamType_Consul = "consul"
	UpstreamType_Kube   = "kube"
	UpstreamType_Static = "static"
)
View Source
const (
	ServiceType_Rest = "rest"
	ServiceType_Grpc = "grpc"
)

Variables

Functions

This section is empty.

Types

type Add

type Add struct {
	Route  InputRoute
	DryRun bool // print resource as a kubernetes style yaml and exit without writing to storage
}

type AwsDestinationSpec

type AwsDestinationSpec struct {
	LogicalName            string
	ResponseTransformation bool
}

type AwsSecret

type AwsSecret struct {
	AccessKey string
	SecretKey string
}

type AzureSecret

type AzureSecret struct {
	ApiKeys InputMapStringString
}

type Create

type Create struct {
	VirtualService     InputVirtualService
	InputUpstream      InputUpstream
	InputUpstreamGroup InputUpstreamGroup
	InputSecret        Secret
	DryRun             bool // print resource as a kubernetes style yaml and exit without writing to storage
}

type Delete

type Delete struct {
	Selector InputMapStringString
	All      bool
}

type Destination

type Destination struct {
	Upstream        core.ResourceRef
	DestinationSpec DestinationSpec
}

type DestinationSpec

type DestinationSpec struct {
	Aws  AwsDestinationSpec
	Rest RestDestinationSpec
}

type Get

type Get struct {
	Selector InputMapStringString
}

type InputAwsEc2Spec added in v0.18.16

type InputAwsEc2Spec struct {
	Region          string
	Secret          core.ResourceRef
	Role            string
	PublicIp        bool
	Port            uint32
	KeyFilters      []string
	KeyValueFilters InputMapStringString
}

type InputAwsSpec

type InputAwsSpec struct {
	Region string
	Secret core.ResourceRef
}

type InputAzureSpec

type InputAzureSpec struct {
	FunctionAppName string
	Secret          core.ResourceRef
}

type InputConsulSpec

type InputConsulSpec struct {
	// The name of the Consul Service
	ServiceName string
	// The list of service tags Gloo should search for on a service instance
	// before deciding whether or not to include the instance as part of this
	// upstream
	ServiceTags []string
}

type InputGrpcServiceSpec

type InputGrpcServiceSpec struct {
	// inline from a file
	Descriptors []byte
}

type InputKubeSpec

type InputKubeSpec struct {
	// The name of the Kubernetes Service
	ServiceName string
	// The namespace where the Service lives
	ServiceNamespace string
	// The port exposed by the Kubernetes Service
	ServicePort uint32
	// Allows finer-grained filtering of pods for the Upstream. Gloo will select pods based on their labels if
	// any are provided here.
	// (see [Kubernetes labels and selectors](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/)
	Selector InputMapStringString
}

type InputMapStringString

type InputMapStringString struct {
	Entries []string `json:"values"`
}

func (*InputMapStringString) MustMap

func (m *InputMapStringString) MustMap() map[string]string

type InputRestServiceSpec

type InputRestServiceSpec struct {
	SwaggerUrl       string
	SwaggerDocInline string
}

type InputRoute

type InputRoute struct {
	InsertIndex uint32
	Matcher     RouteMatchers
	Destination Destination
	// TODO: multi destination
	//Destinations []Destination
	UpstreamGroup core.ResourceRef
	Plugins       RoutePlugins
}

type InputServiceSpec

type InputServiceSpec struct {
	ServiceType          string
	InputRestServiceSpec InputRestServiceSpec
	InputGrpcServiceSpec InputGrpcServiceSpec
}

type InputStaticSpec

type InputStaticSpec struct {
	Hosts []string
	// Attempt to use outbound TLS
	// Gloo will automatically set this to true for port 443
	UseTls bool
}

type InputUpstream

type InputUpstream struct {
	UpstreamType string
	Aws          InputAwsSpec
	AwsEc2       InputAwsEc2Spec
	Azure        InputAzureSpec
	Consul       InputConsulSpec
	Kube         InputKubeSpec
	Static       InputStaticSpec

	// An optional Service Spec describing the service listening on this upstream
	ServiceSpec InputServiceSpec
}

type InputUpstreamGroup added in v0.18.1

type InputUpstreamGroup struct {
	WeightedDestinations InputMapStringString
}

type InputVirtualService

type InputVirtualService struct {
	Domains     []string
	DisplayName string
}

type Install

type Install struct {
	DryRun            bool
	Upgrade           bool
	Namespace         string
	HelmChartOverride string
	HelmChartValues   string
	Knative           Knative
}

type Knative added in v0.17.0

type Knative struct {
	InstallKnativeVersion         string `json:"version"`
	InstallKnative                bool   `json:"-"`
	SkipGlooInstall               bool   `json:"-"`
	InstallKnativeBuild           bool   `json:"build"`
	InstallKnativeBuildVersion    string `json:"buildVersion"`
	InstallKnativeMonitoring      bool   `json:"monitoring"`
	InstallKnativeEventing        bool   `json:"eventing"`
	InstallKnativeEventingVersion string `json:"eventingVersion"`
}

type Options

type Options struct {
	Metadata  core.Metadata
	Top       Top
	Install   Install
	Uninstall Uninstall
	Proxy     Proxy
	Upgrade   Upgrade
	Create    Create
	Delete    Delete
	Get       Get
	Add       Add
	Remove    Remove
}

type PrefixRewrite

type PrefixRewrite struct {
	Value *string
}

func (*PrefixRewrite) Set

func (p *PrefixRewrite) Set(s string) error

func (*PrefixRewrite) String

func (p *PrefixRewrite) String() string

func (*PrefixRewrite) Type

func (p *PrefixRewrite) Type() string

type Proxy

type Proxy struct {
	LocalCluster bool
	Name         string
	Port         string
	FollowLogs   bool
	DebugLogs    bool
}

type Remove

type Remove struct {
	Route RemoveRoute
}

type RemoveRoute

type RemoveRoute struct {
	RemoveIndex uint32
}

type RestDestinationSpec

type RestDestinationSpec struct {
	FunctionName string
	Parameters   InputMapStringString
}

type RouteMatchers

type RouteMatchers struct {
	PathPrefix    string
	PathExact     string
	PathRegex     string
	Methods       []string
	HeaderMatcher InputMapStringString
}

type RoutePlugins

type RoutePlugins struct {
	PrefixRewrite PrefixRewrite
}

type Secret

type Secret struct {
	TlsSecret   TlsSecret
	AwsSecret   AwsSecret
	AzureSecret AzureSecret
}

type Selector

type Selector struct {
	// Allows finer-grained filtering of pods for the Upstream. Gloo will select pods based on their labels if
	// any are provided here.
	// (see [Kubernetes labels and selectors](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/)
	SelectorKeyValuePairs []string
}

type TlsSecret

type TlsSecret struct {
	RootCaFilename     string
	PrivateKeyFilename string
	CertChainFilename  string
	// non-user facing value for test purposes
	// if set, Read() will just return the filenames
	Mock bool
}

func (*TlsSecret) ReadFiles added in v0.13.12

func (t *TlsSecret) ReadFiles() (string, string, string, error)

ReadFiles provides a way to sidestep file io during testing

type Top

type Top struct {
	Interactive bool
	File        string
	Output      printTypes.OutputType
	Ctx         context.Context
	Verbose     bool // currently only used by install and uninstall, sends kubectlc command output to terminal
}

type Uninstall

type Uninstall struct {
	Namespace       string
	DeleteCrds      bool
	DeleteNamespace bool
	DeleteAll       bool
}

type Upgrade

type Upgrade struct {
	ReleaseTag   string
	DownloadPath string
}

Jump to

Keyboard shortcuts

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