humidifier 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 67ea84abae22ec896dec0995ea8317ecdaf6ce26
4
- data.tar.gz: 4e834c91dfa6ed5cc689c302d832c86ec29dd196
3
+ metadata.gz: a07ab82ec7c365e45ec51d10ace4298d4a46bb92
4
+ data.tar.gz: 2b490e6f34bc98bba5636c844bb2a166a5a4b5e8
5
5
  SHA512:
6
- metadata.gz: ba97988edcb27d02e041e42500743c713ced173ca7ae3a4da720570d0c2ae4e4fbf7916c8718a64625d3037aae2d403203f6d4f205482a86253fa92e221c69ad
7
- data.tar.gz: 2da29025aeee1d04349dc673cc73804f2a76f260b2e34d89eb84c57e7ba79589a1814cd6a7d69d7d8029e396329d54280d7f90bb1bf5dbcf3c72847aa9fa41f4
6
+ metadata.gz: 26c04eb793aead4760c0016459dd8b27c694419c39560a77f25687c5d0af679de3358717a249cabe54af50fb78f56ecf5764e0e4aaa0329b7b44fd6c3e4bc78d
7
+ data.tar.gz: 8d3ebb5a2b3ebb6509388e563c17fd137103cc65deedfedd1d9d3aae87f7cd7fba628cccf97274259c322ab408b6fa89c6b5366116a3249a8fca661048fff39c
@@ -97,6 +97,20 @@ module Humidifier
97
97
  end
98
98
  end
99
99
 
100
+ # An number property
101
+ class NumberProp < Base
102
+ # converts the value through #to_i unless it is whitelisted
103
+ def convert(value)
104
+ puts "WARNING: Property #{name} should be a number" unless valid?(value)
105
+ value.to_i
106
+ end
107
+
108
+ # true if it is whitelisted or a Integer
109
+ def valid?(value)
110
+ whitelisted_value?(value) || value.is_a?(Integer)
111
+ end
112
+ end
113
+
100
114
  class << self
101
115
  # builds the appropriate prop object from the given spec line
102
116
  def from(spec_line)
@@ -106,6 +120,7 @@ module Humidifier
106
120
  when 'Boolean' then BooleanProp.new(key)
107
121
  when 'Integer' then IntegerProp.new(key)
108
122
  when 'String' then StringProp.new(key)
123
+ when 'Number' then NumberProp.new(key)
109
124
  when /\[.*?\]/ then ArrayProp.new(key)
110
125
  else JSONProp.new(key)
111
126
  end
@@ -1,4 +1,4 @@
1
1
  module Humidifier
2
2
  # Gem version
3
- VERSION = '0.4.0'.freeze
3
+ VERSION = '0.5.0'.freeze
4
4
  end
@@ -0,0 +1,11 @@
1
+ {
2
+ "Type" : "AWS::ApplicationAutoScaling::ScalableTarget",
3
+ "Properties" : {
4
+ "MaxCapacity" : Integer,
5
+ "MinCapacity" : Integer,
6
+ "ResourceId" : String,
7
+ "RoleARN" : String,
8
+ "ScalableDimension" : String,
9
+ "ServiceNamespace" : String
10
+ }
11
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "Type" : "AWS::ApplicationAutoScaling::ScalingPolicy",
3
+ "Properties" : {
4
+ "PolicyName" : String,
5
+ "PolicyType" : String,
6
+ "ResourceId" : String,
7
+ "ScalableDimension" : String,
8
+ "ScalingTargetId" : String,
9
+ "ServiceNamespace" : String,
10
+ "StepScalingPolicyConfiguration" : StepScalingPolicyConfiguration
11
+ }
12
+ }
@@ -1,21 +1,22 @@
1
1
  {
2
- "Type" : "AWS::AutoScaling::AutoScalingGroup",
3
- "Properties" : {
4
- "AvailabilityZones" : [ String, ... ],
5
- "Cooldown" : String,
6
- "DesiredCapacity" : String,
7
- "HealthCheckGracePeriod" : Integer,
8
- "HealthCheckType" : String,
9
- "InstanceId" : String,
10
- "LaunchConfigurationName" : String,
11
- "LoadBalancerNames" : [ String, ... ],
12
- "MaxSize" : String,
13
- "MetricsCollection" : [ MetricsCollection, ... ]
14
- "MinSize" : String,
15
- "NotificationConfigurations" : [ NotificationConfigurations, ... ],
16
- "PlacementGroup" : String,
17
- "Tags" : [ Auto Scaling Tag, ..., ],
18
- "TerminationPolicies" : [ String, ..., ],
19
- "VPCZoneIdentifier" : [ String, ... ]
20
- }
2
+ "Type" : "AWS::AutoScaling::AutoScalingGroup",
3
+ "Properties" : {
4
+ "AvailabilityZones" : [ String, ... ],
5
+ "Cooldown" : String,
6
+ "DesiredCapacity" : String,
7
+ "HealthCheckGracePeriod" : Integer,
8
+ "HealthCheckType" : String,
9
+ "InstanceId" : String,
10
+ "LaunchConfigurationName" : String,
11
+ "LoadBalancerNames" : [ String, ... ],
12
+ "MaxSize" : String,
13
+ "MetricsCollection" : [ MetricsCollection, ... ]
14
+ "MinSize" : String,
15
+ "NotificationConfigurations" : [ NotificationConfigurations, ... ],
16
+ "PlacementGroup" : String,
17
+ "Tags" : [ Auto Scaling Tag, ..., ],
18
+ "TargetGroupARNs" : [ String, ... ],
19
+ "TerminationPolicies" : [ String, ..., ],
20
+ "VPCZoneIdentifier" : [ String, ... ]
21
+ }
21
22
  }
