最初だけ
bundle install --path .bundle/gems --jobs=4
# install mailcatcher gem
gem install mailcatcher
# boot mailcatcher server, then goto localhost:1080
mailcatcher
git pull upstream master
した後毎回
Gemを更新してDBをリセット
bundle install
bundle exec rake db:dev
mailing listを実行
git clone https://github.com/hokui/mailing_list
cd mailing_list
bundle install --path .bundle/gems --jobs=4
cp config/application.example.yml config/application.yml
bundle exec rake db:migrate
bundle exec rails s -p 3001
NOTE: Need to install Gulp
globally or run Gulp
with npm run gulp ...
.
public/
に、client/
以降の構造を保って展開する。
dist/
に展開する。
index.jade
以外のマークアップはすべてテンプレートとして$templateChache
を使ってJSに埋め込み、他と併せて結合/圧縮して一つのファイルで出力。CSSも同様。
index.htmlを「pathに.を含まない」を条件にして返しているのと、trailing slash周りが怪しいので開発サーバー側で取り除くようにしている点で、若干Nginxと挙動がことなります。
タスク
gulp
... ビルドして、バックエンドでRails
サーバー(daemonized)と、開発サーバー(http://localhost:9000
)を起動し、ファイルの監視/Livereloadをするgulp watch
... 上記のRails
サーバーを起動しない版gulp serve
... 上記さらにファイル監視を行わない版gulp build
... ビルドのみgulp e2e
...http://localhost:9000
に対してE2Eテストを実行するgulp run-e2e
... ビルド、DB初期化、Rails
サーバー/開発サーバーの起動後、E2Eテストを実行する。gulp rails
... バックエンドでRails
サーバー起動gulp rails:stop
... バックエンドで起動したRails
サーバーを停止gulp rails:setup
...bundle exec rake db:dev
のエイリアス
オプション
--prod
... プロダクションビルドになる--nosound
... エラーを起こしてもうるさくない--skipmin
... プロダクションビルドでJSとCSSは結合のみ行い、圧縮しない--seed
... ログインとユーザー登録のときに初期値を入力した状態になる。E2Eテスト時は付けない。
npm test
...client/core/**/*.coffee
を対象にユニットテストするnpm start
...npm install && bower install && gulp --seed --nosound
が実行される。
- Place the project or its symbolic link to
/var/www/hokui.net
- Boot Rails Server:
bundle exec rails s -e production
- Build client codes:
gulp build --prod
- Then, boot Nginx:
sudo nginx -c /var/www/hokui.net/nginx/nginx.conf
ornpm run nginx