Installing mysql2
gem errors on MacOS Mojave.
Make sure openssl
is installed on Mac via Homebrew.
brew install openssl
# -*- encoding : utf-8 -*- | |
set :assets_dependencies, %w(app/assets lib/assets vendor/assets Gemfile.lock config/routes.rb) | |
namespace :deploy do | |
namespace :assets do | |
desc <<-DESC | |
Run the asset precompilation rake task. You can specify the full path \ | |
to the rake executable by setting the rake variable. You can also \ |
require 'resque/errors' | |
class DatabaseBackupJob | |
def self.perform(id, foo, bar) | |
# do backup work | |
rescue Resque::TermException | |
# write failure to database | |
# re-enqueue the job so the job won't be lost when scaling down. | |
Resque.enqueue(DatabaseBackupJob, id, foo, bar) |
# Update, upgrade and install development tools: | |
apt-get update | |
apt-get -y upgrade | |
apt-get -y install build-essential | |
apt-get -y install git-core | |
# Install rbenv | |
git clone git://github.com/sstephenson/rbenv.git /usr/local/rbenv | |
# Add rbenv to the path: |
#!/usr/bin/env ruby | |
# reviewed by Erik B on January 21 2012 | |
# by @tapbot_paul | |
# Don't blame me if this nukes your metadata, formats your drive, kills your kids | |
# This script goes through any iCloud Matched songs in your iTunes library and tries to update the | |
# metadata from the iTunes Store | |
# Will run against selected tracks or if nothing selected entire library | |
# install the required gems with the following commands | |
# sudo gem install json --no-ri --no-rdoc | |
# sudo gem install rb-appscript --no-ri --no-rdoc |
# app/controllers/users/password_controller.rb | |
class Users::PasswordsController < Devise::PasswordsController | |
def resource_params | |
params.require(:user).permit(:email, :password, :password_confirmation) | |
end | |
private :resource_params | |
end |
# Automatically add mustaches to any images it can | |
# | |
# | |
module.exports = (robot) -> | |
robot.hear /^(https?:\/\/[^ #]+\.(?:png|jpg|jpeg))(?:[#]\.png)?$/i, (msg) -> | |
src = msg.match[1] | |
unless src.match(/^http:\/\/mustachify.me/) | |
msg.http("http://stacheable.herokuapp.com") |
# Utility commands surrounding Hubot uptime. | |
spawn = require('child_process').spawn | |
module.exports = (robot) -> | |
robot.hear /hubot (who|where) are you\??/i, (msg) -> | |
msg.finish() | |
child = spawn('/bin/sh', ['-c', "echo I\\'m $LOGNAME@$(hostname):$(pwd) \\($(git rev-parse HEAD)\\)"]) | |
child.stdout.on 'data', (data) -> | |
msg.send "#{data.toString().trim()} running node #{process.version} [version: #{robot.version}, pid: #{process.pid}, name: #{robot.name} ]" |
def run! | |
pid = fork do | |
exec_pid = fork do | |
$0 = "heaven[#{Heaven.current_sha}] : executing deployment of #{application_name}" | |
out_file = File.new(log, "w") | |
STDIN.reopen("/dev/null") | |
STDOUT.reopen(out_file) | |
STDERR.reopen(out_file) |
# http://unicorn.bogomips.org/SIGNALS.html | |
namespace :unicorn do | |
task :start, :roles => :app do | |
sudo "god start unicorn" | |
end | |
task :stop, :roles => :app do | |
sudo "god stop unicorn" | |
end |