rda 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +5 -0
- data/Gemfile.lock +1 -1
- data/README.md +13 -33
- data/bin/rda +1 -1
- data/lib/rda/app.rb +35 -4
- data/lib/rda/railtie.rb +0 -4
- data/lib/rda/version.rb +1 -1
- metadata +4 -5
- data/lib/tasks/rda_tasks.rake +0 -38
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
|
3
3
|
### Description
|
4
4
|
|
5
|
-
Rda(Rails Development Assist) is combined with lots of useful
|
5
|
+
Rda(Rails Development Assist) is combined with lots of useful commands which can help you to setup your development enviroments and tools more quickly.
|
6
6
|
|
7
7
|
### Features
|
8
8
|
|
9
9
|
* Set up RVM for your rails application
|
10
10
|
* Deploy your rails application to Nginx (rails_env is set to development by default)
|
11
|
-
* Release your rails application
|
11
|
+
* Release your rails application
|
12
12
|
|
13
13
|
### Usage
|
14
14
|
|
@@ -24,6 +24,8 @@ Or simply add rda to the Gemfile
|
|
24
24
|
gem 'rda'
|
25
25
|
```
|
26
26
|
|
27
|
+
That's all.
|
28
|
+
|
27
29
|
#### Configuration
|
28
30
|
|
29
31
|
For configuring rda, you need to create an initializer for rda:
|
@@ -41,12 +43,9 @@ end
|
|
41
43
|
|
42
44
|
```bash
|
43
45
|
rda rvm setup
|
44
|
-
|
45
|
-
# Or
|
46
|
-
rake rda:rvm:setup
|
47
46
|
```
|
48
47
|
|
49
|
-
First of all, this
|
48
|
+
First of all, this command will check whether the RVM is installed. If RVM is installed, it will create a .rvmrc for the application with the content which looks like:
|
50
49
|
|
51
50
|
```bash
|
52
51
|
if [[ -s '/path/to/rvm/environments/ruby-1.9.3-p194@app_name' ]]; then
|
@@ -64,29 +63,23 @@ rvm rvmrc trust
|
|
64
63
|
|
65
64
|
Or you can set `rvm_trust_rvmrcs_flag=1` in ~/.rvmrc or /etc/rvmrc.
|
66
65
|
|
67
|
-
If RVM is not installed, this
|
66
|
+
If RVM is not installed, this command will do nothing but exit.
|
68
67
|
|
69
68
|
#### Discard RVM settings
|
70
69
|
|
71
70
|
```bash
|
72
71
|
rda rvm:discard
|
73
|
-
|
74
|
-
# Or
|
75
|
-
rake rda:rvm:discard
|
76
72
|
```
|
77
73
|
|
78
|
-
This
|
74
|
+
This command removes the .rvmrc from your rails application.
|
79
75
|
|
80
76
|
#### Setup Nginx
|
81
77
|
|
82
78
|
```bash
|
83
79
|
rda nginx setup --environment production --hostname www.example.com
|
84
|
-
|
85
|
-
# Or
|
86
|
-
rake rda:nginx:setup
|
87
80
|
```
|
88
81
|
|
89
|
-
First this
|
82
|
+
First this command will try to find the config files of Nginx, which you have installed, from the following paths:
|
90
83
|
|
91
84
|
* /etc/nginx
|
92
85
|
* /usr/local/nginx/conf
|
@@ -102,9 +95,6 @@ Please make sure that you have the write permission of the directory you choosed
|
|
102
95
|
|
103
96
|
```bash
|
104
97
|
rvmsudo rda nginx setup --environment production --hostname www.example.com
|
105
|
-
|
106
|
-
# Or
|
107
|
-
rvmsudo rake rda:nginx:setup
|
108
98
|
```
|
109
99
|
|
110
100
|
If there are more than one paths found, it will give you a choice to decide which one will be used. After choosing a proper path, it will try to create two directories sites-available and sites-enabled to save the configs of rails applications.
|
@@ -122,37 +112,27 @@ Finally, You need to start Nginx `/path/to/nginx/sbin/nginx` and then visit http
|
|
122
112
|
```bash
|
123
113
|
rda nginx discard --hostname www.example.com # Or
|
124
114
|
|
125
|
-
rake rda:nginx:discard # Or
|
126
|
-
|
127
115
|
sudo rda nginx discard --hostname www.example.com # Or
|
128
116
|
|
129
|
-
sudo rake rda:nginx:discard # Or
|
130
|
-
|
131
117
|
rvmsudo rda nginx discard --hostname www.example.com # Using RVM
|
132
|
-
|
133
|
-
rvmsudo rake rda:nginx:discard # Using RVM
|
134
118
|
```
|
135
119
|
|
136
|
-
This
|
120
|
+
This command will clean up all the things created or configured by rda:nginx:setup.
|
137
121
|
|
138
122
|
#### Restart application
|
139
123
|
|
140
124
|
```bash
|
141
125
|
rda app restart
|
142
|
-
|
143
|
-
# Or
|
144
|
-
rake rda:app:restart
|
145
126
|
```
|
146
127
|
|
147
|
-
This
|
128
|
+
This command touches tmp/restart.txt to restart your rails application, For detail, please visit [http://bit.ly/ztKA07](http://bit.ly/ztKA07)
|
148
129
|
|
149
|
-
#### Release your rails application
|
130
|
+
#### Release your rails application
|
131
|
+
|
132
|
+
You should create a `VERSION` under your application root path.
|
150
133
|
|
151
134
|
```bash
|
152
135
|
rda app release
|
153
|
-
|
154
|
-
# Or
|
155
|
-
rake rda:app:release
|
156
136
|
```
|
157
137
|
|
158
138
|
### License
|
data/bin/rda
CHANGED
@@ -22,7 +22,7 @@ class RdaCommand < Thor
|
|
22
22
|
Rda::Nginx.new.send(action.to_sym, options)
|
23
23
|
end
|
24
24
|
|
25
|
-
desc 'app ACTION', 'Manage the lifecycle of the application. Available actions: restart.'
|
25
|
+
desc 'app ACTION', 'Manage the lifecycle of the application. Available actions: restart, release.'
|
26
26
|
def app(action)
|
27
27
|
Rda::App.new.send(action.to_sym)
|
28
28
|
end
|
data/lib/rda/app.rb
CHANGED
@@ -1,11 +1,42 @@
|
|
1
1
|
module Rda
|
2
2
|
class App < Thor
|
3
|
-
desc
|
3
|
+
desc 'Restart', 'Restart the application'
|
4
4
|
def restart
|
5
|
-
|
6
|
-
|
5
|
+
FileUtils.touch dir_of('tmp') + '/restart.txt'
|
6
|
+
end
|
7
|
+
|
8
|
+
desc 'Release', 'Release the application'
|
9
|
+
def release
|
10
|
+
version_file = File.join(::Rails.root, 'VERSION')
|
11
|
+
version = File.exist?(version_file) ? File.read(version_file).strip : ""
|
12
|
+
|
13
|
+
app_name = Rda::Rails.app_name
|
14
|
+
|
15
|
+
pkg_dir = dir_of('pkg')
|
16
|
+
tmp_dir = dir_of("pkg/#{app_name}")
|
17
|
+
|
18
|
+
system("rm -fr #{tmp_dir}")
|
19
|
+
system("git clone #{::Rails.root} #{tmp_dir}")
|
20
|
+
|
21
|
+
puts "Create the src release..."
|
22
|
+
system("rm -fr #{tmp_dir}/.git")
|
23
|
+
system("rm -fr #{tmp_dir}/.gitignore")
|
24
|
+
system("cd #{pkg_dir};tar czf #{app_name}-#{version}.src.tar.gz #{app_name}")
|
25
|
+
|
26
|
+
puts "Create the bin release..."
|
27
|
+
system("bundle package")
|
28
|
+
system("mv #{::Rails.root}/vendor/cache #{tmp_dir}/vendor")
|
29
|
+
system("cd #{pkg_dir};tar czf #{app_name}-#{version}.bin.tar.gz #{app_name}")
|
30
|
+
system("rm -fr #{tmp_dir}")
|
31
|
+
puts "#{app_name} #{version} released!"
|
32
|
+
end
|
33
|
+
|
34
|
+
private
|
35
|
+
def dir_of(dir)
|
36
|
+
dir = File.join(::Rails.root.to_s, dir)
|
37
|
+
FileUtils.mkdir_p dir unless Dir.exists?(dir)
|
7
38
|
|
8
|
-
|
39
|
+
dir
|
9
40
|
end
|
10
41
|
end
|
11
42
|
end
|
data/lib/rda/railtie.rb
CHANGED
data/lib/rda/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rda
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-10-
|
12
|
+
date: 2012-10-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: pry
|
@@ -200,7 +200,6 @@ files:
|
|
200
200
|
- lib/rda/templates/rvmrc
|
201
201
|
- lib/rda/templates/setup_load_paths.rb
|
202
202
|
- lib/rda/version.rb
|
203
|
-
- lib/tasks/rda_tasks.rake
|
204
203
|
- rda.gemspec
|
205
204
|
- rvmrc.example
|
206
205
|
- spec/dummy/Rakefile
|
@@ -255,7 +254,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
255
254
|
version: '0'
|
256
255
|
segments:
|
257
256
|
- 0
|
258
|
-
hash:
|
257
|
+
hash: 3421142442146899695
|
259
258
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
260
259
|
none: false
|
261
260
|
requirements:
|
@@ -264,7 +263,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
264
263
|
version: '0'
|
265
264
|
segments:
|
266
265
|
- 0
|
267
|
-
hash:
|
266
|
+
hash: 3421142442146899695
|
268
267
|
requirements: []
|
269
268
|
rubyforge_project:
|
270
269
|
rubygems_version: 1.8.24
|
data/lib/tasks/rda_tasks.rake
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
namespace :rda do
|
2
|
-
namespace :rvm do
|
3
|
-
rvm = Rda::Rvm.new
|
4
|
-
|
5
|
-
desc "Set up RVM for your rails application"
|
6
|
-
task :setup do
|
7
|
-
rvm.setup
|
8
|
-
end
|
9
|
-
|
10
|
-
desc "Discard RVM settings of your rails application"
|
11
|
-
task :discard do
|
12
|
-
rvm.discard
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
namespace :nginx do
|
17
|
-
nginx = Rda::Nginx.new
|
18
|
-
|
19
|
-
desc "Set up Nginx for your rails application"
|
20
|
-
task :setup => :environment do
|
21
|
-
nginx.setup
|
22
|
-
end
|
23
|
-
|
24
|
-
desc "Discard Nginx settings of your rails application"
|
25
|
-
task :discard => :environment do
|
26
|
-
nginx.discard
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
namespace :app do
|
31
|
-
app = Rda::App.new
|
32
|
-
|
33
|
-
desc "Restart your rails application"
|
34
|
-
task :restart do
|
35
|
-
app.restart
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|