EventSourceMapping

lambda.services.k8s.aws/v1alpha1

TypeLink
GoDoclambda-controller/apis/v1alpha1#EventSourceMapping

Metadata

PropertyValue
ScopeNamespaced
KindEventSourceMapping
ListKindEventSourceMappingList
Pluraleventsourcemappings
Singulareventsourcemapping

Spec

amazonManagedKafkaEventSourceConfig: 
  consumerGroupID: string
batchSize: integer
bisectBatchOnFunctionError: boolean
destinationConfig: 
  onFailure: 
    destination: string
  onSuccess: 
    destination: string
enabled: boolean
eventSourceARN: string
eventSourceRef: 
  from: 
    name: string
filterCriteria: 
  filters:
  - pattern: string
functionName: string
functionRef: 
  from: 
    name: string
functionResponseTypes:
- string
maximumBatchingWindowInSeconds: integer
maximumRecordAgeInSeconds: integer
maximumRetryAttempts: integer
parallelizationFactor: integer
queueRefs:
  from: 
    name: string
queues:
- string
scalingConfig: 
  maximumConcurrency: integer
selfManagedEventSource: 
  endpoints: {}
selfManagedKafkaEventSourceConfig: 
  consumerGroupID: string
sourceAccessConfigurations:
- type_: string
  uRI: string
startingPosition: string
startingPositionTimestamp: string
topics:
- string
tumblingWindowInSeconds: integer
FieldDescription
amazonManagedKafkaEventSourceConfig
Optional
object
Specific configuration settings for an Amazon Managed Streaming for Apache
Kafka (Amazon MSK) event source.
amazonManagedKafkaEventSourceConfig.consumerGroupID
Optional
string
batchSize
Optional
integer
The maximum number of records in each batch that Lambda pulls from your stream
or queue and sends to your function. Lambda passes all of the records in
the batch to the function in a single call, up to the payload limit for synchronous
invocation (6 MB).


* Amazon Kinesis – Default 100. Max 10,000.


* Amazon DynamoDB Streams – Default 100. Max 10,000.


* Amazon Simple Queue Service – Default 10. For standard queues the
max is 10,000. For FIFO queues the max is 10.


* Amazon Managed Streaming for Apache Kafka – Default 100. Max 10,000.


* Self-managed Apache Kafka – Default 100. Max 10,000.


* Amazon MQ (ActiveMQ and RabbitMQ) – Default 100. Max 10,000.
bisectBatchOnFunctionError
Optional
boolean
(Streams only) If the function returns an error, split the batch in two and
retry.
destinationConfig
Optional
object
(Streams only) An Amazon SQS queue or Amazon SNS topic destination for discarded
records.
destinationConfig.onFailure
Optional
object
A destination for events that failed processing.
destinationConfig.onFailure.destination
Optional
string
destinationConfig.onSuccess
Optional
object
A destination for events that were processed successfully.
destinationConfig.onSuccess.destination
Optional
string
enabled
Optional
boolean
When true, the event source mapping is active. When false, Lambda pauses
polling and invocation.


Default: True
eventSourceARN
Optional
string
The Amazon Resource Name (ARN) of the event source.


* Amazon Kinesis – The ARN of the data stream or a stream consumer.


* Amazon DynamoDB Streams – The ARN of the stream.


* Amazon Simple Queue Service – The ARN of the queue.


* Amazon Managed Streaming for Apache Kafka – The ARN of the cluster.


* Amazon MQ – The ARN of the broker.
eventSourceRef
Optional
object
AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference
type to provide more user friendly syntax for references using ‘from’ field
Ex:
APIIDRef:


from:
name: my-api
eventSourceRef.from
Optional
object
AWSResourceReference provides all the values necessary to reference another
k8s resource for finding the identifier(Id/ARN/Name)
eventSourceRef.from.name
Optional
string
filterCriteria
Optional
object
An object that defines the filter criteria that determine whether Lambda
should process an event. For more information, see Lambda event filtering
(https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html).
filterCriteria.filters
Optional
array
filterCriteria.filters.[]
Required
object
A structure within a FilterCriteria object that defines an event filtering
pattern.
functionName
Optional
string
The name of the Lambda function.


Name formats


* Function name – MyFunction.


* Function ARN – arn:aws:lambda:us-west-2:123456789012:function:MyFunction.


* Version or Alias ARN – arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.


* Partial ARN – 123456789012:function:MyFunction.


The length constraint applies only to the full ARN. If you specify only the
function name, it’s limited to 64 characters in length.
functionRef
Optional
object
AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference
type to provide more user friendly syntax for references using ‘from’ field
Ex:
APIIDRef:


