aws

package
v1.18.2 Latest Latest
Warning

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

Go to latest
Published: Dec 20, 2024 License: Apache-2.0 Imports: 20 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	DestinationSpec_InvocationStyle_name = map[int32]string{
		0: "SYNC",
		1: "ASYNC",
	}
	DestinationSpec_InvocationStyle_value = map[string]int32{
		"SYNC":  0,
		"ASYNC": 1,
	}
)

Enum value maps for DestinationSpec_InvocationStyle.

View Source
var File_github_com_solo_io_gloo_projects_gloo_api_v1_options_aws_aws_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type DestinationSpec

type DestinationSpec struct {

	// The Logical Name of the LambdaFunctionSpec to be invoked.
	LogicalName string `protobuf:"bytes,1,opt,name=logical_name,json=logicalName,proto3" json:"logical_name,omitempty"`
	// Can be either Sync or Async.
	InvocationStyle DestinationSpec_InvocationStyle `` /* 169-byte string literal not displayed */
	// Include headers, multi-value headers, querystring, querystring parameters, multi-value querystring parameters,  request path, and request method in the event payload sent to aws lambda
	// Only one of `requestTransformation` or `wrapAsApiGateway` should be provided.
	RequestTransformation bool `protobuf:"varint,6,opt,name=request_transformation,json=requestTransformation,proto3" json:"request_transformation,omitempty"`
	// Deprecated. Use unwrapAsApiGateway
	//
	// Deprecated: Marked as deprecated in github.com/solo-io/gloo/projects/gloo/api/v1/options/aws/aws.proto.
	ResponseTransformation bool `` /* 128-byte string literal not displayed */
	// Unwrap the response as if the proxy was an ALB.
	// Intended to ease migration when previously using ALB to invoke Lambdas.
	// For further information see below link for the expected format when true.
	// https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html
	// Only one of `unwrapAsAlb` or `unwrapAsApiGateway` may be provided.
	UnwrapAsAlb bool `protobuf:"varint,7,opt,name=unwrap_as_alb,json=unwrapAsAlb,proto3" json:"unwrap_as_alb,omitempty"`
	// Unwrap the response as if the proxy was an AWS API Gateway.
	// Intended to ease migration when previously using API Gateway to invoke Lambdas.
	// Only one of `unwrapAsAlb` or `unwrapAsApiGateway` may be provided.
	UnwrapAsApiGateway bool `protobuf:"varint,8,opt,name=unwrap_as_api_gateway,json=unwrapAsApiGateway,proto3" json:"unwrap_as_api_gateway,omitempty"`
	// Enterprise-Only
	// Wrap the request into AWS API Gateway event format.
	// Intended to ease migration when previously using API Gateway to invoke Lambdas.
	// Only one of `requestTransformation` or `wrapAsApiGateway` should be provided.
	WrapAsApiGateway bool `protobuf:"varint,9,opt,name=wrap_as_api_gateway,json=wrapAsApiGateway,proto3" json:"wrap_as_api_gateway,omitempty"`
	// contains filtered or unexported fields
}

