Heroku に Rails 3.1 アプリを git push すると rake assets:precompile でエラーが出るときの対処法
Heroku で Rails 3.1 アプリを git push heroku master するとこんなエラーが出ることがあると思います。
-----> Preparing app for Rails asset pipeline Running: rake assets:precompile rake aborted! Failed to connect to a master node at localhost:27017 Tasks: TOP => environment (See full trace by running task with --trace) Precompiling assets failed, enabling runtime asset compilation Injecting rails31_enable_runtime_asset_compilation Please see this article for troubleshooting help: http://devcenter.heroku.com/articles/rails31_heroku_cedar#troubleshooting
で、その末尾に書いてある URL を読むと、どうもこのタスクが実行される時点では環境変数(heroku config で見れます)が存在してないらしい。なので、config/database.yml や config/mongoid.yml で、ENV["DATABASE_URL"] とか ENV["MONGOLAB_URI"] を使用してると、nil が返り空白になり、デフォルトアドレス・デフォルトポート(この場合は localhost:27017)を見に行ってコケるらしい。
んでもって、何もコミットせずに再度 git push heroku master とかしてみたら、"Everything up-to-date" とか出やがる。あー、git push 自体は受け入れられてるのね。
ってことで、
$ heroku run rake assets:precompile
と後付けでやったところ、うまく動きましたとさ、めでたしめでたし。
(staging 環境とか作ってる人は適当に --app つけたりして脳内で補って下さい)
Rails のモデル名・ファイル名・ディレクトリ名を一斉に変更するスクリプトを書いた(修正版)
Rails のモデル名変更スクリプトを、まだ名前を明かせぬ人と一緒にペアプロして作った。
全テスト、オールグリーンなので、多分大丈夫。まぁでも Git などの SCM は必須だねぇ。当然、無保証です。
あ、テーブル名・カラム名変更は誰か追加して完全版作ればいい。ウチは今 MongoDB なんで必要ないんすよー。
実行はこんな感じ。
$ rails runner ./script/rename Old New
肝心の内容は以下。
あー、変数名は before/after じゃなくて old/new の方が良かったなー。適当に直すがよろし。
script/rename:
#!/usr/bin/env ruby # coding: utf-8 old = ARGV[0] new = ARGV[1] if old.blank? || new.blank? STDERR.puts "Usage: rails runner ./script/rename old new" exit 1 end old = old.downcase new = new.downcase olds = old.pluralize news = new.pluralize def file_each(&block) Dir.glob('./**/*') do |file| next if file["script/"] next if file["Gemfile"] || file["Rakefile"] || file["Guardfile"] || file["config.ru"] next if file["vendor/"] next if file["config/"] && !file["routes.rb"] next if file["db/"] next if file["tmp/"] || file["log/"] || file["doc/"] next if file[".git/"] print "." yield file end puts end # ディレクトリ名を変更する puts "ディレクトリ名を変更しています" file_each do |file| next unless File.directory?(file) if file[olds] # 複数形を変更する File.rename(file, file.gsub(olds, news)) elsif file[old] # 単数形を変更する File.rename(file, file.gsub(old, new)) end end # ファイル名を変更する puts "ファイル名を変更しています" file_each do |file| next unless File.file?(file) if file[olds] # 複数形を変更する File.rename(file, file.gsub(olds, news)) elsif file[old] # 単数形を変更する File.rename(file, file.gsub(old, new)) end end # ファイルの中の文字列を変更する puts "ファイルを変更しています" file_each do |file| next unless (File.file?(file) && !File.extname(file).match(/\.(jpg|png|gif|ico)$/)) # 複数形を変更する system %Q|sed -i s/#{olds}/#{news}/g #{file}| system %Q|sed -i s/#{olds.capitalize}/#{news.capitalize}/g #{file}| # 単数形を変更する system %Q|sed -i s/#{old}/#{new}/g #{file}| system %Q|sed -i s/#{old.capitalize}/#{new.capitalize}/g #{file}| end
(11/29 修正:sed によるファイルの書き換えが sync する前に、ファイル名・ディレクトリ名の変更が走って中身が古いままだったので、sed の処理を後ろにまわした)
guard-spork なんか使ってる人は、再起動すれば、テスト通る。
Twilog 始めたので Twitter 転載機能を停止します
こっちに Twitter からの転載をしていたのですが、
- 検索するときに便利かと思ったが、俺のゴミみたいなツイートが引っかかってむしろ邪魔
- 旧→新の昇順表示に対応してくれると思ったが、はてなブログとか始めたしやらなさそう
という理由で止めました。
その代わり、Twilog を始めました。
私のツイートが楽しみで購読していた奇特な方は、Feed Reader などの設定を変更して下さい。
こちらの日記では、
- Rails を中心とした技術情報
- 現在進めているスタートアッププロジェクトの進捗
などを書いていこうと思っています。
特に、スタートアップ情報は、今月末を目指してプロダクトを開発しているので、ご愛顧よろしくお願いします。
TechCrunch Tokyo 2011 スタートアップバトルの審査に落ちました
4人で鋭意開発中のプロダクトですが、TechCrunch Tokyo 2011 スタートアップバトルの審査に落ちました。
この度はTechCrunch Tokyo 2011スタートアップバトルにご応募いただきま してありがとうございました。 厳正な審査を行いました結果、誠に残念ながら、貴社サービスにつきまして はご期待に添えない結果となりました。今回も多くの方からご応募をいただ き、審査員一同、大変苦慮した上での決定であることを申し添えさせていた だきます。 なお、今回のTechCrunch Tokyo 2011ではスタートアップ業界をさらに盛り 上げるべく、多くのコンテンツをご用意いたしております。 スタートアップバトルへのご登壇はお願いできず残念ですが、ぜひとも会場 にお越しいただき、今後のサービスに生かせるネットワーキングなどを行っ ていただければ幸いです。 お申込み: http://jp.techcrunch.com/tctokyo2011/#ticket 貴社サービスの今後のご発展とご活躍をお祈りしております。今後ともなに とぞよろしくお願いいたします。 TechCrunch Tokyo 2011運営事務局
がおん。
こうなったからには、何が何でも成功して、その暁には審査員に「ばーかばーか!」と言ってやる所存でございます。
一次審査員:一次審査は下記の審査員が審査をいたします。 ・井口尊仁氏(頓智ドット株式会社 CEO) ・片桐孝憲氏(ピクシブ株式会社 代表取締役) ・小林清剛氏(株式会社ノボット 代表取締役社長) ・松山太河氏(クロノスファンド パートナー / East Ventures Managing Partner) ・宮澤弦氏(株式会社シリウステクノロジーズ 代表取締役) ・山田進太郎氏(ジンガジャパン株式会社 ジェネラル・マネージャー ) ・西田隆一(TechCrunch Japan編集長)
ブートストラップ&少ないコネでぼんぼります。
2011年11月08日の日記
@babie: Ginger Wildheart: The Triple Album Project update: Exclusive Video - Writing a Song URL @PledgeMusic #gingerwildheart
@babie: ばくだんおにぎりを食うタイミングがない。
@babie: 【定期】アヘ顔じゃありません白目です
@babie: TTPはセキュアじゃないのでSFTPを使いましょう(啓蒙)
@babie: ボールドのCMの外人が着ている服って、乳袋気味よな。
@babie: 今夜はペルソナ、ペルソナを(機能名)やるんだ……
@babie: @hajimepg ありがとう、ぼんぼります!
2011-11-08 16:39:30 via TweetDeck to @hajimepg
@babie: @Godsmileyu それ代入してるだけだから、エンドレス腹パンじゃないっすかー
2011-11-08 16:13:41 via TweetDeck to @Godsmileyu
@babie: えーと、1st リリースは 12/1 にしようかな。うん、そうしよう。
@babie: @technohippy ハハハ、デザイン当ててない状態では見せれないしねぇ。Model と Controller はそれなりだったんだけど、View が……。
2011-11-08 16:06:46 via TweetDeck to @technohippy
@babie: 今のうちに私を青田買いしておくといいですよ。開発が進むにつれて自信が湧いてきます!!
@babie: @katsuberyuta ありがとうございます。リリースの暁には表立って応援よろしくお願いします!
2011-11-08 16:03:19 via TweetDeck to @katsuberyuta
@babie: @CandyApple_Core まだ骨組みだけだよーん
@babie: @CandyApple_Core まだ開発中だよーん
@babie: なななな、泣いてないですよっ!!
@babie: @CandyApple_Core TechCrunch Tokyo 2011 スタートアップバトル(ウェブサービスのお披露目会)に落ちた。
@babie: しょーもねープロダクトが受かってたら吊るす。
@babie: これから、ベンチャーキャピタル行脚がはじまります。め、めんどくせえ……
@babie: もう絶対成功する自信あるもんね。
@babie: @satoko このプロダクトでがんばりますー
2011-11-08 15:43:46 via TweetDeck to @satoko
@babie: 敗因は、応募要項に「最初から英語対応」って書かなかったのと、開発中につきデモが見せれなかったこと。
@babie: ちょーかっこいいのに!
@babie: コミュ力低いので、TechCrunch Tokyo 2011 スタートアップバトル落ちた件について、誰からもリプライもらえない。
@babie: TechCrunch Tokyo 2011 スタートアップバトル、審査落ちたああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああ
@babie: 【定期】僕のツイートは路上でこんなアイコンの目をした人がぶつぶつ言いながら歩いている様を想像しながら読んでください
2011年11月07日の日記
@babie: アニメでセルの前後は z-index って言わないんだな。「プライオリティ」って言うんだな。
2011-11-08 00:04:13 via web
@babie: アニメのDVD/BD修正に使っている Issue Tracking System が知りたい。
2011-11-07 23:58:33 via web
@babie: 頭痛いけど、今日は BigBangCommit がある……
2011-11-07 23:04:30 via web
@babie: 最近、デューダの CM 見ないので、DODA がドーダに読めてしまう。
2011-11-07 22:55:45 via web
@babie: ぼく、iPhone 4S 持っているんですけど、ほとんど電話の用をなしてないので、i 4S ですね。スマートフォンじゃなくて、スマートですね。
2011-11-07 22:52:07 via web
@babie: 【定期】アヘ顔じゃありません白目です
@babie: かっけー技術だな、おい。スパイが使いそう。QT Engadget Japanese - スマートフォンの文字入力を60m先のカメラで盗む iSpy URL
2011-11-07 19:06:27 via web
@babie: 茸、禿、庭。携帯電話キャリアの呼び方、揃いも揃ってヒドイ。
2011-11-07 18:47:53 via web
@babie: ウェブから自分を自分のリストに追加する方法がわかんない。TweetDeck で追加した。
2011-11-07 18:45:50 via web
@babie: よっと。
@babie: やっぱ、ペルソナを導入しよう。
2011-11-07 18:41:47 via web
@babie: 頭痛。
2011-11-07 16:56:10 via web
@babie: はてなブログ試してみようと思ったら招待制だった。
2011-11-07 16:45:25 via web
@babie: ←咳をしてもぼっち
2011-11-07 15:12:12 via web
@babie: ←働いても無職
2011-11-07 15:10:07 via web
@babie: 今日マクドで食事してたら、隣のテーブルで女子高生が Android 食べてた。
2011-11-07 15:09:35 via web
@babie: はらいてえ。
2011-11-07 14:46:24 via web
@babie: 【定期】僕のツイートは路上でこんなアイコンの目をした人がぶつぶつ言いながら歩いている様を想像しながら読んでください
@babie: Ginger Wildheart: The Triple Album Project update: Exclusive Video - Ask Jon! URL @PledgeMusic #gingerwildheart #PMUpdates
2011年11月06日の日記
@babie: rvm upgrade 1.9.2-p180 1.9.2-p290
@babie: Persona クラスを作ろうか作るまいか。ふむん……
@babie: ペルのソナタ
@babie: 【定期】アヘ顔じゃありません白目です
@babie: Ginger Wildheart: The Triple Album Project update: Professional Musicians - Exclusive Video - November 5th 2011 URL
@babie: 悪人見たいけど時間ねーなー
@babie: ずっとペルソナについて考えている。
@babie: Rails の assets に images/stylesheets/javascripts 以外のファイルも置きたい。具体的には、EJS のテンプレートを置いて ?:timestamp 付き *_path, *_url が欲しい。
@babie: ペルソナどうしようかなー
@babie: autotest は ZenTest への依存をやめた autotest-standalone というのがメンテされてるようなのだが、日本語が文字化けするので古い autotest 使ってる。
@babie: 英語でも長文ハッシュタグってあるんかな? #I_cant_speak_English
@babie: エモが俺の知らない間に通りすぎていった。俺はこの10年それどころではなかったのだ。
@babie: @CandyApple_Core SocialAnalytics とか SiteCatalyst とかいっぱいあるんだね。高そう。
@babie: google analytics のリアルタイム分析面白いな。
@babie: 【定期】僕のツイートは路上でこんなアイコンの目をした人がぶつぶつ言いながら歩いている様を想像しながら読んでください