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 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,3 @@
1
+ module OrangewebTasks
2
+ require 'orangeweb-tasks/railtie' if defined?(Rails)
3
+ 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
@@ -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: []