アプリ
ObjectOS Cloud の環境にアプリをインストールし、更新を確認し、環境のアプリを組織向けのパッケージとして公開し、ローカルでビルドしたアプリを os CLI からデプロイします。
アプリが ObjectOS Cloud の環境に届く方法は 3 つあります。マーケットプレイスまたは組織のレジストリからインストールする、環境の中で(AI Builder を使うか手作業で)構築する、または自分のマシンから os CLI で公開する、のいずれかです。どの方法でも、インストールされるのはパッケージ、つまりオブジェクト、ビュー、フローなどをまとめたバージョン付きのバンドルです。
アプリをインストールする
クラウドコンソールで環境の Settings → Apps を開き、Install an app(Install Application)を選びます。アプリを選んでから、次を設定します。
- Include sample data:パッケージのデモレコードで環境を埋め、すぐに試せるようにします。クリーンな本番環境ではチェックを外したままにします。
- Accept additional permissions:初回のインストールではチェックを外したままにします。これは、以前に付与された権限より多くの権限を求める更新のためのものです(更新を確認するを参照)。
アプリは再起動なしで、環境への次のリクエストから表示されます。インストール後のメッセージには、どのように反映されたか(インストール、再インストール、更新、ロールバックのいずれかと、そのバージョン)と、知っておくべきこと(アプリが使う機能のうちプランに含まれないものなど)が表示されます。
環境の中からインストールすることもできます。環境の Marketplace を開き、アプリを見つけて Install を選びます。どちらの方法でも、同じパッケージが同じ環境にインストールされます。マーケットプレイスを参照してください。
インストールは組織のオーナーと管理者が行います。
更新を確認する
Settings → Apps → Check for app updates は、インストール済みの各アプリを公開されている最新バージョンと比較し、更新があるか、すべてのアプリが最新か、まだ何もインストールされていないかを表示します。
アプリを更新するには、もう一度インストールします。すでにインストールされているアプリをインストールすると、その場で公開済みの最新バージョンに移行します。
新しいバージョンが、アプリに以前付与されていなかった権限を求める場合、更新は PERMISSION_RECONSENT_REQUIRED で拒否され、メッセージに追加される各権限が一覧表示されます。内容を確認してから、Accept additional permissions にチェックを入れてもう一度インストールし、権限を付与します。
環境をパッケージとして公開する
Settings → Apps → Publish as a package(Publish to Registry)は、この環境で構築したアプリを、組織のレジストリにあるパッケージの新しいバージョンとして公開します。そこから組織の他のどの環境にもインストールできます。開発環境で構築したアプリは、この方法で本番環境に届きます。
| フィールド | 意味 |
|---|---|
| App Name | レジストリに表示される名前。デフォルトは環境の名前です。 |
| Version | 1.2.0 のようなセマンティックバージョン。空欄のままにすると、最新バージョンの次のパッチとして公開されます。 |
| Visibility | Private:自分の組織だけがインストールできます。Organization:組織全体で共有されます。 |
| Description | アプリ全体として何をするか。 |
| Release notes | このバージョンでの変更点。バージョンとともに表示されます。 |
| Package ID(詳細設定) | 逆ドメイン形式の識別子。空欄の場合は環境の名前から導出されます。 |
公開マーケットプレイスへの掲載は、審査を伴う別の手順であり、ここでは提供されません。サイドバーの Advanced → Packages に、組織が公開したものがすべて一覧表示されます。
CLI からデプロイする
アプリをコードとして(自分のマシン上の ObjectStack プロジェクトとして)開発している場合、os CLI でそれを組織に公開し、環境にインストールできます。流れは ログイン → ビルド → 公開 → インストール です。
必要なものは、ObjectStack プロジェクト(Path B — os init を参照)、os CLI、そして環境を持つ ObjectOS Cloud アカウントです。
1. ログイン
os cloud loginこれはブラウザのサインインを開き、クラウドトークンを ~/.objectstack/cloud.json に保存します。サインインリンクを開く代わりに表示するには --no-browser を使います。CI ではログインを省略し、--token または OS_CLOUD_API_KEY 変数で os package publish に API キーを渡します。
クラウドログインは、ランタイムにサインインする os login とは別のものです。公開には常にクラウドログインが使われます。
2. ビルド
os buildこれはプロジェクトをひとつのアーティファクト dist/objectstack.json にコンパイルします。オブジェクト、ビュー、アプリ、ダッシュボード、フロー、サンプルデータが含まれます。後でアップロードされるのはこのアーティファクトだけで、ソースファイル、node_modules、ローカルの認証情報がアップロードされることはありません。
3. 公開
os package publishプロジェクトのルートで実行します。パッケージを組織に登録し(初回のみ。com.acme.crm のような逆ドメイン形式のパッケージ id をキーとします)、アーティファクトを新しい不変のバージョンとして公開します。同じバージョンを 2 回公開することはできません。manifest.version を上げるか、--version を渡します。
| フラグ | 目的 |
|---|---|
--manifest-id <id> | 逆ドメイン形式のパッケージ id。デフォルト:アーティファクトから導出 |
--version <semver> | 公開するバージョン。デフォルト:manifest.version |
--visibility <private|org|marketplace> | 誰が表示・インストールできるか。ObjectOS Cloud では新しいパッケージのデフォルトは org です。既存のパッケージの公開範囲を維持するにはフラグを省略します |
--install | 新しいバージョンをすぐに環境にインストールします |
--env <id> | --install の対象環境。デフォルト:os environments switch で選択した環境 |
--seed-sample-data | インストール時にアーティファクトのサンプルデータを含めます |
--note "<text>" | リリースノート |
--submit | marketplace パッケージの新しいバージョンを審査に提出します |
4. インストール
利用者は環境からインストールします。環境の Marketplace を開き、パッケージを見つけて Install を選ぶか、前述のクラウドコンソールの Install an app を使います。
既知の環境にデプロイするパイプラインは、ひとつのコマンドで公開とインストールを行えます。
os package publish --env <environment-id> --install --seed-sample-dataこれは全か無かです。インストールが拒否された場合(その環境にインストールできない、環境が存在しない、またはそのバージョンがその環境で承認されていない)、何も公開されません。コマンドは拒否内容を表示してゼロ以外で終了するため、パイプラインは失敗します。原因を修正し、同じバージョンをもう一度公開してください。
マーケットプレイスへの掲載
--visibility marketplace はパッケージを公開カタログの対象にしますが、新しいバージョンはそれぞれ下書きとして届きます。審査に送るには --submit を渡します。プライベートと組織のパッケージは審査が不要で、組織はすぐにインストールできます。
次へ
- パッケージ:パッケージに含まれるものと、バージョンの仕組み。
- マーケットプレイス:環境の中からの閲覧とインストール。
- CLI リファレンス:すべての
osコマンド。