4.2 Projectコマンドについて
SQLclでの、データベースCI/CD拡張機能用のコマンドは、project
です。これには、開発者がデータベースの変更内容を管理するためとシリアライズされたトランザクションを作成するために役立つ、プロセスの一部として使用される複数のサブコマンドが含まれています。
project
のすべてのサブコマンドでは、詳細な処理情報を提供する、-verbose
オプションと-debug
オプションがサポートされています。
各サブコマンドについて次に示します。各サブコマンドの構文とオプションについては、SQLclコマンドライン・ヘルプを参照してください。
-
init|in
新規プロジェクトを初期化します。このコマンドは、新しいGitリポジトリまたは既存のリポジトリにおいて実行できます。
project init -name demo -makeroot -schemas cicd
このコマンドでは、
demo
という現在の作業ディレクトリで、demo
という新しいフォルダの下にプロジェクトが作成されます。このプロジェクト・ディレクトリの下に複数のフォルダが作成されます(.dbtools
の下の構成ディレクトリなど)。このフォルダとその下のファイルは、Gitリポジトリに追加しコミットする必要があります。
-
config|cfg
プロジェクト構成プロパティを表示および管理できます。
このコマンドでは、各
project
コマンドで使用される現在の構成を確認できます。構成のファイルは、.dbtools
フォルダの下に格納されます。この構成内には、構成できる多数の設定があります。project config -list
このコマンドでは、構成済のオプションがすべてリストされます。これらのオプションのほとんどにはデフォルトがあり、パラメータが指定されていない場合はそれらが使用されます。それらのデフォルトを表示するには、
project config -list
とともに-verbose
オプションを使用します。次のコマンドを使用すると、構成項目を設定できます:
project config set -name <configitem> -value <value> -type <value-type>
project
コマンドを使用するときは、実行時に、無効な構成がフラグ付けされます。 -
export|ex
データベース・オブジェクトをリポジトリにエクスポートします。
原則として、データベースからのエクスポート時には、新しいブランチが作成されます。このブランチは、
stage
コマンドの使用によって以前のブランチと比較してDDL文を生成するときに使用されます。プロジェクトにおいて次のコマンドを実行すると、project init
コマンドで識別されたスキーマで所有されているオブジェクトをエクスポートできます。project export
特定のスキーマ(または、オブジェクトでも可)をエクスポートすることもできます。
構成ファイルには、エクスポートする正しいオブジェクトを明確に識別するために変更可能な、オブジェクトのフィルタリングのための特定のファイルがあります。
エクスポートでは、DBMS_METADATAのサポート対象である通常のデータベース・オブジェクトがサポートされており、APEXアプリケーションもサポートされています。『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』の「DBMS_METADATA: オブジェクト・タイプ」の表を参照してください。
- stage|st
すべてのソース・ファイルおよびカスタムSQLファイルについてLiquibase変更ログまたは変更セットを作成します。
stage
コマンドは、export
コマンドとともに使用されます。このコマンドでは、現在のブランチが取得され、それがベース・ブランチと比較されて、変更ログが生成されます(これにより、それらの変更内容をデータベースに適用する)。このコマンドでは、dist
フォルダを使用して、特定の形式でフォルダが作成されます。src dist - -releases -next - <stage files>
stage
コマンドは、変更内容の一部として他のカスタム変更セットを追加するためにも使用できます。これにより、Liquibase SQL変更セット・ヘッダーとSQLおよびSQLclコマンドを追加するファイルが生成されます。このファイルは、変更ログ階層に自動的に追加されます。 - release|re
現在の作業セットをリリース状態に移行し、新しい作業本体を開始します。
release
コマンドでは、dist/nextフォルダの内容が取得され、そのフォルダ名が、指定したバージョン番号に変更されます。project release -version 1.0
その後、distの下に新しい
next
フォルダが作成されます。コードをリリースに移行した後は、それを変更しないでください。このことから、
release
コマンドは、次の基準を満たした後のみ実行することをお薦めします。project verify
が正常に実行された。- 様々なシステムに対してそのリリースをテストする:
- ビルド・システム: これにより、すべてのDDLおよびコードが正しくコンパイルされていることを確認します。
- テスト・システム(データあり): データ整合性の問題がないことを確認します(例: ある列を
not null
にすると、それにnull
値があることが検出される)。
プレリリース・ビルドをテストするには、
project gen-artifact
を実行し、-version 1.0.0-test
などのバージョン名を使用します。これには、next
フォルダ内のすべてのものも含まれます。 - gen-artifact|ga
プロジェクトの現在の状態を表す成果物を生成します。
- deploy|dp
ターゲット・データベースにその成果物をデプロイします。
- verify|v
プロジェクトの様々な側面(スナップショット、変更内容、プロジェクト全体)をテストする手段を提供します。