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 PodSelector string // label selector for pod scanning ResourceNamespaces []string // namespaces in which to check custom resources }
type Uninstall ¶
type Uninstall struct {
GlooUninstall HelmUninstall
}
type Vault ¶ added in v0.18.23
type Vault struct { // enable vault secret clients UseVault bool // https://learn.hashicorp.com/tutorials/vault/getting-started-secrets-engines // PathPrefix tells Vault which secrets engine to which it should route traffic. PathPrefix string // Secrets are persisted using a resource client constructed in solo-kit // https://github.com/solo-io/solo-kit/blob/1d799ae290c2f516f01fc4ad20272d7d2d5db1e7/pkg/api/v1/clients/vault/resource_client.go#L311 // The RootKey is used to configure the path for the particular Gloo installation // This ensures that you can run multiple instances of Gloo against the same Consul cluster RootKey string Client func() (*vaultapi.Client, error) }
Click to show internal directories.
Click to hide internal directories.