MobileFirst CLI を使用した MobileFirst 成果物の管理
improve this page | report issue概説
IBM Mobile Foundation には、クライアント成果物およびサーバー成果物を簡単に管理するための、開発者向けのコマンド・ライン・インターフェース (CLI) ツール mfpdev が用意されています。
この CLI を使用して、MobileFirst Cordova プラグインを使用した Cordova ベースのアプリケーション、および MobileFirst ネイティブ SDK を使用したネイティブ・アプリケーションを管理できます。
ローカルまたはリモートの MobileFirst Server インスタンスに対するアダプターを作成、登録、管理し、コマンド・ラインから、あるいは REST サービス経由で、あるいは MobileFirst Operations Console から、プロジェクトを管理することもできます。
mfpdev コマンドには、対話モードと直接モードの 2 つのモードがあります。 対話モードでは、オプションを指定せずにコマンドを入力すると、応答を求めるプロンプトが出されます。 直接モードでは、オプションも含めて完全なコマンドを入力します。プロンプトは出されません。 該当する場合、プロンプトは、アプリケーションのターゲット・プラットフォーム (コマンドを実行したディレクトリーによって判別される) のコンテキストに依存したものになります。 キーボードの上下矢印キーを使用して選択項目間を移動し、目的の選択項目が強調表示され、その前に「>」という 文字が表示されたら、Enter キーを押します。
このチュートリアルでは、mfpdev
コマンド・ライン・インターフェース (CLI) のインストール方法と、この CLI を使用して MobileFirst Server のインスタンス、アプリケーション、およびアダプターを管理する方法について学習します。
Cordova アプリケーションおよびネイティブ・アプリケーションとの SDK の統合について詳しくは、Mobile Foundation SDK の追加カテゴリーのチュートリアルを参照してください。
ジャンプ先
- 前提条件
- MobileFirst CLI のインストール
- CLI コマンドのリスト
- 対話モードと直接モード
- MobileFirst Server インスタンスの管理
- アプリケーションの管理
- アダプターの管理とテスト
- 役立つコマンド
- コマンド・ライン・インターフェースの更新とアンインストール
前提条件
MobileFirst CLI は、NPM パッケージとして NPM レジストリーで入手できます。
NPM パッケージをインストールするため、開発環境に node.js と npm がインストールされていることを確認します。
nodejs.org のインストール手順に従って、node.js をインストールします。
node.js が正しくインストールされていることを確認するには、コマンド node -v
を実行します。
node -v
v6.11.1
注: サポートされている node.js の最小バージョンは 4.2.3 です。 また、急速に進化している node と npm のパッケージでは、MobileFirst CLI は、最新バージョンも含めて、node と npm の一部の利用可能なバージョンで完全には機能しない可能性があります。
iFix バージョン 8.0.2018040312 までの MobileFirst CLI バージョンでは、CLI が適切に機能するように、node がバージョン 6.11.1 であり、npm のバージョンが 3.10.10 であるようにしてください。
MobileFirst CLI iFix バージョン 8.0.2018100112 以降では、Node バージョン 8.x または 10.x を使用できます。
MobileFirst CLI のインストール
コマンド・ライン・インターフェースをインストールするには、次のコマンドを実行します。
npm install -g mfpdev-cli --no-optional
CLI の .zip ファイルを MobileFirst Operations Console のダウンロード・センターからダウンロードした場合は、次のコマンドを使用します。
npm install -g <path-to-mfpdev-cli.tgz>
- オプションの従属関係を含めずに CLI をインストールするには、
--no-optional
フラグを追加して、次のようにします。npm install -g --no-optional path-to-mfpdev-cli.tgz
インストールを確認するには、引数を付けずに mfpdev
コマンドを実行します。次のようなヘルプ・テキストが表示されます。
NAME
IBM MobileFirst Foundation Command Line Interface (CLI).
SYNOPSIS
mfpdev <command> [options]
DESCRIPTION
The IBM MobileFirst Foundation Command Line Interface (CLI) is a command-line
for developing MobileFirst applications. The command-line can be used by itself, or in conjunction
with the IBM MobileFirst Foundation Operations Console. Some functions are available from
the command-line only and not the console.
For more information and a step-by-step example of using the CLI, see the IBM Knowledge Center for
your version of IBM MobileFirst Foundation at
https://www.ibm.com/support/knowledgecenter.
...
...
...
CLI コマンドのリスト
コマンド接頭部 | コマンド・アクション | 説明 |
---|---|---|
mfpdev app |
register | アプリケーションを MobileFirst Server に登録します。 |
config | アプリケーションで使用するバックエンド・サーバーおよびランタイムを指定できます。 さらに、Cordova アプリケーションの場合、システム・メッセージのデフォルト言語やチェックサム・セキュリティー検査を実行するかどうかなどのさまざまな側面も構成できます。 Cordova アプリケーションでは、その他の構成パラメーターが含まれます。 | |
pull | サーバーから既存のアプリケーション構成を取得します。 | |
push | アプリケーションの構成をサーバーに送信します。 | |
preview | ターゲット・プラットフォーム・タイプの実際のデバイスがなくても Cordova アプリケーションをプレビューできるようにします。 Mobile Browser Simulatorか Web ブラウザーのいずれかでプレビューを表示できます。 | |
webupdate | www ディレクトリーに入っているアプリケーション・リソースを、ダイレクト・アップデート・プロセスで使用できる .zip ファイルにパッケージします。 | |
mfpdev server | info | MobileFirst Server に関する情報を表示します。 |
add | 新規サーバー定義を環境に追加します。 | |
edit | サーバー定義を編集できるようにします。 | |
remove | サーバー定義を環境から削除します。 | |
console | MobileFirst Operations Console を開きます。 | |
clean | アプリケーションを登録抹消し、アダプターを MobileFirst Server から削除します。 | |
mfpdev adapter | create | アダプターを作成します。 |
build | アダプターをビルドします。 | |
build all | 現行ディレクトリーおよびそのサブディレクトリー内にあるすべてのアダプターを検出してビルドします。 | |
deploy | アダプターを MobileFirst Server にデプロイします。 | |
deploy all | 現行ディレクトリーおよびそのサブディレクトリー内にあるすべてのアダプターを検出して、MobileFirst Server にそれらをデプロイします。 | |
call | MobileFirst Server でアダプターのプロシージャーを呼び出します。 | |
pull | サーバーから既存のアダプター構成を取得します。 | |
push | アダプターの構成をサーバーに送信します。 | |
mfpdev | config | mfpdev コマンド・ライン・インターフェースのプレビュー・ブラウザー・タイプ、プレビュー・タイムアウト値、およびサーバー・タイムアウト値の構成設定を指定します。 |
info | オペレーティング・システム、メモリー使用量、ノード・バージョン、コマンド・ライン・インターフェースのバージョンなど、環境に関する情報を表示します。 現行ディレクトリーが Cordova アプリケーションである場合、Cordova cordova info コマンドで提供される情報も表示されます。 | |
-v | 現在使用されている MobileFirst CLI のバージョン番号を表示します。 | |
-d, –debug | デバッグ・モード: デバッグ出力を生成します。 | |
-dd, –ddebug | 冗長デバッグ・モード: 冗長デバッグ出力を生成します。 | |
-no-color | コマンド出力でのカラーの使用を抑止します。 | |
mfpdev help | コマンドの名前 | MobileFirst CLI (mfpdev) コマンドのヘルプを表示します。 引数を指定した場合、各コマンド・タイプまたはコマンドに関するより具体的なヘルプ・テキストを表示します。 例: 「mfpdev help server add」 |
対話モードと直接モード
すべてのコマンドは、対話モードまたは直接モードで実行できます。。 対話モードでは、そのコマンドに必要なパラメーターの入力を求めるプロンプトが出され、いくつかのデフォルト値が使用されます。 直接モードでは、実行するコマンドと一緒にパラメーターを指定する必要があります。
例:
対話モードでの mfpdev server add
:
? Enter the name of the new server definition: mydevserver
? Enter the fully qualified URL of this server: http://mydevserver.example.com:9080
? Enter the MobileFirst Server administrator login ID: admin
? Enter the MobileFirst Server administrator password: *****
? Save the admin password for this server?: Yes
? Enter the context root of the MobileFirst administration services: mfpadmin
? Enter the MobileFirst Server connection timeout in seconds: 30
Verifying server configuration...
The following runtimes are currently installed on this server: mfp
Server profile 'mydevserver' added successfully.
同じコマンドが直接モードでは次のようになります。
mfpdev server add mydevserver --url http://mydevserver.example.com:9080 --login admin --password admin --setdefault
直接モードでのコマンドの正しい構文を見るには、mfpdev help<command>
を使用します。
MobileFirst Server インスタンスの管理
mfpdev server <option>
コマンドを使用すると、現在使用中の MobileFirst Server インスタンスを管理できます。 常に、少なくとも 1 つのサーバー・インスタンスがデフォルト・インスタンスとしてリストされている必要があります。 別のサーバーが指定されなかった場合は、常にデフォルト・サーバーが使用されます。
サーバー・インスタンスのリスト
使用可能なすべての MobileFirst Server インスタンスをリストするには、次のコマンドを実行します。
mfpdev server info
デフォルトでは、CLI によってローカル・サーバー・プロファイルが自動的に作成され、現行のデフォルトとして使用されます。
新規サーバー・インスタンスの追加
ローカルまたはリモートの MobileFirst Server インスタンスをさらに使用する場合、次のコマンドを使用して、使用可能なインスタンスのリストに、そのインスタンスを追加できます。
mfpdev server add
対話式プロンプトに従って、サーバーの名前、サーバー URL、およびユーザー/パスワード資格情報を指定します。
例えば、Mobile Foundation IBM Cloud サービス上で稼働している MobileFirst Server を追加するには、次のようにします。
$ mfpdev server add
? Enter the name of the new server profile: MyBluemixServer
? Enter the fully qualified URL of this server: https://mobilefoundation-7abcd-server.mybluemix.net:443
? Enter the MobileFirst Server administrator login ID: admin
? Enter the MobileFirst Server administrator password: *****
? Save the administrator password for this server?: Yes
? Enter the context root of the MobileFirst administration services: mfpadmin
? Enter the MobileFirst Server connection timeout in seconds: 30
? Make this server the default?: Yes
Verifying server configuration...
The following runtimes are currently installed on this server: mfp
Server profile 'MyBluemixServer' added successfully.
- 「fully qualified URL of this server」は、使用するサーバーの URL に置き換えてください。
サーバー・インスタンスの編集
登録済みのサーバー・インスタンスの詳細を編集する必要がある場合は、次のコマンドを実行し、対話式プロンプトに従って、編集するサーバーを選択し、どういった情報に更新するのかを指定します。
mfpdev server edit
デフォルトのサーバーを設定するには、次のコマンドを使用します。
mfpdev server edit <server_name> --setdefault
サーバー・インスタンスの削除
登録済みサーバーのリストからサーバー・インスタンスを削除するには、次のコマンドを実行します。
mfpdev server remove
その後、対話式リストから目的のサーバーを選択します。
MobileFirst Operations Console を開く
登録済みデフォルト・サーバーのコンソールを開くには、次のコマンドを実行します。
mfpdev server console
別のサーバーのコンソールを開くには、次のように、コマンドのパラメーターとしてサーバー名を指定します。
mfpdev server console <server_name>
サーバーからのアプリケーションとアダプターの削除
サーバーに登録済みのアプリケーションとアダプターをすべて削除するには、次のコマンドを実行します。
mfpdev server clean
その後、対話式プロンプトから、クリーンアップするサーバーを選択します。
これで、そのサーバー・インスタンスは、どんなアプリケーションもアダプターもデプロイされていない、クリーンな状態になります。
アプリケーションの管理
コマンド mfpdev app <option>
を使用すると、Mobile Foundation SDK を使用して作成されたアプリケーションの管理を行うことができます。
サーバー・インスタンスへのアプリケーションの登録
実行の準備の整ったアプリケーションは、MobileFirst Server に登録する必要があります。
アプリケーションを登録するには、そのアプリケーション・プロジェクトのルート・フォルダーから次のコマンドを実行します。
mfpdev app register
このコマンドは、Cordova アプリケーション、Android アプリケーション、iOS アプリケーション、または Windows アプリケーションのルートから実行できます。
このコマンドは、デフォルトのサーバーとランタイムを使用して次のタスクを実行します。
- アプリケーションをサーバーに登録する。
- アプリケーション用のデフォルトのクライアント・プロパティー・ファイルを生成する。
- サーバー情報をこのクライアント・プロパティー・ファイルに含める。
Cordova アプリケーションの場合は、このコマンドにより config.xml ファイルが更新されます。
iOS アプリケーションの場合は、このコマンドにより mfpclient.plist ファイルが更新されます。
Android アプリケーションまたは Windows アプリケーションの場合は、このコマンドにより mfpclient.properties ファイルが更新されます。
デフォルトではないサーバーおよびランタイムにアプリケーションを登録するには、次の構文を使用します。
mfpdev app register <server> <runtime>
Cordova Windows プラットフォームの場合は、-w<platform>
引数をコマンドに追加する必要があります。 <platform>
引数は、登録する Windows プラットフォームのコンマ区切りリストです。 有効値は、windows
、windows8
、および windowsphone8
です。
mfpdev app register -w windows8
アプリケーションの構成
アプリケーションが登録されると、その構成ファイルにサーバー関連の属性が追加されます。
これらの属性の値を変更するには、次のコマンドを実行します。
mfpdev app config
このコマンドを実行すると、変更できる属性のリストが対話式に提示され、当該属性の新規値を求めるプロンプトが出されます。
使用可能な属性は、各プラットフォーム (iOS、Android、Windows) ごとに異なります。
使用可能な構成は次のとおりです。
-
アプリケーションの登録先となるサーバー・アドレスおよびサーバー・ランタイム
ユース・ケース例: アプリケーションを、ある特定のアドレスの MobileFirst Server に登録するが、そのアプリケーションが別のサーバー・アドレス (例えば DataPower アプライアンス) に接続するようにもするには、次のようにします。
mfpdev app register
を実行して、アプリケーションを目的の MobileFirst Server アドレスに登録します。mfpdev app config
を実行し、server プロパティーの値を、DataPower アプライアンスのアドレスと一致するように変更します。 また、このコマンドを直接モードで、次のように実行することもできます:mfpdev app config server http(s)://server-ip-or-host:port
- ダイレクト・アップデートの認証性フィーチャー用の公開鍵の設定
- アプリケーションのデフォルト言語の設定 (デフォルトは英語 (en))
- Web リソース・チェックサム・テストを有効にするかどうか
- Web リソース・チェックサム・テストで無視するファイル拡張子
Web リソース・チェックサムの設定については、使用可能なターゲット・プラットフォーム (Android、iOS、Windows 8、Windows Phone 8、Windows 10 UWP) ごとに、mfpdev 直接モードで使用するためのプラットフォーム固有の鍵があります。 これらの鍵は、プラットフォーム名を表すストリングで始まります。 例えば、windows10_security_test_web_resources_checksum
は、Windows10 UWP で Web リソース・チェックサム・テストを有効にするかどうかを指定する true/false 設定です。
設定 | 説明 |
direct_update_authenticity_public_key |
ダイレクト・アップデート認証の公開鍵を指定します。 鍵は Base64 形式でなければなりません。 |
ios_security_test_web_resources_checksum |
true に設定した場合、iOS Cordova アプリケーションに対する Web リソース・チェックサムのテストが有効になります。 デフォルトは false です。 |
android_security_test_web_resources_checksum |
true に設定した場合、Android Cordova アプリケーションに対する Web リソース・チェックサムのテストが有効になります。 デフォルトは false です。 |
windows10_security_test_web_resources_checksum |
true に設定した場合、Windows 10 UWP Cordova アプリケーションに対する Web リソース・チェックサムのテストが有効になります。 デフォルトは false です。 |
windows8_security_test_web_resources_checksum |
true に設定した場合、Windows 8.1 Cordova アプリケーションに対する Web リソース・チェックサムのテストが有効になります。 デフォルトは false です。 |
windowsphone8_security_test_web_resources_checksum |
true に設定した場合、Windows Phone 8.1 Cordova アプリケーションに対する Web リソース・チェックサムのテストが有効になります。 デフォルトは false です。 |
ios_security_ignore_file_extensions |
iOS Cordova アプリケーションに対する Web リソース・チェックサム・テスト時に無視するファイル拡張子を指定します。 複数の拡張子はコンマで区切って指定します。 例えば、jpg,gif,pdf などです。 |
android_security_ignore_file_extensions |
Android Cordova アプリケーションに対する Web リソース・チェックサム・テスト時に無視するファイル拡張子を指定します。 複数の拡張子はコンマで区切って指定します。 例えば、jpg,gif,pdf などです。 |
windows10_security_ignore_file_extensions |
Windows 10 UWP Cordova アプリケーションに対する Web リソース・チェックサム・テスト時に無視するファイル拡張子を指定します。 複数の拡張子はコンマで区切って指定します。 例えば、jpg,gif,pdf などです。 |
windows8_security_ignore_file_extensions |
Windows 8.1 Cordova アプリケーションに対する Web リソース・チェックサム・テスト時に無視するファイル拡張子を指定します。 複数の拡張子はコンマで区切って指定します。 例えば、jpg,gif,pdf などです。 |
windowsphone8_security_ignore_file_extensions |
Windows Phone 8.1 Cordova アプリケーションに対する Web リソース・チェックサム・テスト時に無視するファイル拡張子を指定します。 複数の拡張子はコンマで区切って指定します。 例えば、jpg,gif,pdf などです。 |
セクションを閉じる
Cordova アプリケーションのプレビュー
ブラウザーを使用して Cordova アプリケーションの Web リソースをプレビューすることができます。 アプリケーションをプレビューすることで、ネイティブ・プラットフォーム固有のエミュレーターやシミュレーターを使用することなく、迅速な開発が可能になります。
プレビュー・コマンドを実行する前に、wlInitOptions
変数を追加することによってそのプロジェクトを準備する必要があります。 以下のステップを実行します。
-
wlInitOptions 変数を、メインの JavaScript ファイル (標準 Cordova アプリケーション内の index.js) に追加します。
var wlInitOptions = { mfpContextRoot:'/mfp', // "mfp" is the default context root of MobileFirst Server applicationId:'com.sample.app' // Replace with your own value. };
-
次のコマンドを使用して、アプリケーションを再度登録します。
mfpdev app register
-
以下のコマンドを実行します。
cordova prepare
-
次のコマンドを Cordova アプリケーションのルート・フォルダーから実行することで、Cordova アプリケーションをプレビューします。
mfpdev app preview
どのプラットフォームをプレビューし、どのタイプのプレビューを使用するかを選択するためのプロンプトが出されます。 プレビューのオプションには、MBS とブラウザーの 2 つがあります。
- MBS: Mobile Browser Simulator。 この方式は、ブラウザーでモバイル・デバイスをシミュレートするだけでなく、カメラ、ファイルのアップロード、地理位置情報など、基本的な Cordova API のシミュレーションも提供します。 注: MBS オプションでは Cordova Browser は使用できません。
- ブラウザー: Simple Browser レンダリング。 この方式は、Cordova アプリケーションの www リソースを、通常のブラウザーの Web ページとして表現します。
プレビュー・オプションについて詳しくは、Cordova 開発のチュートリアルを参照してください。
ダイレクト・アップデートでの Web リソースの更新
モバイル・デバイスでアプリケーションを再インストールしなくても、Cordova アプリケーションの Web リソース (www フォルダー内にある .html ファイル、.css ファイル、.js ファイルなど) を更新できます。 これは、Mobile Foundation によって提供されるダイレクト・アップデート・フィーチャーによって可能になります。
ダイレクト・アップデートがどのように機能するかについて詳しくは、チュートリアルCordova アプリケーションでのダイレクト・アップデートの使用を参照してください。
更新対象の Web リソースの新規セットを Cordova アプリケーションに送信するには、次のコマンドを実行します。
mfpdev app webupdate
このコマンドにより、更新された Web リソースが .zip ファイルにパッケージ化され、登録済みのデフォルトの MobileFirst Server にアップロードされます。 パッケージ化された Web リソースは、[cordova-project-root-folder]/mobilefirst/ フォルダー内にあります。
Web リソースを別のサーバー・インスタンスにアップロードするには、コマンドの一部としてサーバー名とランタイムを指定します。
mfpdev app webupdate <server_name> <runtime>
–build パラメーターを使用すると、パッケージ化された Web リソースが含まれた .zip ファイルを、サーバーにアップロードすることなく生成できます。
mfpdev app webupdate --build
以前にビルド済みのパッケージをアップロードするには、–file パラメーターを使用します。
mfpdev app webupdate --file mobilefirst/com.ibm.test-android-1.0.0.zip
さらに、コマンドを使用してリソースを暗号化できます
mfpdev app webencrypt
このコマンドは、モバイル・デバイスにデプロイするために、プラットフォームの wwww ディレクトリーの内容の暗号化されたバージョンを作成することを指定します。iOS プラットフォームと Android プラットフォームにのみ使用可能です。
MobileFirst アプリケーション構成のプルおよびプッシュ
MobileFirst アプリケーションを MobileFirst Server に登録したら、MobileFirst Server Console を使用してアプリケーション構成の一部を変更し、それらの構成を、次のコマンドでサーバーからアプリケーションにプルすることができます。
mfpdev app pull
また、アプリケーション構成をローカルに変更して、次のコマンドで変更を MobileFirst Server にプッシュすることもできます。
mfpdev app push
例: MobileFirst Operations Console でセキュリティー検査へのスコープ・マッピングを実行した後、上記のコマンドを使用してサーバーからプルすることができます。 ダウンロードした .zip ファイルは、プロジェクトの [root directory]/mobilefirst フォルダーに保管されるので、後でこれを mfpdev app push
コマンドを使用して別の MobileFirst Server にアップロードすることができます。このように、事前に定義済みの構成を再利用することで、迅速な構成とセットアップが可能になります。
アダプターの管理とテスト
コマンド mfpdev adapter <option>
を使用してアダプターを管理できます。
アダプターについて詳しくは、アダプター・カテゴリーのチュートリアルを参照してください。
アダプターの作成
新規アダプターを作成するには、次のコマンドを使用します。
mfpdev adapter create
次に、プロンプトに従って、アダプターの名前、タイプ、およびグループ ID を指定します。
アダプターのビルド
アダプターをビルドするには、アダプターのルート・フォルダーから以下のコマンドを実行します。
mfpdev adapter build
これにより、**
アダプターのデプロイ
次のコマンドを実行すると、デフォルト・サーバーにアダプターがデプロイされます。
mfpdev adapter deploy
別のサーバーにデプロイするには、次のコマンドを使用します。
mfpdev adapter deploy <server_name>
コマンド・ラインからのアダプターの呼び出し
アダプターをデプロイしたら、次のコマンドを使用して、アダプターをコマンド・ラインから呼び出してその動作をテストすることができます。
mfpdev adapter call
使用するアダプター、プロシージャー、およびパラメーターを指定するよう求めるプロンプトが出されます。 コマンドの実行結果として、アダプター・プロシージャーの応答が出力されます。
詳しくは、アダプターのテストおよびデバッグに関するチュートリアルを参照してください。
役立つコマンド
デフォルトのブラウザーやデフォルトのプレビュー・モードなど、mfpdev CLI の環境を設定するには、次のコマンドを使用します。
mfpdev config
全 mfpdev コマンドが記述されたヘルプ・コンテンツを参照するには、次のコマンドを使用します。
mfpdev help
次のコマンドを実行すると、ご使用の環境に関する情報が含まれたリストが生成されます。
mfpdev info
mfpdev CLI のバージョンを出力するには、次のコマンドを使用します。
mfpdev -v
コマンド・ライン・インターフェースの更新とアンインストール
コマンド・ライン・インターフェースを更新するには、次のコマンドを実行します。
npm update -g mfpdev-cli
コマンド・ライン・インターフェースをアンインストールするには、次のコマンドを実行します。
npm uninstall -g mfpdev-cli
Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.