@@ -0,0 +1,9 @@
1
+ {
2
+ "Type" : "AWS::CertificateManager::Certificate",
3
+ "Properties" : {
4
+ "DomainName" : String,
5
+ "DomainValidationOptions" : [ DomainValidationOptions, ... ],
6
+ "SubjectAlternativeNames" : [ String, ... ],
7
+ "Tags" : [ Resource Tag, ... ]
8
+ }
9
+ }
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Type" : "AWS::EFS::FileSystem",
3
3
  "Properties" : {
4
- "FileSystemTags" : [ FileSystemTags, ... ]
4
+ "FileSystemTags" : [ FileSystemTags, ... ],
5
+ "PerformanceMode" : String
5
6
  }
6
7
  }
@@ -0,0 +1,11 @@
1
+ {
2
+ "Type" : "AWS::ElasticLoadBalancingV2::Listener",
3
+ "Properties" : {
4
+ "Certificates" : [ Certificates, ... ],
5
+ "DefaultActions" : [ DefaultActions, ... ],
6
+ "LoadBalancerArn" : String,
7
+ "Port" : Integer,
8
+ "Protocol" : String,
9
+ "SslPolicy" : String
10
+ }
11
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "Type" : "AWS::ElasticLoadBalancingV2::ListenerRule",
3
+ "Properties" : {
4
+ "Actions" : [ Actions, ... ],
5
+ "Conditions" : [ Conditions, ... ],
6
+ "ListenerArn" : String,
7
+ "Priority" : Integer
8
+ }
9
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "Type" : "AWS::ElasticLoadBalancingV2::LoadBalancer",
3
+ "Properties" : {
4
+ "LoadBalancerAttributes" : [ LoadBalancerAttributes, ... ],
5
+ "Name" : String,
6
+ "Scheme" : String,
7
+ "SecurityGroups" : [ String, ... ],
8
+ "Subnets" : [ String, ... ],
9
+ "Tags" : [ Resource Tag, ... ]
10
+ }
11
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "Type" : "AWS::ElasticLoadBalancingV2::TargetGroup",
3
+ "Properties" : {
4
+ "HealthCheckIntervalSeconds" : Integer,
5
+ "HealthCheckPath" : String,
6
+ "HealthCheckPort" : String,
7
+ "HealthCheckProtocol" : String,
8
+ "HealthCheckTimeoutSeconds" : Integer,
9
+ "HealthyThresholdCount" : Integer,
10
+ "Matcher" : Matcher,
11
+ "Name" : String,
12
+ "Port" : Integer,
13
+ "Protocol" : String,
14
+ "Tags" : [ Resource Tag, ... ],
15
+ "TargetGroupAttributes" : [ TargetGroupAttributes, ... ],
16
+ "Targets" : [ TargetDescription, ... ],
17
+ "UnhealthyThresholdCount" : Integer,
18
+ "VpcId" : String
19
+ }
20
+ }
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Type" : "AWS::Logs::LogGroup",
3
3
  "Properties" : {
4
+ "LogGroupName" : String,
4
5
  "RetentionInDays" : Integer
5
6
  }
6
7
  }
@@ -24,6 +24,8 @@
24
24
  "MasterUsername" : String,
25
25
  "MasterUserPassword" : String,
26
26
  "MultiAZ" : Boolean,
27
+ "MonitoringInterval" : Integer,
28
+ "MonitoringRoleArn" : String,
27
29
  "OptionGroupName" : String,
28
30
  "Port" : String,
29
31
  "PreferredBackupWindow" : String,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: humidifier
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Localytics
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-08-02 00:00:00.000000000 Z
11
+ date: 2016-09-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -184,11 +184,14 @@ files:
184
184
  - specs/ApiGateway-Resource.cf
185
185
  - specs/ApiGateway-RestApi.cf
186
186
  - specs/ApiGateway-Stage.cf
187
+ - specs/ApplicationAutoScaling-ScalableTarget.cf
188
+ - specs/ApplicationAutoScaling-ScalingPolicy.cf
187
189
  - specs/AutoScaling-AutoScalingGroup.cf
188
190
  - specs/AutoScaling-LaunchConfiguration.cf
189
191
  - specs/AutoScaling-LifecycleHook.cf
190
192
  - specs/AutoScaling-ScalingPolicy.cf
191
193
  - specs/AutoScaling-ScheduledAction.cf
194
+ - specs/CertificateManager-Certificate.cf
192
195
  - specs/CloudFormation-Authentication.cf
193
196
  - specs/CloudFormation-CustomResource.cf
194
197
  - specs/CloudFormation-Interface.cf
@@ -264,6 +267,10 @@ files:
264
267
  - specs/ElasticBeanstalk-ConfigurationTemplate.cf
265
268
  - specs/ElasticBeanstalk-Environment.cf
266
269
  - specs/ElasticLoadBalancing-LoadBalancer.cf
270
+ - specs/ElasticLoadBalancingV2-Listener.cf
271
+ - specs/ElasticLoadBalancingV2-ListenerRule.cf
272
+ - specs/ElasticLoadBalancingV2-LoadBalancer.cf
273
+ - specs/ElasticLoadBalancingV2-TargetGroup.cf
267
274
  - specs/Elasticsearch-Domain.cf
268
275
  - specs/Events-Rule.cf
269
276
  - specs/GameLift-Alias.cf