「Cloud Foundry 百日行」第52日目は、Rails製GTDツールTracks です。
GTDは「Getting Things Done」の略で、タスク管理手法のひとつです。
TracksはGTDに特化している為、GTDを実践するのに適したWebアプリケーションです。
基本情報
-
その他参考情報
GTD専用WEBアプリ「Tracks」 lifehacker
手順の概要は以下の通りです。
- 1) ソースコードの取得
- 2) 事前準備
- 3) アプリの起動
- 4) 動作確認
1. ソースコードの取得
$ git clone https://github.com/TracksApp/tracks.git
$ cd tracks/
$ git checkout v2.3.0
$ ls
app config COPYING doc Gemfile lib mkdocs.yml Rakefile test
bin config.ru db features Gemfile.lock log public README.md vendor
2. 事前準備
2.1. 設定ファイル準備
$ cp config/site.yml.tmpl config/site.yml
2.2. Gemの追加
『pg』と『rails_12factor』を追記します。
$ vi Gemfile
gem 'pg'
gem 'rails_12factor'
追記内容を確認します。
$ git diff Gemfile
diff --git a/Gemfile b/Gemfile
index b9de2b7..482d03f 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,5 +1,8 @@
source 'https://rubygems.org'
+gem 'pg'
+gem 'rails_12factor'
+
gem 'rails', '~> 4.1.11'
gem 'sass-rails', '~> 4.0.3'
gem 'coffee-rails', '~> 4.0.1'
bundle installを実施しGemfile.lockに変更を反映させる。
$ ruby -v
ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]
$ bundle install --path vendor/bundle
pushの際のサイズを小さくする為、vendor/bunldleをpush対象外に設定します。
$ vi .cfignore
vendor/bundle
/.bundle
2.3. manifestファイルの準備
---
applications:
- memory: 256m
command: 'bundle exec rake db:migrate; bundle exec rackup --port=$PORT'
env:
RAILS_ENV: 'production'
BUNDLE_WITHOUT: 'development:test:selenium'
2.4. PostgreSQL Serviceの準備
$ cf push tracks --no-start
$ cf create-service PostgreSQL 'Basic PostgreSQL Plan' tracks-pgsql
$ cf bind-service tracks tracks-pgsql
3. アプリの起動
cf start tracks
:
Showing health and status for app tracks in org morika-t / space morika-t as morika-t...
OK
requested state: started
instances: 1/1
usage: 256M x 1 instances
urls: tracks.10.244.0.34.xip.io
last uploaded: Tue Aug 25 00:57:27 UTC 2015
stack: cflinuxfs2
buildpack: Ruby
state since cpu memory disk details
#0 running 2015-08-25 10:00:47 AM 0.0% 145.8M of 256M 0 of 1G
成功しました。
4. 動作確認
ブラウザからアプリにアクセスします。
動作確認のため、ログイン画面で以下の値を入力します。
フィールド | 値 |
---|---|
“Desired login” | 任意のユーザ名 |
“Choose password” | 任意のパスワード |
“Confirm password” | “Choose password”と同じ値 |
“Signup”をクリックするとログインします。
タスクのRSS化やiCal連携も行う事が可能です。
※ Adminのimport機能が動作しない場合は以下を実施します。
$ mkdir -p public/uploads/csv
$ cf push tracks
今回使用したソフトウェア
- cf-release (v211)
https://github.com/cloudfoundry/cf-release/tree/v211
( https://github.com/cloudfoundry/cf-release/tree/2121dc6405e0f036efa4dba963f7f49b07e76ffa ) - postgresql-cf-service-broker
https://github.com/cloudfoundry-community/postgresql-cf-service-broker/t ree/99861eef5d220721799a6fc5465a272347b1007a - bosh-lite
https://github.com/cloudfoundry/bosh-lite/tree/552dc6869600c5350eb7ffb4fb9c9c5e79e3889d - CF CLI (cf version 6.12.0-8c65bbd-2015-06-30T00:10:31+00:00)
https://github.com/cloudfoundry/cli/releases/tag/v6.12.0 - Tracks(v2.3.0)
https://github.com/TracksApp/tracks/tree/v2.3.0
投稿者:NTTソフトウェア株式会社 森川 健