概要
Firefox OS のアプリ作成時に便利なバリデータを Mozilla さんが公開されています。
HostedアプリをURL指定で、Packagedアプリをzipファイルをアップロードすることでチェックしてくれます。
このバリデーターをローカル環境にインストールして実行できるようにします。
環境
- Mac OSX 10.7.5
インストール手順
github に app-validator のインストール方法が記載されていますのでこちらに沿って実行していきます。
python をインストール
app-validator は python で動いていますので、まずpythonをインストールします。
ここでは brew を使用してpythonをインストールしています。
$ brew update
$ brew upgrade
$ brew install python
余談
Mac OS 10.9 (Mavericks)にアップグレードしてからbrewでエラーが出るようになってしまってましたが
下記のコマンドでエラーを回避できるようになりました。
brew update でのエラーを修正
$ cd /usr/local
$ git fetch origin
$ git reset —hard origin/master
swig をインストール
swig を brew でインストールします。(swig がないとインストールでエラーとなりました)
$ brew install swig
Firefox OS App Validator をインストール
githubからソースコードをcloneします。
ここでは
/git
ディレクトリにてgit clone
を実行しています。
$ cd /git
$ git clone git://github.com/mozilla/app-validator.git
pipを使ってパッケージをインストールします。
$ pip install git+git://github.com/ametaireau/M2Crypto.git
app-validatorの依存パッケージをpipを使ってインストールします。
$ cd /git/app-validator/
$ sudo pip install -r requirements.txt
python で app-validator を実行できるようになりました。
$ cd /git/app-validator/
$ python app-validator
インストールします。
$ cd /git/app-validator/
$ sudo python setup.py install
app-validator のインストールが成功し、実行できるようになりました。
$ app-validator --help
helpの実行結果
usage: app-validator [-h] [-o {text,json}] [-v] [--boring] [--unlisted]
[--timeout TIMEOUT] [--acorn]
package
Run tests on a web app.
positional arguments:
package The path of the package you're testing
optional arguments:
-h, --help show this help message and exit
-o {text,json}, --output {text,json}
The output format that you expect
-v, --verbose If the output format supports it, makes the analysis
summary include extra info.
--boring Activating this flag will remove color support from
the terminal.
--unlisted Indicates that the app will not be listed on the
Firefox Marketplace.
--timeout TIMEOUT The amount of time before validation is terminated
with a timeout exception.
--acorn Uses Acorn instead of Spidermonkey for JS parsing.
Requirees Node and Acorn.
引数にわたす packaged アプリはディレクトリ指定ができず zip 圧縮されている必要があるようです。