consul-templaterb 1.28.0 → 1.31.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +63 -30
- data/TemplateAPI.md +1 -1
- data/bin/consul-templaterb +5 -0
- data/lib/consul/async/consul_endpoint.rb +28 -2
- data/lib/consul/async/version.rb +1 -1
- data/samples/consul-ui/.preferences.rb.samples +1 -0
- data/samples/consul-ui/README.md +6 -0
- data/samples/consul-ui/consul_services.json.erb +14 -1
- data/samples/consul-ui/decorators.js.erb +7 -0
- data/samples/consul-ui/js/nodes.js +1 -1
- data/samples/consul-ui/js/service.js +1 -1
- data/samples/consul-ui/js/utils.js +8 -5
- metadata +32 -49
- data/.gitignore +0 -41
- data/.rspec +0 -2
- data/.rubocop.yml +0 -57
- data/.ruby_app +0 -0
- data/.travis.yml +0 -19
- data/CODE_OF_CONDUCT.md +0 -76
- data/CONTRIBUTING.md +0 -25
- data/Dockerfile +0 -15
- data/Gemfile +0 -5
- data/INTERNALS.md +0 -49
- data/LICENSE.txt +0 -201
- data/Rakefile +0 -8
- data/consul-templaterb.gemspec +0 -42
- data/docker-nginx-conf/nginx.conf +0 -27
- data/docs/article-06_Template-based_discovery_with_consul-templaterb.md +0 -124
- data/docs/images/consul-templaterb.png +0 -0
- data/docs/images/consul-templaterb.svg +0 -3
- data/docs/images/consul-ui_001.png +0 -0
metadata
CHANGED
@@ -1,57 +1,57 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: consul-templaterb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.31.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- SRE Core Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: em-http-request
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.1
|
19
|
+
version: '1.1'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.1
|
26
|
+
version: '1.1'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: eventmachine
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.2
|
33
|
+
version: '1.2'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.2
|
40
|
+
version: '1.2'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: parallel
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 1.2
|
47
|
+
version: '1.2'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.2
|
54
|
+
version: '1.2'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: bundler
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,14 +72,14 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 12.3
|
75
|
+
version: '12.3'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 12.3
|
82
|
+
version: '12.3'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: rspec
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -98,58 +98,58 @@ dependencies:
|
|
98
98
|
name: rspec_junit_formatter
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - "
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
103
|
+
version: 0.4.1
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - "
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
110
|
+
version: 0.4.1
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: rubocop
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: 0.80.0
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: 0.80.0
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: rubocop-junit-formatter
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- -
|
129
|
+
- - '='
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
131
|
+
version: 0.1.4
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- -
|
136
|
+
- - '='
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version:
|
138
|
+
version: 0.1.4
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: webmock
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
|
-
- - "
|
143
|
+
- - "~>"
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version: '
|
145
|
+
version: '2.1'
|
146
146
|
type: :development
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
|
-
- - "
|
150
|
+
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version: '
|
152
|
+
version: '2.1'
|
153
153
|
description: A ruby implementation of Consul Template with support of erb templating
|
154
154
|
with hi-performance on large clusters and advanced process management features.
|
155
155
|
email:
|
@@ -162,28 +162,10 @@ extra_rdoc_files:
|
|
162
162
|
- CHANGELOG.md
|
163
163
|
- TemplateAPI.md
|
164
164
|
files:
|
165
|
-
- ".gitignore"
|
166
|
-
- ".rspec"
|
167
|
-
- ".rubocop.yml"
|
168
|
-
- ".ruby_app"
|
169
|
-
- ".travis.yml"
|
170
165
|
- CHANGELOG.md
|
171
|
-
- CODE_OF_CONDUCT.md
|
172
|
-
- CONTRIBUTING.md
|
173
|
-
- Dockerfile
|
174
|
-
- Gemfile
|
175
|
-
- INTERNALS.md
|
176
|
-
- LICENSE.txt
|
177
166
|
- README.md
|
178
|
-
- Rakefile
|
179
167
|
- TemplateAPI.md
|
180
168
|
- bin/consul-templaterb
|
181
|
-
- consul-templaterb.gemspec
|
182
|
-
- docker-nginx-conf/nginx.conf
|
183
|
-
- docs/article-06_Template-based_discovery_with_consul-templaterb.md
|
184
|
-
- docs/images/consul-templaterb.png
|
185
|
-
- docs/images/consul-templaterb.svg
|
186
|
-
- docs/images/consul-ui_001.png
|
187
169
|
- lib/consul/async/consul_endpoint.rb
|
188
170
|
- lib/consul/async/consul_template.rb
|
189
171
|
- lib/consul/async/consul_template_engine.rb
|
@@ -199,6 +181,7 @@ files:
|
|
199
181
|
- samples/all_services_multi_agents.txt.erb
|
200
182
|
- samples/all_templates.erb
|
201
183
|
- samples/checks_in_warning_or_critical_state.yaml.erb
|
184
|
+
- samples/consul-ui/.preferences.rb.samples
|
202
185
|
- samples/consul-ui/README.md
|
203
186
|
- samples/consul-ui/common/footer.html.erb
|
204
187
|
- samples/consul-ui/common/header.html.erb
|
@@ -252,7 +235,7 @@ files:
|
|
252
235
|
- samples/vault-ldap.txt.erb
|
253
236
|
homepage: https://rubygems.org/gems/consul-templaterb
|
254
237
|
licenses:
|
255
|
-
- Apache
|
238
|
+
- Apache-2.0
|
256
239
|
metadata:
|
257
240
|
bug_tracker_uri: https://github.com/criteo/consul-templaterb/issues
|
258
241
|
changelog_uri: https://github.com/criteo/consul-templaterb/blob/master/CHANGELOG.md
|
data/.gitignore
DELETED
@@ -1,41 +0,0 @@
|
|
1
|
-
/.bundle/
|
2
|
-
/.yardoc
|
3
|
-
/Gemfile.lock
|
4
|
-
/_yardoc/
|
5
|
-
/coverage/
|
6
|
-
/doc/
|
7
|
-
/pkg/
|
8
|
-
/spec/reports/
|
9
|
-
/tmp/
|
10
|
-
/samples/**/*.json
|
11
|
-
/samples/**/*.xml
|
12
|
-
/samples/**/*.html
|
13
|
-
/samples/**/*.txt
|
14
|
-
/samples/**/*.cfg
|
15
|
-
samples/consul-ui/decorators.js
|
16
|
-
/samples/hosts
|
17
|
-
/samples/hosts_per_services
|
18
|
-
/samples/prometheus_consul_coordinates
|
19
|
-
/samples/ready
|
20
|
-
/samples/render_template_from_kv
|
21
|
-
/samples/consul_template
|
22
|
-
/samples/metrics
|
23
|
-
/samples/service_checks_metrics
|
24
|
-
/samples/find_blocked_choregraphies
|
25
|
-
/spec/consul/async/resources/templates/*.txt
|
26
|
-
/spec/consul/async/resources/templates/*.result
|
27
|
-
/out.txt
|
28
|
-
|
29
|
-
# rspec failure tracking
|
30
|
-
.rspec_status
|
31
|
-
# Mac OS
|
32
|
-
.DS_Store
|
33
|
-
|
34
|
-
# IntelliJ project files
|
35
|
-
*.iml
|
36
|
-
*.iws
|
37
|
-
*.ipr
|
38
|
-
.idea/
|
39
|
-
|
40
|
-
# Misc
|
41
|
-
*.swp
|
data/.rspec
DELETED
data/.rubocop.yml
DELETED
@@ -1,57 +0,0 @@
|
|
1
|
-
AllCops:
|
2
|
-
Exclude:
|
3
|
-
- bundle/**/*
|
4
|
-
TargetRubyVersion: 2.4
|
5
|
-
|
6
|
-
Layout/LineLength:
|
7
|
-
Max: 175
|
8
|
-
|
9
|
-
Metrics/AbcSize:
|
10
|
-
Max: 87
|
11
|
-
|
12
|
-
Metrics/BlockLength:
|
13
|
-
Max: 188
|
14
|
-
|
15
|
-
Metrics/BlockNesting:
|
16
|
-
Max: 4
|
17
|
-
|
18
|
-
Metrics/ClassLength:
|
19
|
-
Max: 285
|
20
|
-
|
21
|
-
Metrics/CyclomaticComplexity:
|
22
|
-
Max: 21
|
23
|
-
|
24
|
-
Metrics/MethodLength:
|
25
|
-
Max: 68
|
26
|
-
|
27
|
-
Metrics/ParameterLists:
|
28
|
-
Max: 18
|
29
|
-
|
30
|
-
Metrics/PerceivedComplexity:
|
31
|
-
Max: 24
|
32
|
-
|
33
|
-
# We use `dc` as a parameter in many methods
|
34
|
-
Naming/MethodParameterName:
|
35
|
-
Enabled: false
|
36
|
-
|
37
|
-
Naming/VariableNumber:
|
38
|
-
Enabled: false
|
39
|
-
|
40
|
-
Style/Documentation:
|
41
|
-
Enabled: true
|
42
|
-
|
43
|
-
Style/FrozenStringLiteralComment:
|
44
|
-
Enabled: false
|
45
|
-
|
46
|
-
Style/HashEachMethods:
|
47
|
-
Enabled: true
|
48
|
-
|
49
|
-
Style/HashTransformKeys:
|
50
|
-
Enabled: true
|
51
|
-
|
52
|
-
Style/HashTransformValues:
|
53
|
-
Enabled: true
|
54
|
-
|
55
|
-
Style/MultilineBlockChain:
|
56
|
-
Enabled: false
|
57
|
-
|
data/.ruby_app
DELETED
File without changes
|
data/.travis.yml
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
rvm:
|
3
|
-
- 2.4.10
|
4
|
-
- 2.5.8
|
5
|
-
- 2.6.6
|
6
|
-
- 2.7.1
|
7
|
-
jobs:
|
8
|
-
include:
|
9
|
-
- stage: Gem release
|
10
|
-
rvm: 2.5.8
|
11
|
-
script: echo "Publishing consul-templaterb on rubygems.org ..."
|
12
|
-
deploy:
|
13
|
-
provider: rubygems
|
14
|
-
api_key:
|
15
|
-
secure: l78H6Ow9HCeEz0hcAP2XCXaGGBNRXZ/QLFPNzwyNmHToko9WqZj6mbiNIcVwZ8aCcZEzFmtcB7m1lC1l+mvot3Snfh4OUErK7EXMLiNxUWybtA4qJqmsb2J8JGS69pTohPKagi1YyRbyVs2tJpM5OVazcNxEQDAVkWVxJuPVz6tsn4rXZsL77nTSVyB6YGKgguRGhtS/3M0ufk1ymOpuk8pxXKaotlYGRXmht2OHW+FDQczTMgqu6jiZubjWlNHVxtYn+CsLYNj1BswzD6fF1uous6nchV0if2QW5N4OJVyZCx3yEQ0RswfI8G1kG/Jm8wd2lSknY2wpnd1qkRnAcFlKBpUv8aQd6SdbSO84GTAOvucgK7Mcf0LRvYSE2FyagaAPFSfMybWd+GS26g5AuRPpkhtsS9ijfdIzpudiF18pvnJ+wQj+hWM/THWowYNyKv9NeckxdrULaHPisA346r5eM/EADOhyEUtPm11PFgcheGjff1H4qXGc9gcm50u6mNNHkWv38oGhAPpRk/bU7qybTKqRKNGWGP0MiT4WVIFXp62/JMY7AmufOdJx5Ca5JVsaWoN4fsS9r3+R+FxvRtV9NOrRJVKKaQhzi4UHEUDQ2hQjpLDijD5L0vUsl6arl+nufTt5G5jp9QvdY7fhYT1mpGgWj0hTBd8Pxsl3N8U=
|
16
|
-
gem: consul-templaterb
|
17
|
-
on:
|
18
|
-
tags: true
|
19
|
-
repo: criteo/consul-templaterb
|
data/CODE_OF_CONDUCT.md
DELETED
@@ -1,76 +0,0 @@
|
|
1
|
-
# Contributor Covenant Code of Conduct
|
2
|
-
|
3
|
-
## Our Pledge
|
4
|
-
|
5
|
-
In the interest of fostering an open and welcoming environment, we as
|
6
|
-
contributors and maintainers pledge to making participation in our project and
|
7
|
-
our community a harassment-free experience for everyone, regardless of age, body
|
8
|
-
size, disability, ethnicity, sex characteristics, gender identity and expression,
|
9
|
-
level of experience, education, socio-economic status, nationality, personal
|
10
|
-
appearance, race, religion, or sexual identity and orientation.
|
11
|
-
|
12
|
-
## Our Standards
|
13
|
-
|
14
|
-
Examples of behavior that contributes to creating a positive environment
|
15
|
-
include:
|
16
|
-
|
17
|
-
* Using welcoming and inclusive language
|
18
|
-
* Being respectful of differing viewpoints and experiences
|
19
|
-
* Gracefully accepting constructive criticism
|
20
|
-
* Focusing on what is best for the community
|
21
|
-
* Showing empathy towards other community members
|
22
|
-
|
23
|
-
Examples of unacceptable behavior by participants include:
|
24
|
-
|
25
|
-
* The use of sexualized language or imagery and unwelcome sexual attention or
|
26
|
-
advances
|
27
|
-
* Trolling, insulting/derogatory comments, and personal or political attacks
|
28
|
-
* Public or private harassment
|
29
|
-
* Publishing others' private information, such as a physical or electronic
|
30
|
-
address, without explicit permission
|
31
|
-
* Other conduct which could reasonably be considered inappropriate in a
|
32
|
-
professional setting
|
33
|
-
|
34
|
-
## Our Responsibilities
|
35
|
-
|
36
|
-
Project maintainers are responsible for clarifying the standards of acceptable
|
37
|
-
behavior and are expected to take appropriate and fair corrective action in
|
38
|
-
response to any instances of unacceptable behavior.
|
39
|
-
|
40
|
-
Project maintainers have the right and responsibility to remove, edit, or
|
41
|
-
reject comments, commits, code, wiki edits, issues, and other contributions
|
42
|
-
that are not aligned to this Code of Conduct, or to ban temporarily or
|
43
|
-
permanently any contributor for other behaviors that they deem inappropriate,
|
44
|
-
threatening, offensive, or harmful.
|
45
|
-
|
46
|
-
## Scope
|
47
|
-
|
48
|
-
This Code of Conduct applies both within project spaces and in public spaces
|
49
|
-
when an individual is representing the project or its community. Examples of
|
50
|
-
representing a project or community include using an official project e-mail
|
51
|
-
address, posting via an official social media account, or acting as an appointed
|
52
|
-
representative at an online or offline event. Representation of a project may be
|
53
|
-
further defined and clarified by project maintainers.
|
54
|
-
|
55
|
-
## Enforcement
|
56
|
-
|
57
|
-
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
58
|
-
reported by contacting the project team at p.souchay@criteo.com. All
|
59
|
-
complaints will be reviewed and investigated and will result in a response that
|
60
|
-
is deemed necessary and appropriate to the circumstances. The project team is
|
61
|
-
obligated to maintain confidentiality with regard to the reporter of an incident.
|
62
|
-
Further details of specific enforcement policies may be posted separately.
|
63
|
-
|
64
|
-
Project maintainers who do not follow or enforce the Code of Conduct in good
|
65
|
-
faith may face temporary or permanent repercussions as determined by other
|
66
|
-
members of the project's leadership.
|
67
|
-
|
68
|
-
## Attribution
|
69
|
-
|
70
|
-
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
71
|
-
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
|
72
|
-
|
73
|
-
[homepage]: https://www.contributor-covenant.org
|
74
|
-
|
75
|
-
For answers to common questions about this code of conduct, see
|
76
|
-
https://www.contributor-covenant.org/faq
|
data/CONTRIBUTING.md
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
# How to contribute to Consul-Templaterb ?
|
2
|
-
|
3
|
-
## Architecxture Overview
|
4
|
-
|
5
|
-
Please read [INTERNALS.md](INTERNALS.md) to understand how it works.
|
6
|
-
|
7
|
-
## Samples
|
8
|
-
|
9
|
-
The [samples/](samples/) directory contains lots of useable templates that might help others using your new features.
|
10
|
-
Keep them less specific as possible (for instance use environment variables to allow others to use it directly
|
11
|
-
without relying on a specic path in KV).
|
12
|
-
|
13
|
-
Read first [TemplateAPI.md](TemplateAPI.md) to ensure you are using the best functions for the job, the API is kept
|
14
|
-
compact and powerful with many examples.
|
15
|
-
|
16
|
-
All the samples are unit-tested, so launch rspec before commiting, a template not converging will not be merged.
|
17
|
-
|
18
|
-
## Want new features/Found a bug?
|
19
|
-
|
20
|
-
[Report it](https://github.com/criteo/consul-templaterb/issues), but read carefully [TemplateAPI.md](TemplateAPI.md) and
|
21
|
-
[README.md](README.md)
|
22
|
-
|
23
|
-
## Want to add features/fix a bug?
|
24
|
-
|
25
|
-
Contributions in code are welcomed, create a fork and then a Pull Request, we will review it quickly.
|
data/Dockerfile
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
FROM ruby:2.5
|
2
|
-
|
3
|
-
WORKDIR /usr/src/app
|
4
|
-
COPY . .
|
5
|
-
|
6
|
-
RUN apt-get update -qq && apt-get install -y build-essential nginx-light
|
7
|
-
|
8
|
-
RUN bundle install
|
9
|
-
|
10
|
-
EXPOSE 80
|
11
|
-
ENV LANG C.UTF-8
|
12
|
-
ENV CONSUL_HTTP_ADDR http://consul-relay.service.consul.preprod.crto.in:8500
|
13
|
-
|
14
|
-
ENTRYPOINT ["/usr/local/bin/bundle", "exec", "consul-templaterb"]
|
15
|
-
CMD ["--template", "samples/consul-ui/consul-keys-ui.html.erb", "--template", "samples/consul-ui/decorators.js.erb", "--template", "samples/consul-ui/consul-nodes-ui.html.erb", "--template", "samples/consul-ui/consul-services-ui.html.erb", "--template", "samples/consul-ui/consul-timeline-ui.html.erb", "--template", "samples/consul-ui/consul_keys.json.erb", "--template", "samples/consul-ui/consul_nodes.json.erb", "--template", "samples/consul-ui/consul_services.json.erb", "--template", "samples/consul-ui/timeline.json.erb", "--template", "samples/consul-ui/consul-services-ui.html.erb:samples/consul-ui/index.html:touch samples/consul-ui/ready", "--sig-reload=NONE", "--exec=nginx -c /usr/src/app/docker-nginx-conf/nginx.conf"]
|