elocal_capistrano 1.0.8 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
         |