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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d6c55e012571d05945a1410d73ca835c3aac0c46
4
- data.tar.gz: af8f1dc09fefb38dee74659f68a05dd27190fe5e
3
+ metadata.gz: 05ddeb1c8daef208506c5a8d4399475b1cca8acb
4
+ data.tar.gz: 15aad2c6852964a826b63cfac91b6100012e9016
5
5
  SHA512:
6
- metadata.gz: 011591323d106d6ff88ead79b0a75709ff4dfe0e8a6395674a86e6667063a8a90cedec011eb59c9403f8670559348f2873a45c39db536b495f79e65aa4bdb4b3
7
- data.tar.gz: 1804d8c0ef3e500cf6dff7f6165b5c0e00953936ec56cefb424e1f63073a0f0d31a23f4b178e3837fbb3f7bc23f776002ae8884bfaf1bd26078182d192cf24ed
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
@@ -1,3 +1,3 @@
1
1
  module ElocalCapistrano
2
- VERSION = '1.0.8'
2
+ VERSION = '2.0.0'
3
3
  end
@@ -1 +1,5 @@
1
- Dir["#{File.expand_path('..',__FILE__,)}/**/*.rb"].each { |path| require path }
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 }
@@ -0,0 +1,5 @@
1
+ task :chef do
2
+ on release_roles :all do
3
+ sudo 'chef-client'
4
+ end
5
+ end
@@ -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: 1.0.8
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-02-20 00:00:00.000000000 Z
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,5 +0,0 @@
1
- Capistrano::Configuration.instance.load do
2
- task :chef do
3
- run "#{try_sudo} chef-client"
4
- end
5
- end
@@ -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