cfn-guardian 0.7.2 → 0.7.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1417ef4853dc20a776837ec1fee0433449dd1f4fd5601081ca2602c8cc6b9f06
4
- data.tar.gz: 5ff99a91ba3c512dca2cde401b0ce8c1ada0127c9e56928f7fde9ead8c4cc5b6
3
+ metadata.gz: b3345312b95427da816d7868b27d9788149e3472a871f858f3b8171152284e3c
4
+ data.tar.gz: c412fb2251b7f46a62f9b21cff4e03740c0fba4c4205d57db5bc191aad0e484d
5
5
  SHA512:
6
- metadata.gz: b3eed6e24561d7927408b771317a93d1fe421f784fd3b0e3260df790d710c90e1abe1749e856c0cbc3ec0ebe30a4842d40c3714f2943843e19c1f7eac215010d
7
- data.tar.gz: 3851fe0ad73593f25bd0eff3a62031345b4214d5bff9384c072a11af93192308d548aca7f83525935602b4c794077f24462bccccf547cb8801d2b52cdc1d5de1
6
+ metadata.gz: e23576678690da79c9df22f8c67631f86dbfe724349d4b54ca796fcd313803946890fc15ea73d17bf30e0d1946504c9bc0627f2f18151417650376ef49ef6750
7
+ data.tar.gz: 163b472a1cc2f59690e7819acbc5546a7043e6333a85346c4e4ccbac49d328c66aadaf61a63a89df04b487eec94cd4154c96f638e89bf25936694a7c2b2873ee
data/.gitignore CHANGED
@@ -9,4 +9,5 @@
9
9
 
10
10
  cfn-guardian-*.gem
11
11
 
12
- out/
12
+ out/
13
+ alarms.yaml
@@ -44,6 +44,7 @@ require 'cfnguardian/resources/step_functions'
44
44
  require 'cfnguardian/resources/vpn_tunnel'
45
45
  require 'cfnguardian/resources/vpn_connection'
46
46
  require 'cfnguardian/resources/elastic_search'
47
+ require 'cfnguardian/resources/jenkins'
47
48
  require 'cfnguardian/version'
48
49
  require 'cfnguardian/error'
49
50
 
@@ -485,6 +485,15 @@ module CfnGuardian
485
485
  end
486
486
  end
487
487
 
488
+ class JenkinsAlarm < BaseAlarm
489
+ def initialize(resource)
490
+ super(resource)
491
+ @group = 'Jenkins'
492
+ @namespace = 'Ciinabox/Jenkins'
493
+ @dimensions = { Jenkins: resource['Id'], Monitoring: 'JenkMon' }
494
+ end
495
+ end
496
+
488
497
  class VPNTunnelAlarm < BaseAlarm
489
498
  def initialize(resource)
490
499
  super(resource)
@@ -13,7 +13,7 @@ module CfnGuardian::Resource
13
13
  @alarms.push(alarm)
14
14
 
15
15
  alarm = CfnGuardian::Models::AmazonMQBrokerAlarm.new(@resource)
16
- alarm.name = 'CpuCreditBalanceCritical'
16
+ alarm.name = 'CpuCreditBalanceWarning'
17
17
  alarm.metric_name = 'CpuCreditBalance'
18
18
  alarm.comparison_operator = 'LessThanThreshold'
19
19
  alarm.statistic = 'Minimum'
@@ -26,6 +26,7 @@ module CfnGuardian::Resource
26
26
  alarm.statistic = 'Average'
27
27
  alarm.threshold = 1000
28
28
  alarm.evaluation_periods = 2
29
+ alarm.treat_missing_data = 'notBreaching'
29
30
  @alarms.push(alarm)
30
31
  end
31
32
 
@@ -26,6 +26,9 @@ module CfnGuardian::Resource
26
26
  end
27
27
 
28
28
  def get_alarms(group,overides={})
29
+ # deep copying the overrides to preserse it's reference before doing any changes to it
30
+ overides = Marshal.load(Marshal.dump(overides))
31
+
29
32
  # generate default alarms
30
33
  default_alarms()
31
34
 
@@ -0,0 +1,17 @@
1
+ module CfnGuardian::Resource
2
+ class Jenkins < Base
3
+
4
+ def default_alarms
5
+ alarm = CfnGuardian::Models::JenkinsAlarm.new(@resource)
6
+ alarm.name = 'NoSuccess'
7
+ alarm.metric_name = 'Success'
8
+ alarm.statistic = 'Maximum'
9
+ alarm.treat_missing_data = 'breaching'
10
+ alarm.alarm_action = 'Warning'
11
+ alarm.period = 3600
12
+ alarm.comparison_operator = 'LessThanThreshold'
13
+ alarm.threshold = 1
14
+ @alarms.push(alarm)
15
+ end
16
+ end
17
+ end
@@ -6,18 +6,21 @@ module CfnGuardian::Resource
6
6
  alarm.name = 'LambdaErrors'
7
7
  alarm.metric_name = 'Errors'
8
8
  alarm.threshold = 0.5
9
+ alarm.treat_missing_data = 'notBreaching'
9
10
  @alarms.push(alarm)
10
11
 
11
12
  alarm = CfnGuardian::Models::LambdaAlarm.new(@resource)
12
13
  alarm.name = 'Throttles'
13
14
  alarm.metric_name = 'Throttles'
14
15
  alarm.threshold = 0.5
16
+ alarm.treat_missing_data = 'notBreaching'
15
17
  @alarms.push(alarm)
16
18
 
17
19
  alarm = CfnGuardian::Models::LambdaAlarm.new(@resource)
18
20
  alarm.name = 'DeadLetterErrors'
19
21
  alarm.metric_name = 'DeadLetterErrors'
20
22
  alarm.threshold = 0.5
23
+ alarm.treat_missing_data = 'notBreaching'
21
24
  @alarms.push(alarm)
22
25
 
23
26
  alarm = CfnGuardian::Models::LambdaAlarm.new(@resource)
@@ -11,6 +11,7 @@ module CfnGuardian::Resource
11
11
  alarm = CfnGuardian::Models::LogGroupAlarm.new(@resource)
12
12
  alarm.name = filter['MetricName']
13
13
  alarm.metric_name = filter['MetricName']
14
+ alarm.treat_missing_data = 'notBreaching'
14
15
  @alarms.push(alarm)
15
16
  end
16
17
  end
@@ -1,4 +1,4 @@
1
1
  module CfnGuardian
2
- VERSION = "0.7.2"
2
+ VERSION = "0.7.6"
3
3
  CHANGE_SET_VERSION = VERSION.gsub('.', '-').freeze
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cfn-guardian
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.7.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Guslington
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-10-07 00:00:00.000000000 Z
11
+ date: 2021-12-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -295,6 +295,7 @@ files:
295
295
  - lib/cfnguardian/resources/internal_http.rb
296
296
  - lib/cfnguardian/resources/internal_port.rb
297
297
  - lib/cfnguardian/resources/internal_sftp.rb
298
+ - lib/cfnguardian/resources/jenkins.rb
298
299
  - lib/cfnguardian/resources/lambda.rb
299
300
  - lib/cfnguardian/resources/log_group.rb
300
301
  - lib/cfnguardian/resources/network_targetgroup.rb