from:
name: my-api
functionRef.from
Optional
object
AWSResourceReference provides all the values necessary to reference another
k8s resource for finding the identifier(Id/ARN/Name)
functionRef.from.name
Optional
string
functionResponseTypes
Optional
array
(Streams and Amazon SQS) A list of current response type enums applied to
the event source mapping.
functionResponseTypes.[]
Required
string
maximumRecordAgeInSeconds
Optional
integer
(Streams only) Discard records older than the specified age. The default
value is infinite (-1).
maximumRetryAttempts
Optional
integer
(Streams only) Discard records after the specified number of retries. The
default value is infinite (-1). When set to infinite (-1), failed records
are retried until the record expires.
parallelizationFactor
Optional
integer
(Streams only) The number of batches to process from each shard concurrently.
queueRefs
Optional
array
queueRefs.[]
Required
object
AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference
type to provide more user friendly syntax for references using ‘from’ field
Ex:
APIIDRef:
from:
  name: my-api || **queueRefs.[].from**<br/>Optional | **object**<br/>AWSResourceReference provides all the values necessary to reference another<br/>k8s resource for finding the identifier(Id/ARN/Name) |

| queueRefs.[].from.name
Optional | string
| | queues
Optional | array
(MQ) The name of the Amazon MQ broker destination queue to consume. | | queues.[]
Required | string
|| scalingConfig
Optional | object
(Amazon SQS only) The scaling configuration for the event source. For more
information, see Configuring maximum concurrency for Amazon SQS event sources
(https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-max-concurrency). | | scalingConfig.maximumConcurrency
Optional | integer
| | selfManagedEventSource
Optional | object
The self-managed Apache Kafka cluster to receive records from. | | selfManagedEventSource.endpoints
Optional | object
| | selfManagedKafkaEventSourceConfig
Optional | object
Specific configuration settings for a self-managed Apache Kafka event source. | | selfManagedKafkaEventSourceConfig.consumerGroupID
Optional | string
| | sourceAccessConfigurations
Optional | array
An array of authentication protocols or VPC components required to secure
your event source. | | sourceAccessConfigurations.[]
Required | object
To secure and define access to your event source, you can specify the authentication protocol, VPC components, or virtual host. || **sourceAccessConfigurations.[].type_**
Optional | **string**
| | **sourceAccessConfigurations.[].uRI**
Optional | **string**
| | **startingPosition**
Optional | **string**
The position in a stream from which to start reading. Required for Amazon
Kinesis, Amazon DynamoDB, and Amazon MSK Streams sources. AT_TIMESTAMP is
supported only for Amazon Kinesis streams. | | **startingPositionTimestamp**
Optional | **string**
With StartingPosition set to AT_TIMESTAMP, the time from which to start reading. | | **topics**
Optional | **array**
The name of the Kafka topic. | | **topics.[]**
Required | **string**
|| **tumblingWindowInSeconds**
Optional | **integer**
(Streams only) The duration in seconds of a processing window. The range
is between 1 second and 900 seconds. |

Status

ackResourceMetadata: 
  arn: string
  ownerAccountID: string
  region: string
conditions:
- lastTransitionTime: string
  message: string
  reason: string
  status: string
  type: string
functionARN: string
lastModified: string
lastProcessingResult: string
state: string
stateTransitionReason: string
uuid: string
FieldDescription
ackResourceMetadata
Optional
object
All CRs managed by ACK have a common Status.ACKResourceMetadata member
that is used to contain resource sync state, account ownership,
constructed ARN for the resource
ackResourceMetadata.arn
Optional
string
ARN is the Amazon Resource Name for the resource. This is a
globally-unique identifier and is set only by the ACK service controller
once the controller has orchestrated the creation of the resource OR
when it has verified that an “adopted” resource (a resource where the
ARN annotation was set by the Kubernetes user on the CR) exists and
matches the supplied CR’s Spec field values.
TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse
https://github.com/aws/aws-controllers-k8s/issues/270
ackResourceMetadata.ownerAccountID
Required
string
OwnerAccountID is the AWS Account ID of the account that owns the
backend AWS service API resource.
ackResourceMetadata.region
Required
string
Region is the AWS region in which the resource exists or will exist.
conditions
Optional
array
All CRS managed by ACK have a common Status.Conditions member that
contains a collection of ackv1alpha1.Condition objects that describe
the various terminal states of the CR and its backend AWS service API
resource
conditions.[]
Required
object
Condition is the common struct used by all CRDs managed by ACK service
controllers to indicate terminal states of the CR and its backend AWS
service API resource
conditions.[].message
Optional
string
A human readable message indicating details about the transition.
conditions.[].reason
Optional
string
The reason for the condition’s last transition.
conditions.[].status
Optional
string
Status of the condition, one of True, False, Unknown.
conditions.[].type
Optional
string
Type is the type of the Condition
functionARN
Optional
string
The ARN of the Lambda function.
lastModified
Optional
string
The date that the event source mapping was last updated or that its state
changed.
lastProcessingResult
Optional
string
The result of the last Lambda invocation of your function.
state
Optional
string
The state of the event source mapping. It can be one of the following: Creating,
Enabling, Enabled, Disabling, Disabled, Updating, or Deleting.
stateTransitionReason
Optional
string
Indicates whether a user or Lambda made the last change to the event source
mapping.
uuid
Optional
string
The identifier of the event source mapping.