ec2

package
v1.18.0-beta32 Latest Latest
Warning

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

Go to latest
Published: Nov 5, 2024 License: Apache-2.0 Imports: 20 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_github_com_solo_io_gloo_projects_gloo_api_v1_options_aws_ec2_aws_ec2_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type TagFilter

type TagFilter struct {

	// Types that are assignable to Spec:
	//
	//	*TagFilter_Key
	//	*TagFilter_KvPair_
	Spec isTagFilter_Spec `protobuf_oneof:"spec"`
	// contains filtered or unexported fields
}

func (*TagFilter) Clone added in v1.8.24

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

Clone function

func (*TagFilter) Descriptor deprecated

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

Deprecated: Use TagFilter.ProtoReflect.Descriptor instead.

func (*TagFilter) Equal

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

Equal function

func (*TagFilter) GetKey

func (x *TagFilter) GetKey() string

func (*TagFilter) GetKvPair

func (x *TagFilter) GetKvPair() *TagFilter_KvPair

func (*TagFilter) GetSpec

func (m *TagFilter) GetSpec() isTagFilter_Spec

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

func (m *TagFilter) 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 (*TagFilter) HashUnique added in v1.18.0

func (m *TagFilter) 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 (*TagFilter) ProtoMessage

func (*TagFilter) ProtoMessage()

func (*TagFilter) ProtoReflect added in v1.6.0

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

func (*TagFilter) Reset

func (x *TagFilter) Reset()

func (*TagFilter) String

func (x *TagFilter) String() string

type TagFilter_Key

type TagFilter_Key struct {
	// if set, only instances that have a tag with this key will be matched
	// keys are not case-sensitive, as with AWS Condition Keys
	Key string `protobuf:"bytes,1,opt,name=key,proto3,oneof"`
}

type TagFilter_KvPair

type TagFilter_KvPair struct {

	// keys are not case-sensitive, as with AWS Condition Keys
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// values are case-sensitive
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

func (*TagFilter_KvPair) Clone added in v1.8.24

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

Clone function

func (*TagFilter_KvPair) Descriptor deprecated

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

Deprecated: Use TagFilter_KvPair.ProtoReflect.Descriptor instead.

func (*TagFilter_KvPair) Equal

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

Equal function

func (*TagFilter_KvPair) GetKey

func (x *TagFilter_KvPair) GetKey() string

func (*TagFilter_KvPair) GetValue

func (x *TagFilter_KvPair) GetValue() string

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

func (m *TagFilter_KvPair) 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 (*TagFilter_KvPair) HashUnique added in v1.18.0

func (m *TagFilter_KvPair) 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 (*TagFilter_KvPair) ProtoMessage

func (*TagFilter_KvPair) ProtoMessage()

func (*TagFilter_KvPair) ProtoReflect added in v1.6.0

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

func (*TagFilter_KvPair) Reset

func (x *TagFilter_KvPair) Reset()

func (*TagFilter_KvPair) String

func (x *TagFilter_KvPair) String() string

type TagFilter_KvPair_

type TagFilter_KvPair_ struct {
	// if set, only instances that have a tag with this key and value
	KvPair *TagFilter_KvPair `protobuf:"bytes,2,opt,name=kv_pair,json=kvPair,proto3,oneof"`
}

type UpstreamSpec

type UpstreamSpec struct {

	// The AWS Region where the desired EC2 instances exist
	Region string `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	// Optional, if not set, Gloo will try to use the default AWS secret specified by environment variables.
	// If a secret is not provided, the environment must specify both the AWS access key and secret.
	// The environment variables used to indicate the AWS account can be:
	// - for the access key: "AWS_ACCESS_KEY_ID" or "AWS_ACCESS_KEY"
	// - for the secret: "AWS_SECRET_ACCESS_KEY" or "AWS_SECRET_KEY"
	// If set, 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>
	//	“`
	//
	// Gloo will create an EC2 API client with this credential. You may choose to use a credential with limited access
	// in conjunction with a list of Roles, specified by their Amazon Resource Number (ARN).
	SecretRef *core.ResourceRef `protobuf:"bytes,2,opt,name=secret_ref,json=secretRef,proto3" json:"secret_ref,omitempty"`
	// Optional, Amazon Resource Number (ARN) referring to IAM Role that should be assumed when the Upstream
	// queries for eligible EC2 instances.
	// If provided, Gloo will create an EC2 API client with the provided role. If not provided, Gloo will not assume
	// a role.
	RoleArn string `protobuf:"bytes,7,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	// List of tag filters for selecting instances
	// An instance must match all the filters in order to be selected
	// Filter keys are not case-sensitive
	Filters []*TagFilter `protobuf:"bytes,3,rep,name=filters,proto3" json:"filters,omitempty"`
	// If set, will use the EC2 public IP address. Defaults to the private IP address.
	PublicIp bool `protobuf:"varint,4,opt,name=public_ip,json=publicIp,proto3" json:"public_ip,omitempty"`
	// If set, will use this port on EC2 instances. Defaults to 0.
	Port uint32 `protobuf:"varint,5,opt,name=port,proto3" json:"port,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) GetFilters

func (x *UpstreamSpec) GetFilters() []*TagFilter

func (*UpstreamSpec) GetPort

func (x *UpstreamSpec) GetPort() uint32

func (*UpstreamSpec) GetPublicIp

func (x *UpstreamSpec) GetPublicIp() bool

func (*UpstreamSpec) GetRegion

func (x *UpstreamSpec) GetRegion() string

func (*UpstreamSpec) GetRoleArn

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

Jump to

Keyboard shortcuts

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