envied 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +14 -5
- data/lib/envied/cli.rb +14 -1
- data/lib/envied/version.rb +1 -1
- data/spec/envied_spec.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1f7249d9e47e9fb7837322ca6d5c4c13da3a0b71
|
4
|
+
data.tar.gz: 5d7946abccb41ae923c3730fddef68c4e7dde5be
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e3174fce263d5f6b1580e5fba893c9c690ed07091b1ab859b389ae6e9f2f8201b7004b8d283ce690376a7fefca3833576811b9c72cdaab3c1192473b59f9f4a5
|
7
|
+
data.tar.gz: f5be4b540310a362c9c19558049745b851eed7b8757bb0e3af016bd1d4cc11075b9d6dd55919e0277b723a25273f01c125f027605ac71b8b23251158bf32bccd
|
data/README.md
CHANGED
@@ -47,7 +47,7 @@ ENVied.FORCE_SSL # => false
|
|
47
47
|
The following types are supported:
|
48
48
|
|
49
49
|
* `:String` (implied)
|
50
|
-
* `:Boolean` (e.g. '0'/'1', 'f'/'t', 'false'/'true', 'off'/'on', '
|
50
|
+
* `:Boolean` (e.g. '0'/'1', 'f'/'t', 'false'/'true', 'off'/'on', 'no'/'yes' for resp. false and true)
|
51
51
|
* `:Integer`
|
52
52
|
* `:Symbol`
|
53
53
|
* `:Date` (e.g. '2014-3-26')
|
@@ -103,7 +103,7 @@ As a rule of thumb you should only use defaults:
|
|
103
103
|
* for local development
|
104
104
|
* for ENV-variables that your application introduces (i.e. for `ENV['STAFF_EMAILS']` not for `ENV['REDIS_URL']`)
|
105
105
|
|
106
|
-
### A more extensive example
|
106
|
+
### A more extensive example
|
107
107
|
|
108
108
|
```ruby
|
109
109
|
# Envfile
|
@@ -112,7 +112,7 @@ As a rule of thumb you should only use defaults:
|
|
112
112
|
# New developers that don't have RACK_ENV set, will in this way not be presented with a huge
|
113
113
|
# list of missing variables, as defaults are still enabled.
|
114
114
|
not_production_nor_ci = ->{ !(ENV['RACK_ENV'] == 'production' || ENV['CI']) }
|
115
|
-
enable_defaults(¬_production_nor_ci)
|
115
|
+
enable_defaults!(¬_production_nor_ci)
|
116
116
|
|
117
117
|
# Your code will likely not use ENVied.RACK_ENV (better use Rails.env),
|
118
118
|
# we want it to be present though; heck, we're using it in this file!
|
@@ -154,6 +154,15 @@ ENVied.require(:default, :test, :ci)
|
|
154
154
|
ENVied.require(:default, ENV['RACK_ENV'], (ENV['CI'] ? :ci : :not_ci))
|
155
155
|
```
|
156
156
|
|
157
|
+
## command-line interface
|
158
|
+
|
159
|
+
```bash
|
160
|
+
$ envied help
|
161
|
+
Commands:
|
162
|
+
envied check # Checks whether all ENV-variables are present and valid
|
163
|
+
envied help [COMMAND] # Describe available commands or one specific command
|
164
|
+
envied init # Generates a default Envfile in the current working directory
|
165
|
+
```
|
157
166
|
|
158
167
|
## Installation
|
159
168
|
|
@@ -161,11 +170,11 @@ Add this line to your application's Gemfile:
|
|
161
170
|
|
162
171
|
gem 'envied'
|
163
172
|
|
164
|
-
|
173
|
+
...then bundle:
|
165
174
|
|
166
175
|
$ bundle
|
167
176
|
|
168
|
-
|
177
|
+
...and generate the `Envfile`:
|
169
178
|
|
170
179
|
$ bundle exec envied init
|
171
180
|
|
data/lib/envied/cli.rb
CHANGED
@@ -5,10 +5,23 @@ class ENVied
|
|
5
5
|
include Thor::Actions
|
6
6
|
source_root File.expand_path('../templates', __FILE__)
|
7
7
|
|
8
|
-
desc "init", "
|
8
|
+
desc "init", "Generates a default Envfile in the current working directory"
|
9
9
|
def init
|
10
10
|
puts "Writing new Envfile to #{File.expand_path('Envfile')}"
|
11
11
|
template("Envfile.tt")
|
12
12
|
end
|
13
|
+
|
14
|
+
desc "check", "Checks whether all ENV-variables are present and valid"
|
15
|
+
long_desc <<-LONG
|
16
|
+
Checks whether all ENV-variables are present and valid.
|
17
|
+
|
18
|
+
On success the process will exit with status 0.
|
19
|
+
Else the missing/invalid variables will be shown, and the process will exit with status 1.
|
20
|
+
LONG
|
21
|
+
option :groups, type: :array, default: %w(default), banner: 'default production'
|
22
|
+
def check
|
23
|
+
ENVied.require(*options[:groups])
|
24
|
+
puts "All ENV-variables for group(s) #{options[:groups]} are ok!"
|
25
|
+
end
|
13
26
|
end
|
14
27
|
end
|
data/lib/envied/version.rb
CHANGED
data/spec/envied_spec.rb
CHANGED
@@ -27,12 +27,12 @@ describe ENVied do
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def configure(options = {}, &block)
|
30
|
-
described_class.
|
30
|
+
described_class.configuration(options, &block)
|
31
31
|
self
|
32
32
|
end
|
33
33
|
|
34
34
|
def configured_with(hash = {})
|
35
|
-
described_class.
|
35
|
+
described_class.configuration do
|
36
36
|
hash.each do |name, type|
|
37
37
|
variable(name, *type)
|
38
38
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: envied
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gert Goet
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-08-
|
11
|
+
date: 2014-08-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: virtus
|