6.6 SQLcl Projects使用時のSQLclのアップグレード
SQLcl Projects機能では、中断を最小限に抑え、チーム全体の一貫性を確保するために、SQLclのアップグレードに構造化されたアプローチが必要です。この項では、SQLcl Projects使用時にSQLclをアップグレードするプロセスと、タイミングおよび実装に関する重要な考慮事項について説明します。
6.6.1 アップグレードするタイミング
SQLclをアップグレードする最良のアプローチは、すべての作業が完了するスプリントの終了まで待機することです。これにより、次のことが確実になります:
- アクティブな開発が中断されません。
- チーム・メンバーがアップグレードを認識し、それに応じた計画を立てられます。
- 新しいSQLclバージョンへの移行がスムーズで安定します。
開始する前に、SQLclのアップグレードについてチームに通知し、プロセスが完了するまでリポジトリ内のSQLclが操作されないようにしてください。
スプリント境界を越える進行中の作業がある場合でも、SQLclをアップグレードすることはできます。ただし、要件に合わせて、次の項で説明するプロセスを変更する必要があります。
6.6.2 アップグレード・プロセス
SQLclをアップグレードするには、次の手順を実行します:
-
アップグレード用の機能ブランチを作成します。
main(または同等の安定ブランチ)から分岐し、SQLclバージョン更新専用の機能ブランチを作成します。これにより、アップグレードが進行中の開発から分離され、マージする前に確認できるようになります。 -
プロジェクト構成を更新します。
プロジェクト構成の
sqlcl.versionプロパティ(.dbtools/project.config.jsonにあります)を変更して、新しいバージョンのSQLclを反映させます。これにより、アップグレードの完了後にチーム・メンバーが目的のバージョンを確実に使用するようにできます。 -
src/databaseをリフレッシュします。SQLcl Projectsは、SQLclのバージョンに基づいて異なる方法で処理されます。すなわち、
src/databaseが新しいバージョンと一致するようにする必要があるということです。推奨されるアプローチ:
-
src/databaseを完全に削除します。 -
更新されたバージョンのSQLclを使用してプロジェクトを再エクスポートします。
このステップは、新しいSQLcl動作に従ってすべての定義および構成が確実に再生成されるため、重要です。
チームと話し合って、プロジェクト固有の考慮事項がこのステップに影響する可能性があるかどうかを確認してください。たとえば、共有の開発データベースを使用していて、エクスポートの準備ができていないスプリント境界を越える機能がある場合は、一時データベースを起動し、そこでインストーラを実行して、そのデータベースからエクスポートするなど、代替方法を検討してください。
-
-
分岐を
mainにマージします。更新が完了したら、機能ブランチを
mainにマージして戻します。この時点で次のようになります:
- アップグレードは正式に完了です。
- チームは、新しい作業を開始する前に、正しいSQLclバージョンをダウンロードする必要があります。
- 新しい機能ブランチは、更新されたSQLclバージョンを使用して作成されます。