Documentation ¶
Index ¶
- Constants
- Variables
- type Add
- type ApiKeyAuth
- type AuthConfig
- type AwsDestinationSpec
- type AwsSecret
- type AzureSecret
- type Check
- type CheckCRD
- type Cluster
- type Create
- type Dashboard
- type Debug
- type Delegate
- type DelegateSelector
- type Delete
- type Destination
- type DestinationSpec
- type Edit
- type ExtraOptions
- type Get
- type GetProxy
- 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 UseTls
- type ValidateLicense
- 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 Debug ¶ added in v1.18.4
options for the "glooctl debug" command, see projects/gloo/cli/pkg/cmd/debug/root.go
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 { Proxy GetProxy Selector InputMapStringString }
type GetProxy ¶ added in v1.17.0
type GetProxy struct { // K8sGatewaySource is true if the GetProxy request should consider Proxy resources // that were generated by the K8s Gateway Translation K8sGatewaySource bool // EdgeGatewaySource is true if the GetProxy request should consider Proxy resources // that were generated by the Edge Gateway Translation EdgeGatewaySource bool }
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 Options ¶
type Options struct { Metadata core.Metadata Top Top Install Install Uninstall Uninstall Proxy Proxy Upgrade Upgrade Create Create Delete Delete Edit Edit Route Route Get Get Add Add Istio Istio Remove Remove Cluster Cluster Check Check CheckCRD CheckCRD ValidateLicense ValidateLicense Debug Debug }
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 { contextoptions.ContextAccessible CheckName []string Output printTypes.OutputType Ctx context.Context Zip bool PodSelector string // label selector for pod scanning ResourceNamespaces []string // namespaces in which to check custom resources }
type Uninstall ¶
type Uninstall struct {
GlooUninstall HelmUninstall
}
type UseTls ¶ added in v1.14.4
type UseTls struct {
Value *bool
}
func (*UseTls) String ¶ added in v1.14.4
methods to implement pflag Value interface https://github.com/spf13/pflag/blob/d5e0c0615acee7028e1e2740a11102313be88de1/flag.go#L187
type ValidateLicense ¶ added in v1.18.0
type ValidateLicense struct {
LicenseKey string
}
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.