mina 0.3.1 → 0.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.travis.yml +2 -2
- data/HISTORY.md +20 -1
- data/Readme.md +47 -1
- data/data/deploy.rb +1 -1
- data/lib/mina/default.rb +13 -0
- data/lib/mina/npm.rb +89 -0
- data/lib/mina/rails.rb +1 -1
- data/lib/mina/ssh_helpers.rb +2 -1
- data/lib/mina/version.rb +1 -1
- data/mina.gemspec +1 -0
- data/support/guide.md +1 -1
- metadata +71 -82
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 594c93a14da343bc11ca089567d91917f35ce025
|
4
|
+
data.tar.gz: 100d1d806af4643e1210b27b9854bc736713a9b7
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 849c4f473361748007da0571ffd2979f8736b3731cb2b55e92ccc2aa8e1755fe3cb75a530368c9c6ec4b55f57d5bb5cfa1971cf6569f580a7e1801080134bf15
|
7
|
+
data.tar.gz: 9f48fcbd66be6820e2c34e763ffcfd56726de7447f1fd4a2e23917c344c2525f528fad4f0a28c769cb7e57d46b9e0a642cb8c024783c322c444f09039cf8e1ca
|
data/.travis.yml
CHANGED
data/HISTORY.md
CHANGED
@@ -1,4 +1,23 @@
|
|
1
|
-
|
1
|
+
v0.3.2 - January 24, 2015
|
2
|
+
-----------------------------
|
3
|
+
|
4
|
+
* 3rd party modules (#258) [Denis]
|
5
|
+
* Adding support for environment variables, env_var (#161) [Ted Price]
|
6
|
+
* Make rails console task dependent on the environment (#220) [lucapette]
|
7
|
+
* mention .ruby-version for rbenv comment (#249) [Tomi]
|
8
|
+
* update emails for travis
|
9
|
+
* npm support with a simple npm:install task (#227) [Paul B.]
|
10
|
+
* `mina ssh` command to connect to server (#249) [Anton Dieterle]
|
11
|
+
* link in the support guide (#254) [Aaditya S]
|
12
|
+
|
13
|
+
[Denis]: (https://github.com/stereodenis)
|
14
|
+
[Aaditya S]: (https://github.com/jartek)
|
15
|
+
[Tomi]: (https://github.com/equivalent)
|
16
|
+
[lucapette]: (https://github.com/lucapette)
|
17
|
+
[Ted Price]: (https://github.com/pricees)
|
18
|
+
[Anton Dieterle]: (https://github.com/adie)
|
19
|
+
[Paul B.]: (https://github.com/paulRbr)
|
20
|
+
|
2
21
|
|
3
22
|
v0.3.1 - October 17, 2014
|
4
23
|
-------------------------
|
data/Readme.md
CHANGED
@@ -648,6 +648,9 @@ The local path to the SSH private key file.
|
|
648
648
|
### ssh_options
|
649
649
|
Switches to be passed to the `ssh` command.
|
650
650
|
|
651
|
+
### env_vars
|
652
|
+
Environment variables passed to the `ssh` command (e.g. "foo=bar baz=1").
|
653
|
+
|
651
654
|
## Tasks
|
652
655
|
Any and all of these settings can be overriden in your `deploy.rb`.
|
653
656
|
|
@@ -672,6 +675,13 @@ Display all tasks in a nice table.
|
|
672
675
|
$ mina tasks
|
673
676
|
~~~
|
674
677
|
|
678
|
+
### ssh
|
679
|
+
Connects to the server via ssh and cd to deploy_to folder
|
680
|
+
|
681
|
+
~~~ ruby
|
682
|
+
$ mina ssh
|
683
|
+
~~~
|
684
|
+
|
675
685
|
# Modules: Deployment
|
676
686
|
This module is automatically loaded for all Mina projects.
|
677
687
|
|
@@ -976,6 +986,43 @@ end
|
|
976
986
|
Adds settings and tasks for managing projects with [whenever].
|
977
987
|
[whenever]: http://rubygems.org/gems/whenever
|
978
988
|
|
989
|
+
|
990
|
+
# Modules: NPM
|
991
|
+
Adds settings and tasks for managing NodeJS projects.
|
992
|
+
|
993
|
+
~~~ ruby
|
994
|
+
require 'mina/npm'
|
995
|
+
~~~
|
996
|
+
|
997
|
+
## Settings
|
998
|
+
Any and all of these settings can be overriden in your `deploy.rb`.
|
999
|
+
|
1000
|
+
### npm_options
|
1001
|
+
Parameters to pass to the npm binary. Default to `--production`.
|
1002
|
+
|
1003
|
+
----
|
1004
|
+
|
1005
|
+
## Deploy tasks
|
1006
|
+
These tasks are meant to be invoked inside deploy scripts, not invoked on
|
1007
|
+
their own.
|
1008
|
+
|
1009
|
+
### npm:install
|
1010
|
+
|
1011
|
+
3rd party modules
|
1012
|
+
------
|
1013
|
+
|
1014
|
+
* [mina-rollbar](https://github.com/code-lever/mina-rollbar)
|
1015
|
+
* [mina-stack](https://github.com/div/mina-stack)
|
1016
|
+
* [mina-rsync](https://github.com/moll/mina-rsync)
|
1017
|
+
* [mina-sidekiq](https://github.com/Mic92/mina-sidekiq)
|
1018
|
+
* [mina-nginx](https://github.com/hbin/mina-nginx)
|
1019
|
+
* [mina-newrelic](https://github.com/navinpeiris/mina-newrelic)
|
1020
|
+
* [mina-rbenv-addons](https://github.com/stas/mina-rbenv-addons)
|
1021
|
+
* [mina-multistage](https://github.com/endoze/mina-multistage)
|
1022
|
+
* [mina-s3](https://github.com/stas/mina-s3)
|
1023
|
+
* [mina-scp](https://github.com/adie/mina-scp)
|
1024
|
+
* [mina-hooks](https://github.com/elskwid/mina-hooks)
|
1025
|
+
|
979
1026
|
Acknowledgements
|
980
1027
|
----------------
|
981
1028
|
|
@@ -1006,4 +1053,3 @@ Michael:
|
|
1006
1053
|
[nd]: http://nadarei.co
|
1007
1054
|
[issues]: https://github.com/mina-deploy/mina/issues
|
1008
1055
|
[trello]: https://trello.com/board/mina/4fc8b3023d9c9a4d72e573e6
|
1009
|
-
|
data/data/deploy.rb
CHANGED
@@ -31,7 +31,7 @@ set :shared_paths, ['config/database.yml', 'log']
|
|
31
31
|
# `mina deploy` or `mina rake`.
|
32
32
|
task :environment do
|
33
33
|
# If you're using rbenv, use this to load the rbenv environment.
|
34
|
-
# Be sure to commit your .rbenv-version to your repository.
|
34
|
+
# Be sure to commit your .ruby-version or .rbenv-version to your repository.
|
35
35
|
# invoke :'rbenv:load'
|
36
36
|
|
37
37
|
# For those using RVM, use this to load an RVM version@gemset.
|
data/lib/mina/default.rb
CHANGED
@@ -23,6 +23,9 @@
|
|
23
23
|
# ### ssh_options
|
24
24
|
# Switches to be passed to the `ssh` command.
|
25
25
|
|
26
|
+
# ### env_vars
|
27
|
+
# Environment variables to be passed to `ssh` command.
|
28
|
+
|
26
29
|
# ## Tasks
|
27
30
|
# Any and all of these settings can be overriden in your `deploy.rb`.
|
28
31
|
|
@@ -143,3 +146,13 @@ desc "Show all tasks."
|
|
143
146
|
task :tasks do
|
144
147
|
show_task_help :full => true
|
145
148
|
end
|
149
|
+
|
150
|
+
# ### ssh
|
151
|
+
# Connects to the server via ssh and cd to deploy_to folder
|
152
|
+
#
|
153
|
+
# $ mina ssh
|
154
|
+
|
155
|
+
desc "Open an ssh session to the server and cd to deploy_to folder"
|
156
|
+
task :ssh do
|
157
|
+
exec ssh_command + " 'cd #{deploy_to} && exec \$SHELL'"
|
158
|
+
end
|
data/lib/mina/npm.rb
ADDED
@@ -0,0 +1,89 @@
|
|
1
|
+
# # Modules: Npm
|
2
|
+
# Adds settings and tasks for managing Node packages.
|
3
|
+
#
|
4
|
+
# require 'mina/npm'
|
5
|
+
|
6
|
+
# ## Settings
|
7
|
+
# Any and all of these settings can be overriden in your `deploy.rb`.
|
8
|
+
|
9
|
+
# ### npm_bin
|
10
|
+
# Sets the npm binary.
|
11
|
+
|
12
|
+
set_default :npm_bin, 'npm'
|
13
|
+
|
14
|
+
# ### bower_bin
|
15
|
+
# Sets the bower binary.
|
16
|
+
|
17
|
+
set_default :bower_bin, 'bower'
|
18
|
+
|
19
|
+
# ### grunt_bin
|
20
|
+
# Sets the grunt binary.
|
21
|
+
|
22
|
+
set_default :grunt_bin, 'grunt'
|
23
|
+
|
24
|
+
# ### npm_options
|
25
|
+
# Sets the options for installing modules via npm.
|
26
|
+
|
27
|
+
set_default :npm_options, '--production'
|
28
|
+
|
29
|
+
# ### bower_options
|
30
|
+
# Sets the options for installing modules via bower.
|
31
|
+
|
32
|
+
set_default :bower_options, '--allow-root'
|
33
|
+
|
34
|
+
# ### grunt_options
|
35
|
+
# Sets the options for grunt.
|
36
|
+
|
37
|
+
set_default :grunt_options, ''
|
38
|
+
|
39
|
+
# ### grunt_task
|
40
|
+
# Sets the task parameters for grunt.
|
41
|
+
|
42
|
+
set_default :grunt_task, 'build'
|
43
|
+
|
44
|
+
|
45
|
+
# ## Deploy tasks
|
46
|
+
# These tasks are meant to be invoked inside deploy scripts, not invoked on
|
47
|
+
# their own.
|
48
|
+
|
49
|
+
namespace :npm do
|
50
|
+
# ### npm:install
|
51
|
+
# Installs node modules. Takes into account if executed `in_directory` and namespaces the installed modules in the shared folder.
|
52
|
+
desc "Install node modules using Npm."
|
53
|
+
task :install => :environment do
|
54
|
+
queue %{
|
55
|
+
echo "-----> Installing node modules using Npm"
|
56
|
+
sub_directory=$(pwd | sed -r "s/.*?$(basename $build_path)//g")
|
57
|
+
#{echo_cmd %[mkdir -p "#{deploy_to}/#{shared_path}/$sub_directory/node_modules"]}
|
58
|
+
#{echo_cmd %[ln -s "#{deploy_to}/#{shared_path}/$sub_directory/node_modules" "node_modules"]}
|
59
|
+
#{echo_cmd %[#{npm_bin} install #{npm_options}]}
|
60
|
+
}
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
namespace :bower do
|
65
|
+
# ### bower:install
|
66
|
+
# Installs bower modules. Takes into account if executed `in_directory` and namespaces the installed modules in the shared folder.
|
67
|
+
desc "Install bower modules."
|
68
|
+
task :install => :environment do
|
69
|
+
queue %{
|
70
|
+
echo "-----> Installing bower modules"
|
71
|
+
sub_directory=$(pwd | sed -r "s/.*?$(basename $build_path)//g")
|
72
|
+
#{echo_cmd %[mkdir -p "#{deploy_to}/#{shared_path}/$sub_directory/bower_components"]}
|
73
|
+
#{echo_cmd %[ln -s "#{deploy_to}/#{shared_path}/$sub_directory/bower_components" "bower_components"]}
|
74
|
+
#{echo_cmd %[[ -f bower.json ] && (#{bower_bin} install #{bower_options}) || ! [ -f bower.json ]]}
|
75
|
+
}
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
namespace :grunt do
|
80
|
+
# ### bower:install
|
81
|
+
# Installs bower modules. Takes into account if executed `in_directory` and namespaces the installed modules in the shared folder.
|
82
|
+
desc "Launch a task with grunt. Set the grunt_task (defaults to \"build\") variable before calling this."
|
83
|
+
task :task => :environment do
|
84
|
+
queue %{
|
85
|
+
echo "-----> Launch a build with Grunt"
|
86
|
+
#{echo_cmd %[[ -f Gruntfile.js ] && (#{grunt_bin} #{grunt_task} #{grunt_options}) || ! [ -f Gruntfile.js ]]}
|
87
|
+
}
|
88
|
+
end
|
89
|
+
end
|
data/lib/mina/rails.rb
CHANGED
@@ -121,7 +121,7 @@ make_run_task[:rake, 'db:migrate']
|
|
121
121
|
# $ mina console
|
122
122
|
|
123
123
|
desc "Starts an interactive console."
|
124
|
-
task :console do
|
124
|
+
task :console => :environment do
|
125
125
|
queue echo_cmd %[cd "#{deploy_to!}/#{current_path!}" && #{rails} console && exit]
|
126
126
|
end
|
127
127
|
|
data/lib/mina/ssh_helpers.rb
CHANGED
@@ -22,6 +22,7 @@ module Mina
|
|
22
22
|
def ssh(cmd, options={})
|
23
23
|
require 'shellwords'
|
24
24
|
|
25
|
+
cmd.unshift("export #{env_vars}") if env_vars?
|
25
26
|
cmd = cmd.join("\n") if cmd.is_a?(Array)
|
26
27
|
script = Shellwords.escape(cmd)
|
27
28
|
|
@@ -52,7 +53,7 @@ module Mina
|
|
52
53
|
args << " -i #{identity_file}" if identity_file?
|
53
54
|
args << " -p #{port}" if port?
|
54
55
|
args << " -A" if forward_agent?
|
55
|
-
args << " #{ssh_options}"
|
56
|
+
args << " #{ssh_options}" if ssh_options?
|
56
57
|
args << " -t"
|
57
58
|
"ssh #{args}"
|
58
59
|
end
|
data/lib/mina/version.rb
CHANGED
data/mina.gemspec
CHANGED
data/support/guide.md
CHANGED
@@ -283,7 +283,7 @@ Basic usage:
|
|
283
283
|
|
284
284
|
### Tasks
|
285
285
|
|
286
|
-
There are many tasks available. See the [tasks reference](tasks/
|
286
|
+
There are many tasks available. See the [tasks reference](http://mina-deploy.github.io/mina/tasks/), or
|
287
287
|
type `mina tasks`.
|
288
288
|
|
289
289
|
### Variables
|
metadata
CHANGED
@@ -1,84 +1,84 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: mina
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 3
|
9
|
-
- 1
|
10
|
-
version: 0.3.1
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.2
|
11
5
|
platform: ruby
|
12
|
-
authors:
|
6
|
+
authors:
|
13
7
|
- Rico Sta. Cruz
|
14
8
|
- Michael Galero
|
15
9
|
autorequire:
|
16
10
|
bindir: bin
|
17
11
|
cert_chain: []
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
dependencies:
|
22
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2015-01-24 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
23
15
|
name: rake
|
24
|
-
|
25
|
-
|
26
|
-
none: false
|
27
|
-
requirements:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
28
18
|
- - ">="
|
29
|
-
- !ruby/object:Gem::Version
|
30
|
-
|
31
|
-
segments:
|
32
|
-
- 0
|
33
|
-
version: "0"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '0'
|
34
21
|
type: :runtime
|
35
|
-
version_requirements: *id001
|
36
|
-
- !ruby/object:Gem::Dependency
|
37
|
-
name: open4
|
38
22
|
prerelease: false
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - ">="
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '0'
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: open4
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - "~>"
|
33
|
+
- !ruby/object:Gem::Version
|
49
34
|
version: 1.3.4
|
50
35
|
type: :runtime
|
51
|
-
|
52
|
-
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - "~>"
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: 1.3.4
|
42
|
+
- !ruby/object:Gem::Dependency
|
53
43
|
name: rspec
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - "~>"
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 3.0.0
|
49
|
+
type: :development
|
54
50
|
prerelease: false
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
- !ruby/object:Gem::Version
|
60
|
-
hash: 7
|
61
|
-
segments:
|
62
|
-
- 3
|
63
|
-
- 0
|
64
|
-
- 0
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - "~>"
|
54
|
+
- !ruby/object:Gem::Version
|
65
55
|
version: 3.0.0
|
56
|
+
- !ruby/object:Gem::Dependency
|
57
|
+
name: pry-debugger
|
58
|
+
requirement: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - ">="
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0'
|
66
63
|
type: :development
|
67
|
-
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - ">="
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
68
70
|
description: Really fast deployer and server automation tool.
|
69
|
-
email:
|
71
|
+
email:
|
70
72
|
- rico@nadarei.co
|
71
73
|
- mikong@nadarei.co
|
72
|
-
executables:
|
74
|
+
executables:
|
73
75
|
- mina
|
74
76
|
extensions: []
|
75
|
-
|
76
77
|
extra_rdoc_files: []
|
77
|
-
|
78
|
-
|
79
|
-
- .
|
80
|
-
- .
|
81
|
-
- .travis.yml
|
78
|
+
files:
|
79
|
+
- ".gitignore"
|
80
|
+
- ".rspec"
|
81
|
+
- ".travis.yml"
|
82
82
|
- CONTRIBUTING.md
|
83
83
|
- Gemfile
|
84
84
|
- HISTORY.md
|
@@ -100,6 +100,7 @@ files:
|
|
100
100
|
- lib/mina/foreman.rb
|
101
101
|
- lib/mina/git.rb
|
102
102
|
- lib/mina/helpers.rb
|
103
|
+
- lib/mina/npm.rb
|
103
104
|
- lib/mina/output_helpers.rb
|
104
105
|
- lib/mina/rails.rb
|
105
106
|
- lib/mina/rake.rb
|
@@ -138,39 +139,27 @@ files:
|
|
138
139
|
- support/index.html
|
139
140
|
- support/to_md.rb
|
140
141
|
- test_env/config/deploy.rb
|
141
|
-
has_rdoc: true
|
142
142
|
homepage: http://github.com/nadarei/mina
|
143
143
|
licenses: []
|
144
|
-
|
144
|
+
metadata: {}
|
145
145
|
post_install_message:
|
146
146
|
rdoc_options: []
|
147
|
-
|
148
|
-
require_paths:
|
147
|
+
require_paths:
|
149
148
|
- lib
|
150
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
151
|
-
|
152
|
-
requirements:
|
149
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
153
151
|
- - ">="
|
154
|
-
- !ruby/object:Gem::Version
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
version: "0"
|
159
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
160
|
-
none: false
|
161
|
-
requirements:
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: '0'
|
154
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
155
|
+
requirements:
|
162
156
|
- - ">="
|
163
|
-
- !ruby/object:Gem::Version
|
164
|
-
|
165
|
-
segments:
|
166
|
-
- 0
|
167
|
-
version: "0"
|
157
|
+
- !ruby/object:Gem::Version
|
158
|
+
version: '0'
|
168
159
|
requirements: []
|
169
|
-
|
170
160
|
rubyforge_project:
|
171
|
-
rubygems_version:
|
161
|
+
rubygems_version: 2.2.2
|
172
162
|
signing_key:
|
173
|
-
specification_version:
|
163
|
+
specification_version: 4
|
174
164
|
summary: Really fast deployer and server automation tool.
|
175
165
|
test_files: []
|
176
|
-
|