Hexabase管理UI上で設定した、アプリケーションをCLIを使って開発環境から本番環境へ移行する方法を記載いたします。
注意事項
-本手順で移行可能な情報は、アプリケーション(Project)配下で設定された情報のみとなります。
- ワークスペース内の「グループ」、「ユーザー」に関する情報は移行されませんのでご注意ください。
- アクション設定の公開設定でグループを直接指定している場合、指定された公開グループの情報は復元されませんので、復元先ワークスペースで再度公開グループ設定を行う必要があります。
- データItemについては、移行前のユーザー情報が含まれることがありますので、移行前にCSVダウンロード等によりデータを保管した上で、Itemを削除してから開発環境のアプリケーションテンプレートを保存することを推奨いたします。移行先アプリケーションを復元した後、CSVアップデート機能によりデータをインポートしなおす必要がございます。
事前条件
- hexabase-cliのインストールが完了していること
- インストールしてない方は、以下を実行してください
$ npm install -g hexabase-cli
- Hexabase CLIの初期設定(contextsの設定)について、完了していること
- CLIの contexts:setコマンドを利用して、ログイン環境を設定します
- 開発環境にて、移行元のアプリケーションに対して「テンプレート保存」の機能を利用し、アプリケーションのバックアップが作成されていること
- 移行元(開発環境)、移行先(本番環境)それぞれにログインアカウントがあり、権限を有していること
テンプレートの移行手順
現在のcontext(環境)を確認
現在利用可能な環境を確認します (hx contexts:get
コマンドでも同様に可能です)
$ hx env
利用可能な環境がリストされます
NAME SERVER SSE
stg https://az-api.hexabase.com https://az-sse.hexabase.com
prod https://api.hexabase.com https://sse.hexabase.com
Current-context set to: stg
contextを移行元の環境へセットします (hx contexts:use
コマンドでも同様に可能です)
$ hx use stg
現在の利用環境が開発環境へセットされます
Current-context successfully set to: stg
ログインします
$ hx login
√ Enter your email · [email protected]
√ Enter your password · *********
移行元での作業
ワークスペースを確認します(hx workspaces:get
コマンドでも同様に可能です)
$ hx ws
開発環境で利用可能なワークスペースを確認します
ID NAME
5ea81d61a7e3860007bcbe2b ABC開発
5e9678e8d4b3e00006eb8745 【開発用】テスト環境
5ecf240a1ccc4a0006e76f0e 移行元ワークスペース
Current-workspace set to: ABC開発
移行元のワークスペースを選択します(hx workspaces:select
コマンドでも同様に可能です)
$ hx sel 5ecf240a1ccc4a0006e76f0e
ワークスペースが選択されます
Current-workspace set to: 移行元ワークスペース
移行元から、バックアップデータをダウンロード
バックアップを作成し、ダウンロードするコマンドを実行します。
(補足)CLIでproject
はアプリケーション
を意味します。
$ hx projects:save -d download_file_name
該当するプロジェクトを選択します
? Select a project...
hexa-simple-example1 6098ff9f1fda625b5e0f74af
customer-app1 6097751d44dca5534a4fe88f
> backup-app2 5fa49be87ece4a00011e6735
保存するテンプレート名を指定します
Please provide details for your project template
⦿ Name : backup_YYYYMMDD_ver01
⦿ Category : TEST
⦿ Description : description xxxx
Itemに紐づく履歴データを含めるか、選択します
? Include histories » No / Yes
ダウンロードが進行します
Task successfully queued...
ダウンロードが完了すると、カレントディレクトリに、バックアップファイルがダウンロードされます
Task successfully queued... done
Template with tp_id 6194fa2ac3a55a11cb6e9f5a successfully created
Downloading template with tp_id 6194fa2ac3a55a11cb6e9f5a... done
移行先環境を選択
context(環境)を本番環境(移行先)へセットします
$ hx use prod
Current-context successfully set to: prod
ログインします (※本番環境のアカウントで、再度ログインが必要です)
$ hx login
√ Enter your email · [email protected]
√ Enter your password · *********
移行先ワークスペースを確認して、選択します
$ hx ws
ID NAME
5b0d34df3d830100074ef68c HexaSample
5a744a79ad7de90005774fe8 Demo
5a77e90dad7de90005775183 移行先ワークスペース(PROD)
$ hx sel 5a77e90dad7de90005775183
Current-workspace set to: 移行先ワークスペース(PROD)
ローカルの保存ファイルから、アプリケーションを復元します。
$ hx projects:restore BackupApp_YYYYMMDD_01.zip --name NewApp
You are about to restore the template to:
workspace: 移行先ワークスペース(PROD)
context: prod
リストアが開始されます
restoring template from file BackupApp_YYYYMMDD_01.zip... done
(注意)
- リストアには時間がかかります。 しばらく(数分~十数分※データ量によります)して、Hexabase管理UI(本番環境)へログインし、アプリケーションがリストアされていることを確認してください
- リストア後、アプリケーションへのロール付与等、権限を確認、再設定してください。
以上でアプリケーションの移行は完了です。