
HipChatに対応してるから楽。というよりPivotalのようにHipChatに対応してないのは少数派。CircleCIはHeroku Addonなら今のところprivate reposも無料なのでお得。
HipChatに対応してるから楽。というよりPivotalのようにHipChatに対応してないのは少数派。CircleCIはHeroku Addonなら今のところprivate reposも無料なのでお得。
https://www.pivotaltracker.com/projects/プロジェクトID/integrations
Pivotal側がちょっと分かり辛いんだけど、上記のようなURLにあるActivity Web Hookにroom_idとauth_token付きで登録する。(v5では動かないのでv3にする必要があるので注意。)
https://api.hipchat.com/v1/webhooks/pivotaltracker/?auth_token=トークン&room_id=ルームID
HipChatのPivotal Tracker Integrationを参照すればignoreなどもっと細かい設定ができることがわかる。
以前はコレだったけど、
puts "-----------------------------------"
puts @posts.inspect
puts "-----------------------------------"
今はputsしてPowのログを見る方式にした。(ログを見るのはtailかConsole.app)
# app/controller/home_controller.rb:
class HomeController < ApplicationController
def index
puts 'foo'
end
end
Powの標準出力と標準エラー出力はlogに向いてるのでただputsするだかけなのは楽だ。
アプリの一部では使うからjbuildrのgem入れてるけど基本的にscaffoldでjson使いたくない場合。
# config/application.rb:
module Rails
class Application < Rails::Application
config.generators do |g|
g.jbuilder false
end
end
end
指定したIPからの接続しか受け付けない(古いタイプの)システムと連携したい場合にHerokuだと困る。
ProximoというAddonは固定IP付きのproxyを提供してくれる。rest-clientとかで接続するときにproximoの提供するproxyを設定してリクエストすればOK
require "rest-client"
RestClient.proxy = ENV["PROXIMO_URL"]
res = RestClient.get("http://api.someservice.com/endpoint")
puts "status code", res.code
puts "headers", res.headers
これで固定IP + https + 証明書が必須なシステムとかとも連携できる。httpsの通信をhttp proxy経由で可能かな?とちょっと心配だったけどproxyは中身知らんぷりでそのまま転送するので大丈夫。
proximoはリクエスト数がPlan毎に決まってるので必要なリクエストでだけproxy経由して節約する。
$ curl -x http://proxy.com:8080 http://example.com
port指定しないとデフォルトでは1080番にアクセスしに行く。知らないとハマって死ぬ。
SSLの証明書とパスワード付きでアクセスする。cert.pemはprivate keyとclient certをconcatinateしたもの!これを知らない者は死ぬ!
$ curl -x http://proxy.com:8080 -E cert.pem:password http://example.com
% brew update
% brew upgrade ruby-build
% CONFIGURE_OPTS="--with-openssl-dir=`brew --prefix openssl` --with-readline-dir=`brew --prefix readline`" rbenv install 2.1.0
% rbenv global 2.1.0
% gem install bundler rbenv-rehash
% rbenv rehash
バージョンのパッチレベル表記がシンプルになったのは気持ちいいですね。
サーバー台よりS3+CloudFront代の方が高いという自体になっているので、どーせAppサーバー1台だから怖話の画像ファイルをそのままストレージにおいてみた。
capistranoでおなじみの安心構成なのでS3のファイルをscpするだけで完了。
stop and bootするぐらいでは別のストレージになってるなどはなかったけど、柔軟に構成を変えられるのが売りだとおもうのでそういう場合に「あれ、あの画像どこいった?」とならないように注意が必要。
しかし、EYC外のアプリを1台インスタンスにポコっと持ってきてもとりあえず動くのでそこからS3化考えるってのも入り方としては良さそうに思いました。
元から入ってるrubyが最新版ですがsudoとかで壊すとやっかいなので。
% brew install readline openssl
% CONFIGURE_OPTS="--with-readline-dir=`brew --prefix readline` --with-openssl-dir=`brew --prefix openssl` --with-gcc=clang" rbenv install 2.0.0-p247
% rbenv global 2.0.0-p247
% rbenv rehash
% gem install bundler rbenv-rehash
会社(FJORD, LLC)で怖話というサイトを2年やってきました。
僕らは2人の会社なので月に70万の利益があれば諸々の雑費を含めて運営していけると考えました。そして開始時に今度のサービスは2年はやろう。SEOは我慢だ。と思って2013年の9月に単月で70万の利益があったらプロジェクトは成功。達しなかったら失敗と定義付けてやってきました。
そしてその2013年の9月が来て結果は失敗となってしまいました。それについてはFJORDのブログに書きました。
ブログにも書きましたが感想はとにかくお金稼ぐの難しいなぁという感じです。
あとは、これは俺がアホだということもありますが、技術面のWebサービスのマネタイズやプロモーションに及ぼす影響の余りの無さにびっくりしました。
Webサービスで技術が優れているというのは、下記のような影響を与えます。
まだまだ怖話程度の規模では関係無いものばかりです。
僕がエンジニア方面の動きを頑張ってもあまり意味が無いのがしんどいですね。
いろいろな背景の人に教えを請いに出かけてみようかなと思います。