elastic_whenever 0.5.0 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/lib/elastic_whenever/task/rule.rb +16 -2
- data/lib/elastic_whenever/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f819eb4be8beaf663016106905b28a3f02241793f5ee3965e88b36a0f8f3e4d0
|
4
|
+
data.tar.gz: c4ca5aadbd922b26d0671c7a2783c89864dec7b42875bb7df0e044dd3a48cad0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f89c03a025d724efedcf843b698459cb0cddefc55cec555c9a9ba67d0ef0a5545650406fef3d37d7b0f4f4565dece24d2790e15d6f8085c6f37c3cc3a3a918b6
|
7
|
+
data.tar.gz: 672aa12e9bd8055be8dbb7c76982f93545f71f2bb61475110dcaff77751c10bdaf952231ad6d99c253f4f7720a48cfe387cf59c2d8756831ab542f22a14d2752
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,7 @@ module ElasticWhenever
|
|
3
3
|
class Rule
|
4
4
|
attr_reader :name
|
5
5
|
attr_reader :expression
|
6
|
+
attr_reader :description
|
6
7
|
|
7
8
|
class UnsupportedOptionException < StandardError; end
|
8
9
|
|
@@ -13,6 +14,7 @@ module ElasticWhenever
|
|
13
14
|
option,
|
14
15
|
name: rule.name,
|
15
16
|
expression: rule.schedule_expression,
|
17
|
+
description: rule.description
|
16
18
|
)
|
17
19
|
end
|
18
20
|
end
|
@@ -21,13 +23,15 @@ module ElasticWhenever
|
|
21
23
|
self.new(
|
22
24
|
option,
|
23
25
|
name: rule_name(option.identifier, task.expression, task.commands),
|
24
|
-
expression: task.expression
|
26
|
+
expression: task.expression,
|
27
|
+
description: rule_description(option.identifier, task.expression, task.commands)
|
25
28
|
)
|
26
29
|
end
|
27
30
|
|
28
|
-
def initialize(option, name:, expression:)
|
31
|
+
def initialize(option, name:, expression:, description:)
|
29
32
|
@name = name
|
30
33
|
@expression = expression
|
34
|
+
@description = description
|
31
35
|
@client = Aws::CloudWatchEvents::Client.new(option.aws_config)
|
32
36
|
end
|
33
37
|
|
@@ -35,6 +39,8 @@ module ElasticWhenever
|
|
35
39
|
client.put_rule(
|
36
40
|
name: name,
|
37
41
|
schedule_expression: expression,
|
42
|
+
# See https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutRule.html#API_PutRule_RequestSyntax
|
43
|
+
description: truncate(description, 512),
|
38
44
|
state: "ENABLED",
|
39
45
|
)
|
40
46
|
end
|
@@ -51,6 +57,14 @@ module ElasticWhenever
|
|
51
57
|
"#{identifier}_#{Digest::SHA1.hexdigest([expression, commands.map { |command| command.join("-") }.join("-")].join("-"))}"
|
52
58
|
end
|
53
59
|
|
60
|
+
def self.rule_description(identifier, expression, commands)
|
61
|
+
"#{identifier} - #{expression} - #{commands.map { |command| command.join(" ") }.join(" - ")}"
|
62
|
+
end
|
63
|
+
|
64
|
+
def truncate(string, max)
|
65
|
+
string.length > max ? string[0...max] : string
|
66
|
+
end
|
67
|
+
|
54
68
|
attr_reader :client
|
55
69
|
end
|
56
70
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: elastic_whenever
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kazuma Watanabe
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-09
|
11
|
+
date: 2019-10-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|