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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 42f54fd516888d84f2971306cd3d107c8821f621
4
- data.tar.gz: b511221a4b6081dfcbb9ed36700d997bd516e1d6
3
+ metadata.gz: 3605caf67c6c5d98f9e545266961dac5ab544d5c
4
+ data.tar.gz: 342bfaf9d404df61f4783726241d8e67148343ae
5
5
  SHA512:
6
- metadata.gz: 5ec51694881690e2d997fe76982be08998de4fc391fac422c685e738d2d846985f77b19359778d692ec300be34c77a0c648a97560b71d10f190205f1a405b5f0
7
- data.tar.gz: 670cecae2b7d03872066406acea374c43f961210495a817d89fa56fa66a323eaac49aae0ee87a242af84f839178a4b3594985d017b7d12457996c1133ee48fec
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 = "your.consul-host.com"
23
- config.acl_token = "f45cbd0b-5022-47ab-8640-4eaa7c1f40f1"
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
- run(prefix).split("\n") - env
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
- unless var.match(/^=/)
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
@@ -1,3 +1,3 @@
1
1
  module Envme
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: envme
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - 'Reppard Walker '