Each Lambda Function Spec contains data necessary for Gloo to invoke Lambda functions [#next-free-field: 8]

func (*DestinationSpec) Clone added in v1.8.24

func (m *DestinationSpec) Clone() proto.Message

Clone function

func (*DestinationSpec) Descriptor deprecated

func (*DestinationSpec) Descriptor() ([]byte, []int)

Deprecated: Use DestinationSpec.ProtoReflect.Descriptor instead.

func (*DestinationSpec) Equal

func (m *DestinationSpec) Equal(that interface{}) bool

Equal function

func (*DestinationSpec) GetInvocationStyle

func (x *DestinationSpec) GetInvocationStyle() DestinationSpec_InvocationStyle

func (*DestinationSpec) GetLogicalName

func (x *DestinationSpec) GetLogicalName() string

func (*DestinationSpec) GetRequestTransformation added in v1.9.0

func (x *DestinationSpec) GetRequestTransformation() bool

func (*DestinationSpec) GetResponseTransformation deprecated

func (x *DestinationSpec) GetResponseTransformation() bool

Deprecated: Marked as deprecated in github.com/solo-io/gloo/projects/gloo/api/v1/options/aws/aws.proto.

func (*DestinationSpec) GetUnwrapAsAlb added in v1.9.25

func (x *DestinationSpec) GetUnwrapAsAlb() bool

func (*DestinationSpec) GetUnwrapAsApiGateway added in v1.9.25

func (x *DestinationSpec) GetUnwrapAsApiGateway() bool

func (*DestinationSpec) GetWrapAsApiGateway added in v1.12.16

func (x *DestinationSpec) GetWrapAsApiGateway() bool

func (*DestinationSpec) Hash deprecated added in v1.2.13

func (m *DestinationSpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.

func (*DestinationSpec) HashUnique added in v1.18.0

func (m *DestinationSpec) HashUnique(hasher hash.Hash64) (uint64, error)

HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.

func (*DestinationSpec) ProtoMessage

func (*DestinationSpec) ProtoMessage()

func (*DestinationSpec) ProtoReflect added in v1.6.0

func (x *DestinationSpec) ProtoReflect() protoreflect.Message

func (*DestinationSpec) Reset

func (x *DestinationSpec) Reset()

func (*DestinationSpec) String

func (x *DestinationSpec) String() string

type DestinationSpec_InvocationStyle

type DestinationSpec_InvocationStyle int32
const (
	DestinationSpec_SYNC  DestinationSpec_InvocationStyle = 0
	DestinationSpec_ASYNC DestinationSpec_InvocationStyle = 1
)

func (DestinationSpec_InvocationStyle) Descriptor added in v1.6.0

func (DestinationSpec_InvocationStyle) Enum added in v1.6.0

func (DestinationSpec_InvocationStyle) EnumDescriptor deprecated

func (DestinationSpec_InvocationStyle) EnumDescriptor() ([]byte, []int)

Deprecated: Use DestinationSpec_InvocationStyle.Descriptor instead.

func (DestinationSpec_InvocationStyle) Number added in v1.6.0

func (DestinationSpec_InvocationStyle) String

func (DestinationSpec_InvocationStyle) Type added in v1.6.0

type LambdaFunctionSpec

type LambdaFunctionSpec struct {

	// the logical name gloo should associate with this function. if left empty, it will default to
	// lambda_function_name+qualifier
	LogicalName string `protobuf:"bytes,1,opt,name=logical_name,json=logicalName,proto3" json:"logical_name,omitempty"`
	// The Name of the Lambda Function as it appears in the AWS Lambda Portal
	LambdaFunctionName string `protobuf:"bytes,2,opt,name=lambda_function_name,json=lambdaFunctionName,proto3" json:"lambda_function_name,omitempty"`
	// The Qualifier for the Lambda Function. Qualifiers act as a kind of version
	// for Lambda Functions. See https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html for more info.
	Qualifier string `protobuf:"bytes,3,opt,name=qualifier,proto3" json:"qualifier,omitempty"`
	// contains filtered or unexported fields
}

Each Lambda Function Spec contains data necessary for Gloo to invoke Lambda functions: - name of the function - qualifier for the function

func (*LambdaFunctionSpec) Clone added in v1.8.24

func (m *LambdaFunctionSpec) Clone() proto.Message

Clone function

func (*LambdaFunctionSpec) Descriptor deprecated

func (*LambdaFunctionSpec) Descriptor() ([]byte, []int)

Deprecated: Use LambdaFunctionSpec.ProtoReflect.Descriptor instead.

func (*LambdaFunctionSpec) Equal

func (m *LambdaFunctionSpec) Equal(that interface{}) bool

Equal function

func (*LambdaFunctionSpec) GetLambdaFunctionName

func (x *LambdaFunctionSpec) GetLambdaFunctionName() string

func (*LambdaFunctionSpec) GetLogicalName

func (x *LambdaFunctionSpec) GetLogicalName() string

func (*LambdaFunctionSpec) GetQualifier

func (x *LambdaFunctionSpec) GetQualifier() string

func (*LambdaFunctionSpec) Hash deprecated added in v1.2.13

func (m *LambdaFunctionSpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.

func (*LambdaFunctionSpec) HashUnique added in v1.18.0

func (m *LambdaFunctionSpec) HashUnique(hasher hash.Hash64) (uint64, error)

HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.

func (*LambdaFunctionSpec) ProtoMessage

func (*LambdaFunctionSpec) ProtoMessage()

func (*LambdaFunctionSpec) ProtoReflect added in v1.6.0

func (x *LambdaFunctionSpec) ProtoReflect() protoreflect.Message

func (*LambdaFunctionSpec) Reset

func (x *LambdaFunctionSpec) Reset()

func (*LambdaFunctionSpec) String

func (x *LambdaFunctionSpec) String() string

type UpstreamSpec

type UpstreamSpec struct {

	// The AWS Region where the desired Lambda Functions exist
	Region string `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	// A [Gloo Secret Ref](https://docs.solo.io/gloo-edge/latest/reference/cli/glooctl_create_secret_aws/) to an AWS Secret
	// AWS Secrets can be created with `glooctl secret create aws ...`
	// If the secret is created manually, it must conform to the following structure:
	//
	//	“`
	//	access_key: <aws access key>
	//	secret_key: <aws secret key>
	//	session_token: <(optional) aws session token>
	//	“`
	SecretRef *core.ResourceRef `protobuf:"bytes,2,opt,name=secret_ref,json=secretRef,proto3" json:"secret_ref,omitempty"`
	// The list of Lambda Functions contained within this region.
	// This list will be automatically populated by Gloo if discovery is enabled for AWS Lambda Functions
	LambdaFunctions []*LambdaFunctionSpec `protobuf:"bytes,3,rep,name=lambda_functions,json=lambdaFunctions,proto3" json:"lambda_functions,omitempty"`
	// (Optional): role_arn to use when assuming a role for a given request via STS.
	// If set this role_arn will override the value found in AWS_ROLE_ARN
	// This option will only be respected if STS credentials are enabled.
	// To enable STS credential fetching see Settings.Gloo.AwsOptions in settings.proto.
	RoleArn string `protobuf:"bytes,4,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	// (Optional): The AWS Account ID to use while calling if using resource based access
	AwsAccountId string `protobuf:"bytes,5,opt,name=aws_account_id,json=awsAccountId,proto3" json:"aws_account_id,omitempty"`
	// Optional override to disable role chaining;
	DisableRoleChaining bool `protobuf:"varint,6,opt,name=disable_role_chaining,json=disableRoleChaining,proto3" json:"disable_role_chaining,omitempty"`
	// Specifies AWS DestinationSpec configuration overrides for any route targeting this upstream.
	// Note that the route in question must have an AWS DestinationSpec to be affected and this will only set things that are non-falsey as overrides.
	DestinationOverrides *DestinationSpec `protobuf:"bytes,7,opt,name=destination_overrides,json=destinationOverrides,proto3" json:"destination_overrides,omitempty"`
	// contains filtered or unexported fields
}

Upstream Spec for AWS Lambda Upstreams AWS Upstreams represent a collection of Lambda Functions for a particular AWS Account (IAM Role or User account) in a particular region

func (*UpstreamSpec) Clone added in v1.8.24

func (m *UpstreamSpec) Clone() proto.Message

Clone function

func (*UpstreamSpec) Descriptor deprecated

func (*UpstreamSpec) Descriptor() ([]byte, []int)

Deprecated: Use UpstreamSpec.ProtoReflect.Descriptor instead.

func (*UpstreamSpec) Equal

func (m *UpstreamSpec) Equal(that interface{}) bool

Equal function

func (*UpstreamSpec) GetAwsAccountId added in v1.9.25

func (x *UpstreamSpec) GetAwsAccountId() string

func (*UpstreamSpec) GetDestinationOverrides added in v1.12.39

func (x *UpstreamSpec) GetDestinationOverrides() *DestinationSpec

func (*UpstreamSpec) GetDisableRoleChaining added in v1.9.25

func (x *UpstreamSpec) GetDisableRoleChaining() bool

func (*UpstreamSpec) GetLambdaFunctions

func (x *UpstreamSpec) GetLambdaFunctions() []*LambdaFunctionSpec

func (*UpstreamSpec) GetRegion

func (x *UpstreamSpec) GetRegion() string

func (*UpstreamSpec) GetRoleArn added in v1.5.0

func (x *UpstreamSpec) GetRoleArn() string

func (*UpstreamSpec) GetSecretRef

func (x *UpstreamSpec) GetSecretRef() *core.ResourceRef

func (*UpstreamSpec) Hash deprecated added in v1.2.13

func (m *UpstreamSpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.

func (*UpstreamSpec) HashUnique added in v1.18.0

func (m *UpstreamSpec) HashUnique(hasher hash.Hash64) (uint64, error)

HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.

func (*UpstreamSpec) ProtoMessage

func (*UpstreamSpec) ProtoMessage()

func (*UpstreamSpec) ProtoReflect added in v1.6.0

func (x *UpstreamSpec) ProtoReflect() protoreflect.Message

func (*UpstreamSpec) Reset

func (x *UpstreamSpec) Reset()

func (*UpstreamSpec) String

func (x *UpstreamSpec) String() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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