Sha256: 2aaebe95ff093b880b6ac22aae1b8efbd5b79b1b503845e462b39935d1ae0f28
Contents?: true
Size: 654 Bytes
Versions: 3
Compression:
Stored size: 654 Bytes
Contents
require 'aws-sdk' class AwsSns < Oxidized::Hook def validate_cfg! raise KeyError, 'hook.region is required' unless cfg.has_key?('region') raise KeyError, 'hook.topic_arn is required' unless cfg.has_key?('topic_arn') end def run_hook(ctx) sns = Aws::SNS::Resource.new(region: cfg.region) topic = sns.topic(cfg.topic_arn) message = { :event => ctx.event.to_s } if ctx.node message.merge!( :group => ctx.node.group.to_s, :model => ctx.node.model.class.name.to_s.downcase, :node => ctx.node.name.to_s ) end topic.publish({ message: message.to_json }) end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
oxidized-0.21.0 | lib/oxidized/hook/awssns.rb |
oxidized-0.20.0 | lib/oxidized/hook/awssns.rb |
oxidized-0.19.0 | lib/oxidized/hook/awssns.rb |