Documentation
¶
Index ¶
- Constants
- Variables
- type Add
- type ApiKeyAuth
- type AuthConfig
- type AwsDestinationSpec
- type AwsSecret
- type AzureSecret
- type Check
- type Cluster
- type Consul
- type Create
- type Dashboard
- type Delegate
- type DelegateSelector
- type Delete
- type Destination
- type DestinationSpec
- type Edit
- type ExtraOptions
- type Get
- type HeaderSecret
- type HelmInstall
- type HelmUninstall
- type InputAuthConfig
- type InputAwsEc2Spec
- type InputAwsSpec
- type InputAzureSpec
- type InputConsulSpec
- type InputGrpcServiceSpec
- type InputKubeSpec
- type InputMapStringString
- type InputRestServiceSpec
- type InputRoute
- type InputServiceSpec
- type InputStaticSpec
- type InputUpstream
- type InputUpstreamGroup
- type InputVirtualService
- type Install
- type Istio
- type Knative
- type OIDCAuth
- type OIDCSettings
- type OpaAuth
- type Options
- type PrefixRewrite
- type Proxy
- type RateLimit
- type Register
- type Remove
- type RemoveRoute
- type RestDestinationSpec
- type Route
- type RouteMatchers
- type RoutePlugins
- type Secret
- type Selector
- type TlsSecret
- type Top
- type Uninstall
- type Upgrade
- type Vault
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 ¶
View Source
var RateLimit_TimeUnits = func() []string { var vals []string for _, name := range rltypes.RateLimit_Unit_name { vals = append(vals, name) } sort.Strings(vals) return vals }()
View Source
var UpstreamTypes = []string{ UpstreamType_Aws, UpstreamType_AwsEc2, UpstreamType_Azure, UpstreamType_Consul, UpstreamType_Kube, UpstreamType_Static, }
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 ApiKeyAuth ¶ added in v0.18.42
type AuthConfig ¶ added in v1.0.0
type AwsDestinationSpec ¶
type AzureSecret ¶
type AzureSecret struct {
ApiKeys InputMapStringString
}
type Create ¶
type Create struct {
VirtualService InputVirtualService
InputUpstream InputUpstream
InputUpstreamGroup InputUpstreamGroup
InputSecret Secret
AuthConfig InputAuthConfig
DryRun bool // print resource as a kubernetes style yaml and exit without writing to storage
Vault Vault // use vault as secrets backend
}
type Delegate ¶ added in v1.2.15
type Delegate struct {
Single core.ResourceRef
Selector DelegateSelector
}
type DelegateSelector ¶ added in v1.2.15
type Delete ¶
type Delete struct {
Selector InputMapStringString
All bool
}
type Destination ¶
type Destination struct {
Upstream core.ResourceRef
Delegate Delegate
DestinationSpec DestinationSpec
}
type DestinationSpec ¶
type DestinationSpec struct {
Aws AwsDestinationSpec
Rest RestDestinationSpec
}
type ExtraOptions ¶ added in v0.18.42
type ExtraOptions struct {
RateLimit RateLimit
OIDCAuth OIDCAuth
ApiKeyAuth ApiKeyAuth
OpaAuth OpaAuth
}
type Get ¶
type Get struct {
Selector InputMapStringString
}
type HeaderSecret ¶ added in v1.4.11
type HeaderSecret struct {
Headers InputMapStringString
}
type HelmInstall ¶ added in v1.5.0
type HelmUninstall ¶ added in v1.5.0
type InputAuthConfig ¶ added in v1.0.0
type InputAuthConfig struct {
OIDCAuth OIDCAuth
ApiKeyAuth ApiKeyAuth
OpaAuth OpaAuth
}
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 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 InputRoute ¶
type InputRoute struct {
InsertIndex uint32
Matcher RouteMatchers
Destination Destination
// TODO: multi destination
// Destinations []Destination
UpstreamGroup core.ResourceRef
Plugins RoutePlugins
AddToRouteTable bool // add the route to a route table rather than a virtual service
ClusterScopedVsClient bool
}
type InputServiceSpec ¶
type InputServiceSpec struct {
ServiceType string
InputRestServiceSpec InputRestServiceSpec
InputGrpcServiceSpec InputGrpcServiceSpec
}
type InputStaticSpec ¶
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
RateLimit RateLimit
AuthConfig AuthConfig
}
type Install ¶
type Install struct {
Gloo HelmInstall
Federation HelmInstall
Knative Knative
LicenseKey string
WithGlooFed bool
DryRun bool
Version string
}
type Istio ¶ added in v1.5.0
type Istio struct {
Upstream string // upstream for which we are changing the istio mTLS settings
IncludeUpstreams bool // whether or not to modify upstreams when uninstalling mTLS
Namespace string // namespace in which istio is installed
IstioMetaMeshId string // IstioMetaMeshId sets ISTIO_META_MESH_ID env var
IstioMetaClusterId string // IstioMetaClusterId sets ISTIO_META_CLUSTER_ID env var
IstioDiscoveryAddress string // IstioDiscoveryAddress sets discoveryAddress field within PROXY_CONFIG env var
}
type OIDCSettings ¶ added in v0.18.42
type OIDCSettings struct {
ExtAuthServerUpstreamRef core.ResourceRef
}
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 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
QueryParameterMatcher InputMapStringString
}
type RoutePlugins ¶
type RoutePlugins struct {
PrefixRewrite PrefixRewrite
}
type Secret ¶
type Secret struct {
TlsSecret TlsSecret
AwsSecret AwsSecret
AzureSecret AzureSecret
HeaderSecret HeaderSecret
}
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 Top ¶
type Top struct {
Interactive bool
File string
CheckName []string
Output printTypes.OutputType
Ctx context.Context
Verbose bool // currently only used by install and uninstall, sends kubectl command output to terminal
KubeConfig string // file to use for kube config, if not standard one.
Zip bool
ErrorsOnly bool
ConfigFilePath string
Consul Consul // use consul as config backend
}
type Uninstall ¶
type Uninstall struct {
GlooUninstall HelmUninstall
}
Click to show internal directories.
Click to hide internal directories.