メインコンテンツまでスキップ

アップグレード・ロールバック

NocodilySuite では、構築したすべての API・WebUI に Version(バージョン) を付与します。
Version を基盤としたバージョン管理により、本番環境への変更を安全に行い、問題発生時は素早く以前の状態へ戻せます。


Version とは

Version とは、API や WebUI の「ある時点の確定した状態」に付けられた識別子です。
単なる番号ではなく、変更管理・運用管理の中心的な役割を果たします。

NocodilySuite では、コンソール上でスキーマやロジックを変更しても、
明示的にアップグレードを実行するまで本番環境には反映されません。
これにより、開発中の変更が意図せず本番に影響することを防ぎます。

Version が担う役割内容
変更履歴の追跡いつ・何が変わったかを記録し、原因調査や監査に活用できる
本番反映のコントロール準備が整ったタイミングで、意図的にアップグレードを実行できる
ロールバックの起点問題発生時に「どの状態へ戻すか」を正確に指定できる
互換性管理API の変更がクライアントに与える影響を、バージョン単位で管理できる

アップグレード

アップグレードとは、現在のバージョンから新しいバージョンへ移行する操作です。
コンソール上でスキーマ・ロジック・設定を変更し、準備が整った時点でアップグレードを実行します。

アップグレードの流れ

コンソールで変更  →  動作確認(DevelopEnv / StagingEnv)  →  アップグレード実行  →  本番反映

アップグレードのポイント

  • 環境ごとに独立して実行できる — StagingEnv でアップグレードしても、ProductionEnv には影響しない
  • 変更前のバージョンは保持される — アップグレード後も旧バージョンは記録されており、ロールバックの起点になる
  • コンソールから操作できる — 専門的な CLI 操作やデプロイ作業は不要

アップグレードが必要なタイミング

シナリオ内容
スキーマにフィールドを追加した新しいエンドポイントや項目を本番に反映したい
バリデーションロジックを修正したカスタムコード(Embed Code)の変更を反映したい
認証設定を変更したRBAC・エンドポイント認証の設定を更新したい
WebUI のレイアウトを変更した画面の変更を本番ユーザーに届けたい

ロールバック

ロールバックとは、アップグレード後に問題が発生した際、以前の安定したバージョンへ戻す操作です。

なぜロールバックが重要なのか

本番環境へのリリースには常にリスクが伴います。
テスト環境では再現しなかった問題が本番で発生することもあり、
その際に素早く安全に「戻せる」かどうかが、システムの信頼性を左右します。

NocodilySuite では、これまでに構築した各バージョンをすべて保持しており、
コンソールからバージョンを指定してロールバックを即座に実行できます。

ロールバックの流れ

問題を検知  →  影響バージョンを特定  →  ロールバック実行  →  旧バージョンへ復元

ロールバックのポイント

  • 任意のバージョンへ戻せる — 直前のバージョンだけでなく、任意の過去バージョンへの復元が可能
  • 環境ごとに独立して実行できる — ProductionEnv のみロールバックし、StagingEnv はそのまま維持できる
  • コンソールから操作できる — 緊急時でも専門知識なしに対処できる

ロールバックが必要なタイミング

シナリオ内容
アップグレード後にエラーが急増した新バージョンに起因するバグが本番で発生している
API のレスポンスが変わりクライアントが壊れたスキーマ変更による互換性の問題が発生した
意図しない権限変更が発生した認証・アクセス制御の設定ミスを素早く戻したい
WebUI の表示が崩れた画面変更による UI の問題を即時に解消したい

バージョン管理の運用フロー

環境とバージョン管理を組み合わせることで、安全なリリースサイクルを構築できます。

DevelopEnv          StagingEnv          ProductionEnv
───────────── ───────────── ─────────────
v3 (開発中) → v2 (検証中) → v1 (稼働中)
↓ 問題なし
v3 へアップグレード
↓ 確認完了
v3 へアップグレード
  • 本番で問題が起きたら ProductionEnv を v1 へロールバック
  • StagingEnv で原因を調査し、v4 として修正・再リリース
  • 各環境が独立しているため、本番を止めずに調査・修正を進められる