以前のバージョンにロールバックする
このトピックでは、アプリケーションを以前のバージョンにロールバックする方法について説明します。
この例では、Directoryのバージョン0.3をProductionにデプロイした際に、重大なバグが検出されました。バグによりデータの整合性が失われているため、Operationsチームはアプリケーションを以前のバージョンにロールバックする必要があります。
以前のバージョンにロールバックするタイミング
ほとんどの場合、本番で見つかるバグは軽微であり、ビジネスへの影響も大きくありません。そのような場合は、ホットフィックスを適用するのみで修正できます。
バグの深刻さや時間的制約のためホットフィックスを適用することができない場合、LifeTimeでは以前のバージョンに基づいてタグを作成するか、ソリューションを再発行するという2つの方法でアプリケーションをロールバックできます。
以前のバージョンに基づいてタグを作成する
LifeTimeでは、環境で実行中のものより以前のバージョンをデプロイすることはできません。代わりに、新しいバージョンを作成する必要があります。こうすることで、実行中のアプリケーションに適用されたパッチを追跡することができます。
LifeTimeではバージョンの作成時にモジュールを指定できるため、このバージョンは安定しているバージョンとまったく同じものとなります。LifeTimeでDirectoryアプリケーションをクリックし、アプリケーションの詳細画面に移動します。
Quality Assuranceで[Tag Version]をクリックして新しいバージョンを作成します。デフォルトでは、タグは最新バージョンに基づいています。アプリケーションバージョンの前にある[▼]ボタンをクリックし、作成しているバージョンがバージョン0.2と同一になるよう指定するために[0.2]オプションを選択します。
アプリケーションのバージョン0.2をタグのベースバージョンとして選択すると、Directory、DirectorySampleData、およびこのアプリケーションの他のすべてのモジュールのバージョンも変更されます。ご注意ください。LifeTimeでは、タグの一部となるモジュールのバージョンを指定することができます。
タグの説明を入力し、[Tag Version]をクリックして新しいバージョンを作成します。
Directory 0.2と同一の、Directoryバージョン0.2.1が作成されました。あとは、Directory 0.2.1をProductionにデプロイするのみです。「アプリケーションをデプロイする方法」をご覧ください。
インフラ管理コンソール外でロールバックする
一部のソフトウェアファクトリでは、アプリケーションをデプロイするための内部プロセスが複雑であるため、デプロイ手順にOutSystemsを連携することが困難です。
このような場合に、以前のバージョンにロールバックするもう1つの方法が、新しいバージョンをデプロイする前に環境管理コンソールでソリューションを作成することです。ソリューションを使用すると、複数のアプリケーションモジュール(eSpacesおよび拡張機能)を集約して、デプロイ可能な単一のユニットを作成できます。
Production管理コンソールに移動して[Factory]をクリックし、次に[Solutions]をクリックします。[Solutions]画面で[New Solution]を選択します。
ソリューションが作成された後、それに含めるモジュールを指定します。入力フィールドに「type 'Directory'」、「'DirectorySampleData'」と入力します。
最後に[Associate]をクリックして、指定したモジュールをソリューションに組み込みます。
有効化された[Create Version]ボタンをクリックして、このバージョンのバージョン名と説明を指定します。
保存すると、[Versions]タブでこのバージョンを使用できるようになります。このバージョンにロールバックするには、[Publish]ボタンをクリックします。ソリューションは環境管理コンソール経由でパブリッシュされますが、LifeTimeがバージョンを自動的に検出するため、Productionで「Directory 0.2」と表示されます。