git clone git@github.com:YOUR-USERNAME/YOUR-FORKED-REPO.git
cd into/cloned/fork-repo
git remote add upstream git://github.com/ORIGINAL-DEV-USERNAME/REPO-YOU-FORKED-FROM.git
git fetch upstream
| def forked! | |
| ActiveRecord::Base.connection.reconnect! | |
| Rails.cache.instance_variable_get(:@data).reset | |
| Mongoid.config.master.connection.close | |
| load File.join(RAILS_ROOT, 'config/initializers/mongoid.rb') | |
| end | |
| def run(job) | |
| runtime = Benchmark.realtime do | |
| fork do |
| # yes, sometimes you need to do this. you get pilloried in a forum if you | |
| # ask about it, though! | |
| # this code taken from | |
| # http://wholemeal.co.nz/blog/2011/04/05/rendering-from-a-model-in-rails-3/ | |
| class MyModel < ActiveRecord::Base | |
| # Use the my_models/_my_model.txt.erb view to render this object as a string | |
| def to_s | |
| ActionView::Base.new(Rails.configuration.paths.app.views.first).render( |
| #!/bin/bash | |
| # | |
| # This script is triggered by crontab every 5 minutes. | |
| # Logs to /var/log/ui-server/<host>-rails_check.log. | |
| log_dir=/var/log/my_rails_app | |
| mkdir -p $log_dir | |
| log_file=$log_dir/$(hostname)-rails_check.log | |
| # Limits in MB |
| upstream app { | |
| server unix:/srv/app/current/tmp/sockets/unicorn.sock fail_timeout=0; | |
| } | |
| server { | |
| listen 80; | |
| server_name www.app.com; | |
| rewrite ^/(.*) http://app.com/$1 permanent; | |
| } | |
| server { |
| # First install tmux | |
| brew install tmux | |
| # For mouse support (for switching panes and windows) | |
| # Only needed if you are using Terminal.app (iTerm has mouse support) | |
| Install http://www.culater.net/software/SIMBL/SIMBL.php | |
| Then install https://bitheap.org/mouseterm/ | |
| # More on mouse support http://floriancrouzat.net/2010/07/run-tmux-with-mouse-support-in-mac-os-x-terminal-app/ |
| # in features/support/env.rb | |
| require 'selenium/webdriver' | |
| # we need a firefox extension to start intercepting javascript errors before the page | |
| # scripts load | |
| Capybara.register_driver :selenium do |app| | |
| profile = Selenium::WebDriver::Firefox::Profile.new | |
| # see https://github.com/mguillem/JSErrorCollector | |
| profile.add_extension File.join(Rails.root, "features/support/extensions/JSErrorCollector.xpi") | |
| Capybara::Selenium::Driver.new app, :profile => profile |
| require 'rubygems' | |
| require 'nokogiri' | |
| require 'fileutils' | |
| require 'date' | |
| require 'uri' | |
| # usage: ruby import.rb my-blog.xml | |
| # my-blog.xml is a file from Settings -> Basic -> Export in blogger. | |
| data = File.read ARGV[0] |
| module ControllerFormAttributes | |
| @@types = {} | |
| # form_params_accessors(:user, :email, :password, :password_confirmation) | |
| def form_params_accessors(type, attributes) | |
| @@types[type] = attributes | |
| end | |
| # user.update_attributes(form_params_for(:user)) | |
| def form_params_for(type) |
| #!/bin/sh | |
| # This script will migrate schema and data from a SQLite3 database to PostgreSQL. | |
| # Schema translation based on http://stackoverflow.com/a/4581921/1303625. | |
| # Some column types are not handled (e.g blobs). | |
| SQLITE_DB_PATH=$1 | |
| PG_DB_NAME=$2 | |
| PG_USER_NAME=$3 |