orangeweb-tasks 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +47 -0
- data/lib/orangeweb-tasks/railtie.rb +15 -0
- data/lib/orangeweb-tasks.rb +3 -0
- data/lib/tasks/bower.rake +25 -0
- data/lib/tasks/git.rake +49 -0
- data/lib/tasks/orangeweb.rake +67 -0
- data/lib/tasks/semver.rake +257 -0
- data/lib/tasks/webserver.rake +49 -0
- metadata +52 -0
data/README.md
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
orangeweb-tasks-gem
|
2
|
+
===================
|
3
|
+
|
4
|
+
Rake Tasks que utilizamos para auxiliar o desenvolvimento de Aplicações em Ruby on Rails.
|
5
|
+
|
6
|
+
#### Twitter Bower
|
7
|
+
|
8
|
+
```shell
|
9
|
+
rake bower:install # install bower packages
|
10
|
+
rake bower:update # update bower packages
|
11
|
+
```
|
12
|
+
|
13
|
+
#### Git
|
14
|
+
|
15
|
+
|
16
|
+
```
|
17
|
+
rake git # Show info about current repo state
|
18
|
+
rake git:tag:create # Tag last Commit with a auto increment number prefix
|
19
|
+
rake git:tag:show # Show last tag details
|
20
|
+
```
|
21
|
+
|
22
|
+
#### Rails Project
|
23
|
+
|
24
|
+
```
|
25
|
+
rake project:about # Show Help & Usage for Orangeweb Rake Tasks
|
26
|
+
rake project:deploy # Execute All Tasks to Deploy your App on Server
|
27
|
+
rake project:gems # Run Gems / Bundler Tasks
|
28
|
+
```
|
29
|
+
|
30
|
+
#### SemVer Versioning
|
31
|
+
|
32
|
+
```
|
33
|
+
rake semver # show current version (visit http://semver.org)
|
34
|
+
rake semver:bump:build # Bump Build Version
|
35
|
+
rake semver:bump:major # Bump Major Version
|
36
|
+
rake semver:bump:minor # Bump Minor Version
|
37
|
+
rake semver:bump:patch # Bump Patch Version
|
38
|
+
rake semver:bump:rc # Bump Release Candidate Version
|
39
|
+
```
|
40
|
+
|
41
|
+
#### Deploy Server
|
42
|
+
|
43
|
+
```
|
44
|
+
rake webserver:nginx:restart # restart nginx service ( as sudo )
|
45
|
+
rake webserver:nginx:start # start nginx service ( as sudo )
|
46
|
+
rake webserver:nginx:stop # stop nginx service ( as sudo )
|
47
|
+
```
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'orangeweb-tasks'
|
2
|
+
require 'rails'
|
3
|
+
module OrangewebTasks
|
4
|
+
class Railtie < Rails::Railtie
|
5
|
+
railtie_name :orangeweb_tasks
|
6
|
+
|
7
|
+
rake_tasks do
|
8
|
+
load "tasks/orangeweb.rake"
|
9
|
+
load "tasks/bower.rake"
|
10
|
+
load "tasks/git.rake"
|
11
|
+
load "tasks/semver.rake"
|
12
|
+
load "tasks/webserver.rake"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
#******************************************************************************
|
3
|
+
#
|
4
|
+
# Useful Set of Rake Tasks for Manage Twitter Bower.
|
5
|
+
#
|
6
|
+
# Author: Luiz Eduardo de Oliveira Fonseca <luizeof@gmail.com>
|
7
|
+
#
|
8
|
+
# Version: 0.1.1
|
9
|
+
#
|
10
|
+
#******************************************************************************
|
11
|
+
|
12
|
+
# Bower Assets Manager
|
13
|
+
namespace :bower do # project:bower
|
14
|
+
|
15
|
+
desc "install bower packages"
|
16
|
+
task :install do
|
17
|
+
sh 'bower install'
|
18
|
+
end
|
19
|
+
|
20
|
+
desc "update bower packages"
|
21
|
+
task :update do
|
22
|
+
sh 'bower update'
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
data/lib/tasks/git.rake
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
#******************************************************************************
|
3
|
+
#
|
4
|
+
# Useful Set of Rake Tasks for Git Management.
|
5
|
+
#
|
6
|
+
# Author: Luiz Eduardo de Oliveira Fonseca <luizeof@gmail.com>
|
7
|
+
#
|
8
|
+
# Version: 0.1.1
|
9
|
+
#
|
10
|
+
#******************************************************************************
|
11
|
+
|
12
|
+
|
13
|
+
desc "Show info about current repo state"
|
14
|
+
task :git do
|
15
|
+
sh "clear"
|
16
|
+
sh "git branch"
|
17
|
+
sh "git tag"
|
18
|
+
sh "git status"
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
# Git
|
23
|
+
namespace :git do
|
24
|
+
|
25
|
+
# show
|
26
|
+
task :tag do
|
27
|
+
Rake::Task['git:tag:show'].invoke
|
28
|
+
end # show
|
29
|
+
|
30
|
+
# Git Tag
|
31
|
+
namespace :tag do
|
32
|
+
|
33
|
+
desc "Tag last Commit with a auto increment number prefix"
|
34
|
+
task :create do
|
35
|
+
tag = File.read("semver/WORKING")
|
36
|
+
sh "git tag -a #{tag} -m #{tag}"
|
37
|
+
end # git:tag:create
|
38
|
+
|
39
|
+
|
40
|
+
desc "Show last tag details"
|
41
|
+
task :show do
|
42
|
+
tag = File.read("semver/WORKING")
|
43
|
+
puts "show info about tag #{tag}"
|
44
|
+
sh = "git show #{tag}"
|
45
|
+
end # git:tag:show
|
46
|
+
|
47
|
+
end # git:tag
|
48
|
+
|
49
|
+
end # git
|
@@ -0,0 +1,67 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
#******************************************************************************
|
3
|
+
#
|
4
|
+
# Useful Set of Rake Tasks for Ruby on Rails Development.
|
5
|
+
#
|
6
|
+
# Author: Luiz Eduardo de Oliveira Fonseca <luizeof@gmail.com>
|
7
|
+
#
|
8
|
+
# Version: 0.1.1
|
9
|
+
#
|
10
|
+
#******************************************************************************
|
11
|
+
|
12
|
+
|
13
|
+
require 'fileutils'
|
14
|
+
require "rubygems"
|
15
|
+
require 'rake'
|
16
|
+
require 'yaml'
|
17
|
+
require 'time'
|
18
|
+
|
19
|
+
|
20
|
+
task :deploy do
|
21
|
+
Rake::Task['project:about'].invoke
|
22
|
+
end
|
23
|
+
|
24
|
+
|
25
|
+
namespace :project do
|
26
|
+
|
27
|
+
|
28
|
+
# Show Help & Usage for luizeof Rake Tasks
|
29
|
+
desc "Show Help & Usage for Orangeweb Rake Tasks"
|
30
|
+
task :about do
|
31
|
+
puts <<-about
|
32
|
+
|
33
|
+
Useful Rake Tasks for Rails Development.
|
34
|
+
Author: Luiz Eduardo de Oliveira Fonseca < luizeof@gmail.com >
|
35
|
+
Version: 0.1.1 (23/01/2013)
|
36
|
+
|
37
|
+
about
|
38
|
+
end
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
# Run Gems / Bundler Tasks
|
43
|
+
desc "Run Gems / Bundler Tasks"
|
44
|
+
task :gems do
|
45
|
+
sh 'gem update'
|
46
|
+
sh 'bundle install'
|
47
|
+
sh 'bundle update'
|
48
|
+
end
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
# Execute All Deploy Tasks on Server
|
54
|
+
desc "Execute All Tasks to Deploy your App on Server"
|
55
|
+
task :deploy do
|
56
|
+
Rake::Task['webserver:nginx:stop'].invoke
|
57
|
+
Rake::Task['project:gems'].invoke
|
58
|
+
Rake::Task['assets:clean'].invoke
|
59
|
+
Rake::Task['assets:precompile'].invoke
|
60
|
+
Rake::Task['db:migrate RAILS_ENV=production'].invoke
|
61
|
+
Rake::Task['log:clear'].invoke
|
62
|
+
Rake::Task['webserver:nginx:start'].invoke
|
63
|
+
puts "all deploy tasks done..."
|
64
|
+
end
|
65
|
+
|
66
|
+
|
67
|
+
end # project
|
@@ -0,0 +1,257 @@
|
|
1
|
+
#******************************************************************************
|
2
|
+
#
|
3
|
+
# Useful Set of Rake Tasks for SemVer your App
|
4
|
+
#
|
5
|
+
# Author: Luiz Eduardo de Oliveira Fonseca <luizeof@gmail.com>
|
6
|
+
#
|
7
|
+
# Version: 0.1.1
|
8
|
+
#
|
9
|
+
#******************************************************************************
|
10
|
+
|
11
|
+
require 'fileutils'
|
12
|
+
require "rubygems"
|
13
|
+
require 'rake'
|
14
|
+
|
15
|
+
desc "show current version (visit http://semver.org)"
|
16
|
+
task :semver do
|
17
|
+
sh 'clear'
|
18
|
+
Rake::Task['semver:show'].invoke
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
# Versionamento do Sistema
|
23
|
+
namespace :semver do
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
# shows current app version
|
28
|
+
task :show do
|
29
|
+
Rake::Task['semver:current'].invoke
|
30
|
+
w = File.read("semver/WORKING")
|
31
|
+
puts "your webapp is under version #{w}"
|
32
|
+
end # luizeof:semver:show
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
# generate current app version file
|
37
|
+
task :current do
|
38
|
+
Rake::Task['semver:init'].invoke
|
39
|
+
|
40
|
+
ver = ""
|
41
|
+
maj = File.read("semver/MAJOR").to_i
|
42
|
+
min = File.read("semver/MINOR").to_i
|
43
|
+
patch = File.read("semver/PATCH").to_i
|
44
|
+
build = File.read("semver/BUILD").to_i
|
45
|
+
rc = File.read("semver/RCANDIDATE").to_i
|
46
|
+
|
47
|
+
if maj >= 0 then
|
48
|
+
ver << "#{maj}"
|
49
|
+
end
|
50
|
+
|
51
|
+
if min >= 0 then
|
52
|
+
ver << ".#{min}"
|
53
|
+
end
|
54
|
+
|
55
|
+
if patch >= 0 then
|
56
|
+
ver << ".#{patch}"
|
57
|
+
end
|
58
|
+
|
59
|
+
if build > 0 then
|
60
|
+
ver << "-build.#{build}"
|
61
|
+
end
|
62
|
+
|
63
|
+
if rc > 0 then
|
64
|
+
ver << "-rc.#{rc}"
|
65
|
+
end
|
66
|
+
|
67
|
+
File.open("semver/WORKING", "w+") do |f|
|
68
|
+
f.write(ver)
|
69
|
+
end
|
70
|
+
end # semver:current
|
71
|
+
|
72
|
+
|
73
|
+
|
74
|
+
# init all semver files
|
75
|
+
task :init do
|
76
|
+
Dir.mkdir(Rails.root.join("semver/")) unless File.exists?(Rails.root.join("semver/"))
|
77
|
+
|
78
|
+
unless File.exist?("semver/MAJOR") then
|
79
|
+
File.open("semver/MAJOR", "w+") do |f|
|
80
|
+
f.write("0")
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
unless File.exist?("semver/MINOR") then
|
85
|
+
File.open("semver/MINOR", "w+") do |f|
|
86
|
+
f.write("0")
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
unless File.exist?("semver/PATCH") then
|
91
|
+
File.open("semver/PATCH", "w+") do |f|
|
92
|
+
f.write("0")
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
unless File.exist?("semver/BUILD") then
|
97
|
+
File.open("semver/BUILD", "w+") do |f|
|
98
|
+
f.write("0")
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
unless File.exist?("semver/RCANDIDATE") then
|
103
|
+
File.open("semver/RCANDIDATE", "w+") do |f|
|
104
|
+
f.write("0")
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
unless File.exist?("semver/WORKING") then
|
109
|
+
File.open("semver/WORKING", "w+") do |f|
|
110
|
+
f.write("0.0.0")
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
end # semver:init
|
115
|
+
|
116
|
+
|
117
|
+
|
118
|
+
namespace :bump do # semver:bump
|
119
|
+
|
120
|
+
|
121
|
+
desc "Bump Major Version"
|
122
|
+
task :major do
|
123
|
+
|
124
|
+
Rake::Task['semver:init'].invoke
|
125
|
+
|
126
|
+
maj = File.read("semver/MAJOR")
|
127
|
+
maj = maj.to_i + 1
|
128
|
+
|
129
|
+
File.open("semver/MAJOR", "w+") do |f|
|
130
|
+
f.write(maj)
|
131
|
+
end
|
132
|
+
|
133
|
+
File.open("semver/MINOR", "w+") do |f|
|
134
|
+
f.write("0")
|
135
|
+
end
|
136
|
+
|
137
|
+
File.open("semver/PATCH", "w+") do |f|
|
138
|
+
f.write("0")
|
139
|
+
end
|
140
|
+
|
141
|
+
File.open("semver/BUILD", "w+") do |f|
|
142
|
+
f.write("0")
|
143
|
+
end
|
144
|
+
|
145
|
+
File.open("semver/RCANDIDATE", "w+") do |f|
|
146
|
+
f.write("0")
|
147
|
+
end
|
148
|
+
|
149
|
+
Rake::Task['semver:show'].invoke
|
150
|
+
|
151
|
+
end # semver:bump:major
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
desc "Bump Minor Version"
|
157
|
+
task :minor do
|
158
|
+
|
159
|
+
Rake::Task['semver:init'].invoke
|
160
|
+
|
161
|
+
min = File.read("semver/MINOR")
|
162
|
+
min = min.to_i + 1
|
163
|
+
|
164
|
+
File.open("semver/MINOR", "w+") do |f|
|
165
|
+
f.write(min)
|
166
|
+
end
|
167
|
+
|
168
|
+
File.open("semver/PATCH", "w+") do |f|
|
169
|
+
f.write("0")
|
170
|
+
end
|
171
|
+
|
172
|
+
File.open("semver/BUILD", "w+") do |f|
|
173
|
+
f.write("0")
|
174
|
+
end
|
175
|
+
|
176
|
+
File.open("semver/RCANDIDATE", "w+") do |f|
|
177
|
+
f.write("0")
|
178
|
+
end
|
179
|
+
|
180
|
+
Rake::Task['semver:show'].invoke
|
181
|
+
|
182
|
+
end # semver:bump:minor
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
desc "Bump Patch Version"
|
189
|
+
task :patch do
|
190
|
+
|
191
|
+
Rake::Task['semver:init'].invoke
|
192
|
+
|
193
|
+
patch = File.read("semver/PATCH")
|
194
|
+
patch = patch.to_i + 1
|
195
|
+
|
196
|
+
File.open("semver/PATCH", "w+") do |f|
|
197
|
+
f.write(patch)
|
198
|
+
end
|
199
|
+
|
200
|
+
File.open("semver/BUILD", "w+") do |f|
|
201
|
+
f.write("0")
|
202
|
+
end
|
203
|
+
|
204
|
+
File.open("semver/RCANDIDATE", "w+") do |f|
|
205
|
+
f.write("0")
|
206
|
+
end
|
207
|
+
|
208
|
+
Rake::Task['semver:show'].invoke
|
209
|
+
|
210
|
+
end # semver:bump:patch
|
211
|
+
|
212
|
+
|
213
|
+
|
214
|
+
|
215
|
+
desc "Bump Build Version"
|
216
|
+
task :build do
|
217
|
+
|
218
|
+
Rake::Task['semver:init'].invoke
|
219
|
+
|
220
|
+
build = File.read("semver/BUILD")
|
221
|
+
build = build.to_i + 1
|
222
|
+
|
223
|
+
File.open("semver/BUILD", "w+") do |f|
|
224
|
+
f.write(build)
|
225
|
+
end
|
226
|
+
|
227
|
+
File.open("semver/RCANDIDATE", "w+") do |f|
|
228
|
+
f.write("0")
|
229
|
+
end
|
230
|
+
|
231
|
+
Rake::Task['semver:show'].invoke
|
232
|
+
|
233
|
+
end # semver:bump:build
|
234
|
+
|
235
|
+
|
236
|
+
|
237
|
+
|
238
|
+
desc "Bump Release Candidate Version"
|
239
|
+
task :rc do
|
240
|
+
|
241
|
+
Rake::Task['semver:init'].invoke
|
242
|
+
|
243
|
+
rc = File.read("semver/RCANDIDATE")
|
244
|
+
rc = rc.to_i + 1
|
245
|
+
|
246
|
+
File.open("semver/RCANDIDATE", "w+") do |f|
|
247
|
+
f.write(rc)
|
248
|
+
end
|
249
|
+
|
250
|
+
Rake::Task['semver:show'].invoke
|
251
|
+
|
252
|
+
end # semver:bump:rc
|
253
|
+
|
254
|
+
|
255
|
+
end # semver:bump
|
256
|
+
|
257
|
+
end # semver
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
#******************************************************************************
|
3
|
+
#
|
4
|
+
# Useful Set of Rake Tasks for Ruby on Rails Development.
|
5
|
+
#
|
6
|
+
# Author: Luiz Eduardo de Oliveira Fonseca <luizeof@gmail.com>
|
7
|
+
#
|
8
|
+
# Version: 0.1.1
|
9
|
+
#
|
10
|
+
#******************************************************************************
|
11
|
+
|
12
|
+
require 'fileutils'
|
13
|
+
require "rubygems"
|
14
|
+
require 'rake'
|
15
|
+
|
16
|
+
namespace :webserver do
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
namespace :nginx do # nginx
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
desc "start nginx service ( as sudo )"
|
25
|
+
task :start do
|
26
|
+
sh 'sudo service nginx start'
|
27
|
+
end
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
desc "stop nginx service ( as sudo )"
|
32
|
+
task :stop do
|
33
|
+
sh 'sudo service nginx stop'
|
34
|
+
end
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
desc "restart nginx service ( as sudo )"
|
39
|
+
task :restart do
|
40
|
+
sh 'sudo service nginx restart'
|
41
|
+
end
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
end # server:nginx
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
end # server
|
metadata
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: orangeweb-tasks
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Luiz Eduardo O. Fonseca
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-01-23 00:00:00.000000000 Z
|
13
|
+
dependencies: []
|
14
|
+
description: Orangeweb Tasks for Rails
|
15
|
+
email: luizeof@gmail.com
|
16
|
+
executables: []
|
17
|
+
extensions: []
|
18
|
+
extra_rdoc_files: []
|
19
|
+
files:
|
20
|
+
- lib/orangeweb-tasks/railtie.rb
|
21
|
+
- lib/orangeweb-tasks.rb
|
22
|
+
- lib/tasks/bower.rake
|
23
|
+
- lib/tasks/git.rake
|
24
|
+
- lib/tasks/orangeweb.rake
|
25
|
+
- lib/tasks/semver.rake
|
26
|
+
- lib/tasks/webserver.rake
|
27
|
+
- README.md
|
28
|
+
homepage: https://bitbucket.org/orangeweb/gem-orangework-tasks
|
29
|
+
licenses: []
|
30
|
+
post_install_message:
|
31
|
+
rdoc_options: []
|
32
|
+
require_paths:
|
33
|
+
- lib
|
34
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
35
|
+
none: false
|
36
|
+
requirements:
|
37
|
+
- - ! '>='
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0'
|
40
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
requirements: []
|
47
|
+
rubyforge_project:
|
48
|
+
rubygems_version: 1.8.24
|
49
|
+
signing_key:
|
50
|
+
specification_version: 3
|
51
|
+
summary: Orangeweb Tasks
|
52
|
+
test_files: []
|