さくらVPSで先月と今月、勝手に再起動かかってサービス動いてないのにしばらく気づけなかったのでunicornの自動起動設定してみた ぐぐった先からシェルもらってきて動かしたけど unicorn not found って言われた 調べたらrvm使ってたらラッパーなるものを作りなさいと rvm wrapper 2.0.0@default start unicornするとホームにstart_unicornっていうリンクファイルができるのでこれを呼ぶように変更 /home/ubuntu/.rvm/bin/start_unicornシェルスクリプト /etc/init.d/unicorn #!/bin/sh NAME="Unicorn" ENV=production ROOT_DIR="/var/www/blog" PID="${ROOT_DIR}/tmp/pids/unicorn.pid" CON
Redmineとは Ruby製のオープンソースのプロジェクト管理しすてむ。 目標 Redmine 1.4をUbuntu上で、nginx + unicornで動かす。 前提 nginx、mysqlは導入済みとする。 ディレクトリ構成 $ /home/redmine/webapp |- この下に配置 Ruby周りのインストール システムのRubyが1.8だったため、rvmを使って1.9系のRubyをインストール RVMのインストール システムのRubyを汚さないようにRVMを使って1.9系のRubyをインストールする。 $ $ curl -L get.rvm.io | bash -s stable source ~/.bashrc Ruby 1.9.3のインストール $ rvm install 1.9.3 $ rvm use 1.9.3 --default $ ruby -v Ruby 1.9
GitlabはGithubのオープンソースクローンで プライベートリポジトリをつくることはもちろん、 ユーザ管理や公開鍵管理などをWebブラウザ上からできる、おされなツールです。 さらに、プロジェクト毎にWallやWikiが使えたり、ブランチのネットワークグラフを表示したり、マージリクエストの管理などもできます。 最近構築する機会があったのでメモ # ただし、5.0へのメジャーアップデートでGitoliteが必要なくなるらしく、もっと簡単にインストールが済むようになるかもです。 とりあえず現時点の手順です。 極力手間をかけず、メンテもしやすいような感じで構成してみました。 メモ程度に残していたログを都合よくまとめただけなので、へんなとこあるかもです。 あしからず。 公式の手順はこちら gitlabhq/installation.md at 4-2-stable · gitlabhq/git
2013年08月05日14:53 Ruby JavaScript Rails4 + Capybara + PhantomJS (poltergeist) なテスト環境 Rails4 でのエンドツーエンドなテスト環境を作ってみたのでメモです。 統合テストといえば Capybara さんなわけですが、デフォルトだと JavaScript を実行する際にドライバとして Selenium が使われてしまいます。 Selenium さん良い人なんですが、、、ブラウザが起動するので重いし、そもそも毎回ブラウザが起動する必要は無いのでヘッドレス(ブラウザの起動無しに JavaScript が実行できる)ドライバにしちゃいましょう。サヨナラ。 ヘッドレスドライバはいろいろあるんですが、最近は PhantomJS というライブラリが良いみたいなのでこれを使ってみます。Capybara から PhantomJ
(※Vim使いじゃない人にはよくわからんかもしれませんが、最後までお付き合いください) 皆さんはVim、大好きですよね?Rails、大好きですよね?ということは、Rails.vim、大好きですよね? というわけで、今日は Rails.vim のご紹介…なんですが、基本的な説明はすでにたくさん良いものがあります(日本語でしたらこちらなど)。 ここで私が屋上屋を架してもしょうがない…そこで、探しても日本語情報がなかった、projectionsという機能について書くことにします。 最小限の前提知識 まず、今回の説明に必要な最低限のことを説明します。「そんなの知ってるぜ!」っていうそこのアナタは次のセクションまで飛んでしまいましょう! Rails.vimには Alternate なファイル、 Related なファイルという概念があります。Alternateなファイルとして扱われるのは主に対応する
Releases, Offers & More Be the first to hear about our newest content, best promotions and upcoming events. Plus get 25% off your next purchase. Newsletter Sign Up Download Accounts Your email address is your account identifier. You can create a password, or just download from the links sent via email. My Orders (Resend order emails) How We're Different Hands-on instructions Solutions to real-worl
Ruby on Rails のセキュリティアップデートがあって、 4.0.2 にあげたら i18n gem も 0.6.5 から 0.6.9 にあがって locale の設定変更をしているところで [deprecated] I18n.enforce_available_locales will default to true in the future. If you really want to skip validation of your locale you can set I18n.enforce_available_locales = false to avoid this message. という警告が出るようになりました。 警告の出るタイミング deprecated - Rails 4.0.2 I18n validation deprecation warning - St
昨日、Ruby on Railsの重要なセキュリティアップデートである、Rails 4.0.2と3.2.16がリリースされました。 このリリースには、5件(3.2.16には4件)のセキュリティFIXが含まれています。 重要度の高いものがあるため、早急なアップデートをしましょう。 CVE-2013-6416 simple_formatヘルパーのXSS脆弱性に関する修正です。 ※4.0.2のみ。3.2系では元から発生しないため、3.2.16には含まれません。 simple_formatはhtml_optionsとしてHashを渡せますが、デフォルトで、このclass指定がHTMLエスケープされていませんでした。 class指定をユーザ入力による場合、容易にXSSが成立してしまいます。 simple_format "hello\nworld", class: '"><script>alert(1
今までafter_filterをまともに使っていなかったけれど、そもそもどういう状況で使うのかいまいちわかってなかった。 after_filter for replacing text | Railsvibesを読むと、renderした後のresponse.bodyを書き換えてクライアントに送る用途でafter_filterを使っている。 after_filterはrenderより後でクライアントにデータを送信する前の段階で実行されるのね。そういやレスポンスの圧縮とかがafter_filterのサンプルで使われていたような気がする。 結論 after_filterはrenderの結果をクライアントに送信する前にほげほげする用途で使う
テスト書きすぎ問題 - hitode909の日記 階層が増えるとテストが増える - はこべブログ ♨ テストと対応関係 - $shibayu36->blog; 最近書いているWebアプリは、HTTPリクエストを送ってレスポンスと状態をテストする、というテストだけ書くようにしてる。リクエストするとブログエントリを返す、というサービスだとこういう風なテストを書いてる。(HTMLを返すようにすると話が広がって説明が面倒なのでJSONを返すAPIで説明する) describe "Entry resource" do let(:params) do {} end let(:env) do { "HTTP_AUTHORIZATION" => "Bearer: #{access_token.token}" } end let(:access_token) do AccessToken.make(user
RailsでFat ControllerになったらForm Classを作れ,という記事はあちこちで見るのですが,今一つ参考になるような実装があまり見つからなかったので記事にしてみました. Rails 3.2.13,Ruby 2.0.0系で動作確認済みです. Fat Controller問題 Railsで特に何も考えずに検索機能を作っていると,検索ロジックでcontrollerが膨らんできてしまうと思います(Fat Controller問題). 例えば,検索フォームの内容として最初は名前だけで検索するとのことで, HogeController < ApplicationController def index @hoges = Hoge.where("name LIKE ?", "%#{params[:name]}%") end end と書いていたのが,そのうちメールアドレスや住所でも絞
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く