capistrano-dotenv 0.0.4 → 0.0.5
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 +5 -5
- data/README.md +43 -6
- data/lib/capistrano/dotenv/tasks.cap +11 -4
- data/lib/capistrano/dotenv/version.rb +1 -1
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: dced089659d848dc1a8e6d81bd63d2c8b3f2439086cd474555b4cd18bb40eac2
|
4
|
+
data.tar.gz: dfa4aad24ef71a2d267a28e930a906e05eebc991f0fc6f4f709fe18d48c8bc27
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 99a062d875d6de56a95d469d6278b08e21c1177b304c9ebd5ffd806aed4bf8388d5e0d7720c2aed5cb9ff9ea32580feec9893213e61ebcc9353f105ec99a3bb2
|
7
|
+
data.tar.gz: cdef63a1d40118e2c737e5c1a94dee3b5a8a594e73fe7fe545e51726a514b8cbb9c37acd549414808c70d88505f6e0ad15409cc674ef60c12b6587368d25df88
|
data/README.md
CHANGED
@@ -26,18 +26,35 @@ Or install it yourself as:
|
|
26
26
|
|
27
27
|
## Usage
|
28
28
|
|
29
|
-
You should ensure there is a `rails` binstub in the `current/bin` directory on the server otherwise
|
30
|
-
this gem won't work (because rails itself won't work).
|
31
|
-
If you experience any problems please verify that manually running `rails console` on the server does work.
|
32
|
-
If it doesn't you are deploying your rails application wrong (check [#18](https://github.com/ydkn/capistrano-rails-console/issues/18) or [#26](https://github.com/ydkn/capistrano-rails-console/issues/26) for details)!
|
33
|
-
|
34
29
|
Require in `Capfile`:
|
35
30
|
|
36
31
|
```ruby
|
37
32
|
require 'capistrano/dotenv'
|
38
33
|
```
|
39
34
|
|
40
|
-
|
35
|
+
To check and ensure that deploy contains invoke both `dotenv:read` and `dotenv:check` tasks before to invoke `dotenv:setup`
|
36
|
+
|
37
|
+
```ruby
|
38
|
+
invoke 'dotenv:read'
|
39
|
+
invoke 'dotenv:check'
|
40
|
+
invoke 'dotenv:setup'
|
41
|
+
```
|
42
|
+
|
43
|
+
If you do not want to check, invoke only `dotenv:read` and `dotenv:setup` to just read and upload the env vars
|
44
|
+
|
45
|
+
```ruby
|
46
|
+
invoke 'dotenv:read'
|
47
|
+
invoke 'dotenv:setup'
|
48
|
+
```
|
49
|
+
|
50
|
+
If you want to auto prefix `dotenv` to yout `bundle`/`ruby`/`gem`/`rake` commands, add `dotenv:hook` to your invokes.
|
51
|
+
|
52
|
+
```ruby
|
53
|
+
invoke 'dotenv:read'
|
54
|
+
invoke 'dotenv:check'
|
55
|
+
invoke 'dotenv:setup'
|
56
|
+
invoke 'dotenv:hook'
|
57
|
+
```
|
41
58
|
|
42
59
|
## Options
|
43
60
|
|
@@ -55,6 +72,12 @@ Or use the same file for every environment(default)
|
|
55
72
|
set :env_file, '.env'
|
56
73
|
```
|
57
74
|
|
75
|
+
If you use [dotgpg](https://github.com/ConradIrwin/dotgpg) to secure your env vars on git, just set the env_file passing the gpg file, and it will ask your gpg password and read it from gpg file correctly. For example:
|
76
|
+
|
77
|
+
```ruby
|
78
|
+
set :env_file, ".env_#{stage}.gpg"
|
79
|
+
```
|
80
|
+
|
58
81
|
### Optional env vars
|
59
82
|
|
60
83
|
There are env vars that you want to set only in some enviroments or you will use a default value if it is not defined, so it is not required to be set a value for them. To be able to run check without fail the deployment if those env vars do not have a value set, just set it as optional
|
@@ -79,6 +102,20 @@ By default, the setup task will upload generated .env file to all roles(:all), b
|
|
79
102
|
set :dotenv_roles, :app
|
80
103
|
```
|
81
104
|
|
105
|
+
### Hook
|
106
|
+
|
107
|
+
By default, `dotenv:hook` will work on `bundle`, `ruby`, `gem` and `rake`. You can change this setting `dotenv_hook_commands`.
|
108
|
+
|
109
|
+
```ruby
|
110
|
+
set :dotenv_hook_commands, %w(bundle ruby gem rake my_custom_command)
|
111
|
+
```
|
112
|
+
|
113
|
+
By default, `dotenv:hook` will add the `dotenv` prefix before the commands. You can change this setting `dotenv_hook_prefix`.
|
114
|
+
|
115
|
+
```ruby
|
116
|
+
set :dotenv_hook_prefix, 'dotenv -f ".my_custom_env_file"'
|
117
|
+
```
|
118
|
+
|
82
119
|
|
83
120
|
## Contributing
|
84
121
|
|
@@ -34,15 +34,22 @@ namespace :dotenv do
|
|
34
34
|
task :setup do
|
35
35
|
dotenv_contents = fetch(:dotenv_contents)
|
36
36
|
|
37
|
-
dotenv = StringIO.new
|
38
|
-
dotenv << dotenv_contents
|
39
|
-
dotenv.rewind
|
40
|
-
|
41
37
|
on roles(fetch(:dotenv_roles, :all)) do
|
38
|
+
dotenv = StringIO.new(dotenv_contents)
|
39
|
+
|
42
40
|
upload! dotenv, File.join(shared_path, '.env')
|
43
41
|
end
|
44
42
|
end
|
45
43
|
|
44
|
+
task :hook do
|
45
|
+
commands = fetch(:dotenv_hook_commands, %w{gem rake ruby bundle})
|
46
|
+
hook_prefix = fetch(:dotenv_hook_prefix, 'dotenv')
|
47
|
+
|
48
|
+
commands.each do |command|
|
49
|
+
SSHKit.config.command_map.prefix[command.to_sym].append(hook_prefix)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
46
53
|
task :read do
|
47
54
|
env_file = fetch(:env_file, '.env')
|
48
55
|
dotenv_contents = ''
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capistrano-dotenv
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- João Paulo Lethier
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-04-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: capistrano
|
@@ -94,8 +94,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
94
94
|
- !ruby/object:Gem::Version
|
95
95
|
version: '0'
|
96
96
|
requirements: []
|
97
|
-
|
98
|
-
rubygems_version: 2.6.8
|
97
|
+
rubygems_version: 3.0.1
|
99
98
|
signing_key:
|
100
99
|
specification_version: 4
|
101
100
|
summary: Dotenv tasks for capistrano deployment
|