elocal_capistrano 1.0.8 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +27 -0
- data/lib/elocal_capistrano/version.rb +1 -1
- data/lib/elocal_capistrano.rb +5 -1
- data/lib/tasks/chef.rake +5 -0
- data/lib/tasks/maintenance.rake +18 -0
- data/lib/tasks/syslog.rake +28 -0
- data/lib/tasks/upstart.rake +53 -0
- metadata +7 -9
- data/lib/elocal_capistrano/chef.rb +0 -5
- data/lib/elocal_capistrano/delayed_job.rb +0 -19
- data/lib/elocal_capistrano/deploy.rb +0 -21
- data/lib/elocal_capistrano/god.rb +0 -10
- data/lib/elocal_capistrano/maintenance.rb +0 -13
- data/lib/elocal_capistrano/puma.rb +0 -22
- data/lib/elocal_capistrano/syslog.rb +0 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 05ddeb1c8daef208506c5a8d4399475b1cca8acb
|
4
|
+
data.tar.gz: 15aad2c6852964a826b63cfac91b6100012e9016
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 45baac6e047def871f71221c67cc59b454bb1964dfe29e420fa793d119940d2877ffec1ebd8fa4ce423732013bd350b677a57039bb30c8df06ac24f226e53c14
|
7
|
+
data.tar.gz: 3f9e067e5da54bc3bd7b32eb97fb171941c099c8f08066f6b02966059fd830c6291914aa9e57b7b62d4a1ccec922b3d07612fdbcd491b465314e7c17f68dd4b1
|
data/.rubocop.yml
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
AllCops:
|
2
|
+
Include:
|
3
|
+
- Rakefile
|
4
|
+
Exclude:
|
5
|
+
- db/**/*
|
6
|
+
- config/**/*
|
7
|
+
- script/**/*
|
8
|
+
- bin/**/*
|
9
|
+
LineLength:
|
10
|
+
Enabled: true
|
11
|
+
Max: 150
|
12
|
+
Documentation:
|
13
|
+
Enabled: false
|
14
|
+
AlignParameters:
|
15
|
+
Enabled: false
|
16
|
+
MethodLength:
|
17
|
+
Max: 30
|
18
|
+
AndOr:
|
19
|
+
Enabled: false
|
20
|
+
ClassLength:
|
21
|
+
Max: 200
|
22
|
+
ClassAndModuleChildren:
|
23
|
+
Enabled: false
|
24
|
+
MultilineOperationIndentation:
|
25
|
+
Enabled: false
|
26
|
+
Metrics/AbcSize:
|
27
|
+
Max: 20
|
data/lib/elocal_capistrano.rb
CHANGED
@@ -1 +1,5 @@
|
|
1
|
-
|
1
|
+
# Load any pertinent libraries
|
2
|
+
Dir["#{File.expand_path('..', __FILE__)}/**/*.rb"].each { |path| require path }
|
3
|
+
|
4
|
+
# Load capistrano rake tasks
|
5
|
+
Dir["#{File.expand_path('..', __FILE__)}/tasks/*.rake"].each { |path| load path }
|
data/lib/tasks/chef.rake
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
namespace :maintenance do
|
2
|
+
desc 'Show the maintenence page and return a 503 error for every new HTTP request.'
|
3
|
+
task :begin do
|
4
|
+
on release_roles :web do
|
5
|
+
execute [
|
6
|
+
"mkdir -p #{current_path}/public/system",
|
7
|
+
"cp #{current_path}/public/inactive.maintenance.html #{current_path}/public/system/maintenance.html"
|
8
|
+
].join(' && ')
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
desc 'Turn off the maintenance page and resume normal operations.'
|
13
|
+
task :end do
|
14
|
+
on release_roles :web do
|
15
|
+
execute "rm -f #{current_path}/public/system/maintenance.html"
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
namespace :load do
|
2
|
+
task :defaults do
|
3
|
+
set :syslog_grep_pattern, ENV['pattern']
|
4
|
+
set :syslog_all_logs, %w(y Y yes true 1).include?(ENV['all_logs'])
|
5
|
+
end
|
6
|
+
end
|
7
|
+
|
8
|
+
namespace :syslog do
|
9
|
+
desc <<-EOM
|
10
|
+
Grep the syslog on all boxes for a specific pattern (cap production syslog:grep pattern=my_regex_pattern all_logs=y)
|
11
|
+
EOM
|
12
|
+
task :grep do
|
13
|
+
syslogs_name =
|
14
|
+
if fetch(:syslog_all_logs)
|
15
|
+
'/var/log/syslog*'
|
16
|
+
else
|
17
|
+
'/var/log/syslog'
|
18
|
+
end
|
19
|
+
|
20
|
+
on release_roles :all do
|
21
|
+
if fetch(:syslog_grep_pattern).to_s.strip != ''
|
22
|
+
sudo 'zgrep', '-E', fetch(:syslog_grep_pattern), syslogs_name
|
23
|
+
else
|
24
|
+
fail 'No pattern specified, please use pattern=PATTERN'
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
namespace :load do
|
2
|
+
task :defaults do
|
3
|
+
set :puma_application_name, -> { "#{fetch(:application)}_puma" }
|
4
|
+
set :delayed_job_application_name, -> { "#{fetch(:application)}_delayed_job" }
|
5
|
+
end
|
6
|
+
end
|
7
|
+
|
8
|
+
namespace :upstart do
|
9
|
+
namespace :puma do
|
10
|
+
%w(reload start stop status).each do |t|
|
11
|
+
desc "Perform #{t} of the puma service"
|
12
|
+
task t do
|
13
|
+
on release_roles :app do
|
14
|
+
Array(fetch(:puma_application_name)).each do |app_name|
|
15
|
+
sudo t, app_name
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
desc 'Perform a restart of the application puma service'
|
22
|
+
task :restart do
|
23
|
+
on release_roles :app do
|
24
|
+
Array(fetch(:puma_application_name)).each do |app_name|
|
25
|
+
execute <<-CMD.strip
|
26
|
+
pid=`status #{app_name} | grep -o -E '[0-9]+'`; if [ -z $pid ]; then sudo start #{app_name}; else sudo reload #{app_name}; fi
|
27
|
+
CMD
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
namespace :delayed_job do
|
34
|
+
%w(start stop status).each do |t|
|
35
|
+
desc "Perform #{t} of the delayed_job service"
|
36
|
+
task t do
|
37
|
+
on release_roles :app do
|
38
|
+
sudo t, fetch(:delayed_job_application_name)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
desc 'Perform a restart of the application puma service'
|
44
|
+
task :restart do
|
45
|
+
on release_roles :app do
|
46
|
+
dj_name = fetch(:delayed_job_application_name)
|
47
|
+
execute <<-CMD.strip
|
48
|
+
pid=`status #{dj_name} | grep -o -E '[0-9]+'`; if [ -z $pid ]; then sudo start #{dj_name}; else sudo restart #{dj_name}; fi
|
49
|
+
CMD
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: elocal_capistrano
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rob Di Marco
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-07-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -46,20 +46,18 @@ extensions: []
|
|
46
46
|
extra_rdoc_files: []
|
47
47
|
files:
|
48
48
|
- ".gitignore"
|
49
|
+
- ".rubocop.yml"
|
49
50
|
- Gemfile
|
50
51
|
- LICENSE.txt
|
51
52
|
- README.md
|
52
53
|
- Rakefile
|
53
54
|
- elocal_capistrano.gemspec
|
54
55
|
- lib/elocal_capistrano.rb
|
55
|
-
- lib/elocal_capistrano/chef.rb
|
56
|
-
- lib/elocal_capistrano/delayed_job.rb
|
57
|
-
- lib/elocal_capistrano/deploy.rb
|
58
|
-
- lib/elocal_capistrano/god.rb
|
59
|
-
- lib/elocal_capistrano/maintenance.rb
|
60
|
-
- lib/elocal_capistrano/puma.rb
|
61
|
-
- lib/elocal_capistrano/syslog.rb
|
62
56
|
- lib/elocal_capistrano/version.rb
|
57
|
+
- lib/tasks/chef.rake
|
58
|
+
- lib/tasks/maintenance.rake
|
59
|
+
- lib/tasks/syslog.rake
|
60
|
+
- lib/tasks/upstart.rake
|
63
61
|
homepage: https://github.com/eLocal/elocal_capistrano
|
64
62
|
licenses:
|
65
63
|
- MIT
|
@@ -1,19 +0,0 @@
|
|
1
|
-
Capistrano::Configuration.instance.load do
|
2
|
-
set(:delayed_job_application_name) { "#{application}_delayed_job" }
|
3
|
-
namespace :delayed_job do
|
4
|
-
namespace :upstart do
|
5
|
-
%w(start stop status).each do |t|
|
6
|
-
desc "Perform #{t} of the delayed_job service"
|
7
|
-
task t, roles: :app, except: { no_release: true } do
|
8
|
-
sudo "#{t} #{delayed_job_application_name}"
|
9
|
-
end
|
10
|
-
end
|
11
|
-
desc 'Perform a restart of the application puma service'
|
12
|
-
task :restart, roles: :app, except: { no_release: true } do
|
13
|
-
run <<-CMD.strip
|
14
|
-
pid=`status #{delayed_job_application_name} | grep -o -E '[0-9]+'`; if [ -z $pid ]; then sudo start #{delayed_job_application_name}; else sudo restart #{delayed_job_application_name}; fi
|
15
|
-
CMD
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
Capistrano::Configuration.instance.load do
|
2
|
-
|
3
|
-
namespace :deploy do
|
4
|
-
|
5
|
-
desc "Symlink configuration files to the config/ directory."
|
6
|
-
task :symlink_shared_configuration, :roles => :app do
|
7
|
-
run <<-CMD
|
8
|
-
if [ -d #{deploy_to}/shared/config ]; then
|
9
|
-
cd #{deploy_to}/shared/config;
|
10
|
-
for f in `ls -x`; do
|
11
|
-
if [ -f #{release_path}/config/$f ]; then
|
12
|
-
mv #{release_path}/config/$f #{release_path}/config/$f.orig;
|
13
|
-
fi;
|
14
|
-
ln -nfs #{deploy_to}/shared/config/$f #{release_path}/config/$f;
|
15
|
-
done;
|
16
|
-
fi;
|
17
|
-
CMD
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
end
|
@@ -1,10 +0,0 @@
|
|
1
|
-
Capistrano::Configuration.instance.load do
|
2
|
-
set(:god_application_name) { application }
|
3
|
-
namespace :god do
|
4
|
-
[:start, :stop, :restart].each do |t|
|
5
|
-
task t, :roles => :app, except: { no_release: true } do
|
6
|
-
sudo "god #{t} #{god_application_name}"
|
7
|
-
end
|
8
|
-
end
|
9
|
-
end
|
10
|
-
end
|
@@ -1,13 +0,0 @@
|
|
1
|
-
Capistrano::Configuration.instance.load do
|
2
|
-
namespace :maintenance do
|
3
|
-
desc "Show the maintenence page and return a 503 error for every new HTTP request."
|
4
|
-
task :begin, :roles => :app do
|
5
|
-
run "mkdir -p #{current_path}/public/system && cp #{current_path}/public/inactive.maintenance.html #{current_path}/public/system/maintenance.html"
|
6
|
-
end
|
7
|
-
|
8
|
-
desc "Turn off the maintenance page and resume normal operations."
|
9
|
-
task :end, :roles => :app do
|
10
|
-
run "rm -f #{current_path}/public/system/maintenance.html"
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
Capistrano::Configuration.instance.load do
|
2
|
-
set(:puma_application_name) { "#{application}_puma" }
|
3
|
-
namespace :puma do
|
4
|
-
namespace :upstart do
|
5
|
-
%w(reload start stop status).each do |t|
|
6
|
-
desc "Perform #{t} of the _puma service"
|
7
|
-
task t, roles: :app, except: { no_release: true } do
|
8
|
-
sudo "#{t} #{puma_application_name}"
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
desc 'Perform a restart of the application puma service'
|
13
|
-
task :restart, roles: :app, except: { no_release: true } do
|
14
|
-
Array(puma_application_name).each do |app_name|
|
15
|
-
run <<-CMD.strip
|
16
|
-
pid=`status #{app_name} | grep -o -E '[0-9]+'`; if [ -z $pid ]; then sudo start #{app_name}; else sudo reload #{app_name}; fi
|
17
|
-
CMD
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
Capistrano::Configuration.instance.load do
|
2
|
-
set(:pattern, '')
|
3
|
-
set(:all_logs, false)
|
4
|
-
|
5
|
-
namespace :syslog do
|
6
|
-
desc "Grep the sys"
|
7
|
-
task :grep do
|
8
|
-
syslogs_name = if all_logs
|
9
|
-
'/var/log/syslog*'
|
10
|
-
else
|
11
|
-
'/var/log/syslog'
|
12
|
-
end
|
13
|
-
|
14
|
-
if pattern.to_s.strip != ''
|
15
|
-
sudo "zgrep -E #{pattern} #{syslogs_name}"
|
16
|
-
else
|
17
|
-
fail "No pattern specified, please use -s pattern=PATTERN"
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|