Watson's Blog

設定情報の管理に Pit を使ってみた

| Comments

先日、Pixate のライセンスを購入してみました。kickstarter でデモ動画がアップされたときには、「これだ!」とか意味不明に感動した覚えがあります。

Pixate からユーザ名やライセンスキーがメールで送られてきたのですが、これをプロジェクトを作成するたびに記述するのが面倒、というか GitHub にアップロードしたら悲惨なことになりそうなので、どうにか設定部分を分離したいなと。

自前で、yaml ファイルなどに設定情報を分離して、それを読み込むのもプロジェクトを作るたびごとだと面倒ですね。

ということで、pit というものを使ってみました。

1
$ gem install pit

とターミナルでコマンドを実行して pit をインストールします。

使い方は アカウント情報を管理するコマンド pit を見ていただければ良いかと思います。

RubyMotion の Rakefile で、次のような感じで設定情報を読み込みます。

1
2
3
4
5
6
7
require 'pit'

config = Pit.get("Pixate", :require => {
  "user"      => "username in Pixate",
  "key"       => "keycode in Pixate",
  "framework" => "Pixate framework path"
})

初回の rake 実行時に vi ($EDITOR で設定されているエディタ) が起動するので、ユーザ名など記入し保存します。

1
2
3
4
---
user: username in Pixate
key: keycode in Pixate
framework: Pixate framework path

framework を毎回 vendor ディレクトリにコピーしたりするのも面倒なので、適当な場所に配置してそれを直接使うようにしました。

あとは、下のように読み込んだ設定情報を利用するだけ。

1
2
3
4
5
6
Motion::Project::App.setup do |app|
  # Use `rake config' to see complete project settings.
  app.pixate.user      = config['user']
  app.pixate.key       = config['key']
  app.pixate.framework = File.expand_path(config['framework'])
end

pit を使うと設定情報が ~/.pit に保存されるので git でプロジェクトを管理するときなど都合が良さそうな感じです。

Comments