envme 0.1.3 → 0.1.4
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 +4 -4
- data/README.md +57 -2
- data/lib/envme/vars.rb +3 -4
- data/lib/envme/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3605caf67c6c5d98f9e545266961dac5ab544d5c
|
4
|
+
data.tar.gz: 342bfaf9d404df61f4783726241d8e67148343ae
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4362d77d0db0d311b75c9f242daffe6c3752fdfc4d52b8c9966d00c8a5ed0714629b1aadc713efec07229cac6391d24290d4434065735c0217a0fd71249640b8
|
7
|
+
data.tar.gz: c72570a32ae56d715e1de8777ca583b34f1954e5c1ecb6c22952f52a6f93ee32c4d63e2d612b1bbd47ecd59fcecf2fdaf344aea393a00964a1acb5c05b7fd898
|
data/README.md
CHANGED
@@ -19,8 +19,63 @@ gem 'envme', '>=0.1.2'
|
|
19
19
|
|
20
20
|
```ruby
|
21
21
|
Envme.configure do |config|
|
22
|
-
config.url = "
|
23
|
-
config.acl_token =
|
22
|
+
config.url = "localhost:8500"
|
23
|
+
config.acl_token = "xxxxxxxx-yyyy-zzzz-1111-222222222222"
|
24
24
|
end
|
25
25
|
```
|
26
|
+
|
27
|
+
### Get all at specified prefix
|
28
|
+
|
29
|
+
```ruby
|
30
|
+
Envme::Vars.get_all('test/prefix')
|
31
|
+
=> ["DB_ENDPOINT=db.endpoint.com", "DB_PASSWD=p@s$W0rd", "DB_USERNAME=dbuser", "REST_ENDPOINT=rest.endpoint.com"]
|
32
|
+
```
|
33
|
+
|
34
|
+
### Get limited by using a search string
|
35
|
+
|
36
|
+
```ruby
|
37
|
+
Envme::Vars.get_limited('test/prefix', 'rest')
|
38
|
+
=> ["REST_ENDPOINT=rest.endpoint.com"]
|
39
|
+
|
40
|
+
Envme::Vars.get_limited('test/prefix', 'db')
|
41
|
+
=> ["DB_ENDPOINT=db.endpoint.com", "DB_PASSWD=p@s$W0rd", "DB_USERNAME=dbuser"]
|
42
|
+
|
43
|
+
# Using multiple search strings
|
44
|
+
|
45
|
+
Envme::Vars.get_limited('test/prefix', 'db', 'rest')
|
46
|
+
=> ["DB_PASSWD=p@s$W0rd", "DB_USERNAME=dbuser", "REST_ENDPOINT=rest.endpoint.com", "DB_ENDPOINT=db.endpoint.com"]
|
47
|
+
```
|
48
|
+
|
49
|
+
### Sanitizing return values
|
50
|
+
|
51
|
+
```ruby
|
52
|
+
vars = Envme::Vars.get_limited('test', 'db')
|
53
|
+
=> ["PREFIX_DB_ENDPOINT=db.endpoint.com", "PREFIX_DB_PASSWD=p@s$W0rd", "PREFIX_DB_USERNAME=dbuser"]
|
54
|
+
|
55
|
+
Envme::Vars.sanitize(vars, 'prefix')
|
56
|
+
=> ["DB_ENDPOINT=db.endpoint.com", "DB_PASSWD=p@s$W0rd", "DB_USERNAME=dbuser"]
|
57
|
+
```
|
58
|
+
|
59
|
+
### Building exports and File builder scripts
|
60
|
+
|
61
|
+
```ruby
|
62
|
+
vars = Envme::Vars.get_limited('test/prefix', 'db')
|
63
|
+
=> ["DB_ENDPOINT=db.endpoint.com", "DB_PASSWD=p@s$W0rd", "DB_USERNAME=dbuser"]
|
64
|
+
|
65
|
+
puts Envme.build_exports(vars)
|
66
|
+
|
67
|
+
export DB_ENDPOINT=db.endpoint.com
|
68
|
+
export DB_PASSWD=p@s$W0rd
|
69
|
+
export DB_USERNAME=dbuser
|
70
|
+
|
71
|
+
|
72
|
+
# Build a script to populate a systemd EnvironmentFile
|
73
|
+
|
74
|
+
puts Envme.file_builder(vars, '/etc/sysconfig/my_service.service')
|
75
|
+
|
76
|
+
echo DB_ENDPOINT=db.endpoint.com >> /etc/sysconfig/my_service.service
|
77
|
+
echo DB_PASSWD=p@s$W0rd >> /etc/sysconfig/my_service.service
|
78
|
+
echo DB_USERNAME=dbuser >> /etc/sysconfig/my_service.service
|
79
|
+
```
|
80
|
+
|
26
81
|
Inspired by [Diplomat](https://github.com/WeAreFarmGeek/diplomat)
|
data/lib/envme/vars.rb
CHANGED
@@ -3,8 +3,9 @@ module Envme
|
|
3
3
|
|
4
4
|
def self.get_all(prefix)
|
5
5
|
env = `env`.split("\n")
|
6
|
+
env_vars = run(prefix).split("\n") - env
|
6
7
|
|
7
|
-
|
8
|
+
env_vars.select{ |var| !var.split("=")[0].nil? }
|
8
9
|
end
|
9
10
|
|
10
11
|
def self.get_limited(prefix, *search_strings)
|
@@ -29,9 +30,7 @@ module Envme
|
|
29
30
|
def self.limit_to_search(vars, search_strings)
|
30
31
|
vars.select do |var|
|
31
32
|
search_strings.any? do |match|
|
32
|
-
|
33
|
-
var.split("=")[0].include?(match.upcase)
|
34
|
-
end
|
33
|
+
var.split("=")[0].include?(match.upcase)
|
35
34
|
end
|
36
35
|
end
|
37
36
|
end
|
data/lib/envme/version.rb
CHANGED