salt.engines.sqs_events
An engine that continuously reads messages from SQS and fires them as events.
Note that long polling is utilized to avoid excessive CPU usage.
New in version 2015.8.0.
- depends
-
boto
Configuration
This engine can be run on the master or on a minion.
Example Config:
sqs.keyid: GKTADJGHEIQSXMKKRBJ08H sqs.key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs sqs.message_format: json
Explicit sqs credentials are accepted but this engine can also utilize IAM roles assigned to the instance through Instance Profiles. Dynamic credentials are then automatically obtained from AWS API and no further configuration is necessary. More Information available at:
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html
If IAM roles are not (or for boto
version < 2.5.1) used you need to specify them either in a pillar or in the config file of the master or minion, as appropriate:
To deserialize the message from json:
sqs.message_format: json
It's also possible to specify key, keyid and region via a profile:
sqs.keyid: GKTADJGHEIQSXMKKRBJ08H sqs.key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs
A region may also be specified in the configuration:
sqs.region: us-east-1
If a region is not specified, the default is us-east-1.
It's also possible to specify key, keyid and region via a profile:
myprofile: keyid: GKTADJGHEIQSXMKKRBJ08H key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs region: us-east-1
Additionally you can define cross account sqs:
engines: - sqs_events: queue: prod owner_acct_id: 111111111111
-
Listen to sqs and fire message on event bus
salt.engines.sqs_events.start(queue, profile=None, tag='salt/engine/sqs', owner_acct_id=None)
© 2021 SaltStack.
Licensed under the Apache License, Version 2.0.
https://docs.saltproject.io/en/latest/ref/engines/all/salt.engines.sqs_events.html