aws

package
v0.4.3 Latest Latest
Warning

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

Go to latest
Published: Aug 3, 2018 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Overview

Package aws is a generated protocol buffer package.

It is generated from these files:

spec.proto

It has these top-level messages:

UpstreamSpec
FunctionSpec

Index

Constants

View Source
const (
	// define Upstream type name
	UpstreamTypeAws = "aws"

	// upstream-specific metadata
	AwsAccessKey = "access_key"
	AwsSecretKey = "secret_key"
)
View Source
const (
	ExecutionStyleNone  = "none"
	ExecutionStyleSync  = "sync"
	ExecutionStyleAsync = "async"
)
View Source
const (
	// TODO: execution_type should be moved to a separate package
	RoutePluginKeyExecutionStyle = "execution_style"
)

Variables

View Source
var (
	ValidRegions = map[string]bool{
		"us-east-2":      true,
		"us-east-1":      true,
		"us-west-1":      true,
		"us-west-2":      true,
		"ap-northeast-1": true,
		"ap-northeast-2": true,
		"ap-south-1":     true,
		"ap-southeast-1": true,
		"ap-southeast-2": true,
		"ca-central-1":   true,
		"cn-north-1":     true,
		"eu-central-1":   true,
		"eu-west-1":      true,
		"eu-west-2":      true,
		"eu-west-3":      true,
		"sa-east-1":      true,
	}
)

Functions

func EncodeFunctionSpec

func EncodeFunctionSpec(spec FunctionSpec) *types.Struct

func EncodeUpstreamSpec

func EncodeUpstreamSpec(spec UpstreamSpec) *types.Struct

func GetExecutionStyle

func GetExecutionStyle(routeExtensions *types.Struct) (string, error)

Types

type FunctionSpec

type FunctionSpec struct {
	// The Name of the Lambda Function as it appears in the AWS Lambda Portal
	FunctionName string `protobuf:"bytes,1,opt,name=function_name,json=functionName,proto3" json:"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,2,opt,name=qualifier,proto3" json:"qualifier,omitempty"`
}

Function Spec for Functions on AWS Lambda Upstreams The Function Spec contains data necessary for Gloo to invoke Lambda functions

func DecodeFunctionSpec

func DecodeFunctionSpec(generic v1.FunctionSpec) (*FunctionSpec, error)

func (*FunctionSpec) Descriptor

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

func (*FunctionSpec) Equal

func (this *FunctionSpec) Equal(that interface{}) bool

func (*FunctionSpec) GetFunctionName

func (m *FunctionSpec) GetFunctionName() string

func (*FunctionSpec) GetQualifier

func (m *FunctionSpec) GetQualifier() string

func (*FunctionSpec) ProtoMessage

func (*FunctionSpec) ProtoMessage()

func (*FunctionSpec) Reset

func (m *FunctionSpec) Reset()

func (*FunctionSpec) String

func (m *FunctionSpec) String() string

func (*FunctionSpec) ValidateLambda

func (s *FunctionSpec) ValidateLambda() error

type Plugin

type Plugin struct {
	// contains filtered or unexported fields
}

func (*Plugin) GetDependencies

func (p *Plugin) GetDependencies(cfg *v1.Config) *plugins.Dependencies

func (*Plugin) HttpFilters

func (p *Plugin) HttpFilters(params *plugins.HttpFilterPluginParams) []plugins.StagedHttpFilter

func (*Plugin) Init added in v0.4.2

func (p *Plugin) Init(options bootstrap.Options) error

func (*Plugin) ParseFunctionSpec

func (p *Plugin) ParseFunctionSpec(params *plugins.FunctionPluginParams, in v1.FunctionSpec) (*types.Struct, error)

func (*Plugin) ProcessRoute

func (p *Plugin) ProcessRoute(_ *plugins.RoutePluginParams, in *v1.Route, out *envoyroute.Route) error

func (*Plugin) ProcessUpstream

func (p *Plugin) ProcessUpstream(params *plugins.UpstreamPluginParams, in *v1.Upstream, out *envoyapi.Cluster) error

type UpstreamSpec

type UpstreamSpec struct {
	// The AWS Region in which to run Lambda Functions
	Region string `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	// A [Gloo Secret Ref](https://gloo.solo.io/introduction/concepts/#Secrets) 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>
	//  “`
	SecretRef string `protobuf:"bytes,2,opt,name=secret_ref,json=secretRef,proto3" json:"secret_ref,omitempty"`
}

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 DecodeUpstreamSpec

func DecodeUpstreamSpec(generic v1.UpstreamSpec) (*UpstreamSpec, error)

func (*UpstreamSpec) Descriptor

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

func (*UpstreamSpec) Equal

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

func (*UpstreamSpec) GetLambdaHostname

func (s *UpstreamSpec) GetLambdaHostname() string

func (*UpstreamSpec) GetRegion

func (m *UpstreamSpec) GetRegion() string

func (*UpstreamSpec) GetSecretRef

func (m *UpstreamSpec) GetSecretRef() string

func (*UpstreamSpec) ProtoMessage

func (*UpstreamSpec) ProtoMessage()

func (*UpstreamSpec) Reset

func (m *UpstreamSpec) Reset()

func (*UpstreamSpec) String

func (m *UpstreamSpec) String() string

Jump to

Keyboard shortcuts

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