でのレコードの削除 DevOps チェンジベロシティ
カスケードレコードの削除は、親または上位レベルのDevOpsエンティティが削除されるたびに、依存する下位レベルのDevOpsレコードをすべて削除するように実装されています。 確認ポップアップにより、レコード (ツール接続のレコードなど) を削除するとデータが失われることを理解できます。
たとえば、計画レコードが削除されると、すべての依存作業項目、計画バージョン、および多対多の関係 (アプリと計画、作業項目と計画バージョンなど) のレコードが削除されます。
DevOps これらのテーブルにはカスケード削除が実装されています。
- パイプライン、パイプライン実行、ステップ、オーケストレーション タスク、タスク実行
- リポジトリ、コミット、ブランチ、タグ
- 計画、作業アイテム、計画バージョン
- DevOps ツール、アーティファクトリポジトリ、アーティファクト、テストサマリー/パフォーマンステストサマリー
DevOpsフォームの削除アクション
sn_devops.admin ロールを持つユーザーは、 DevOps レコードを削除できますが、定義された ACL 基準を満たしている場合に限ります。
| エンティティ | スクリプト化された ACL 基準 |
|---|---|
| Pipeline (パイプライン) | パイプラインレコードは、他のパイプラインの他のパイプライン実行が、このパイプラインの実行によって生成されたアーティファクトバージョンに依存していない場合にのみ削除できます。 |
| パイプライン実行 | パイプライン実行レコードを削除できるのは、このパイプライン実行によって生成されたアーティファクトバージョンに依存するパイプライン実行が他にない場合のみです。 |
| タスク実行 | これらの条件がすべて満たされると、タスク実行レコードを削除できます。
|
| ステップ | ステップレコードは、このステップを参照するオーケストレーションタスクまたはステップ実行がない場合にのみ削除できます。 |
| オーケストレーションタスク | オーケストレーションタスクにステップが関連付けられている場合、このオーケストレーションタスクを参照するタスク実行がない場合にのみ削除できます。 オーケストレーションタスクにステップが関連付けられていない場合 (Jenkins フリースタイルジョブなど)、このオーケストレーションタスクのタスク実行によって生成されたアーティファクトバージョンに依存するパイプライン実行が他にない場合のみ削除できます。 |
| リポジトリ | リポジトリレコードを削除できるのは、このリポジトリのコミットがアーティファクトバージョン (コミットするアーティファクトバージョンテーブル) またはタスク実行 (コミット実行テーブル) に関連付けられていない場合のみです。 したがって、リポジトリをクリーンアップする前に、依存パイプラインエンティティを削除してください。 |
| 分岐 | 分岐レコードを削除できるのは、[コミットする分岐 (Branch To Commit)] テーブルにコミットが関連付けられていない場合のみです。 |
| タグ | sn_devops.admin はタグレコードを削除できません。 |
| コミット | これらの条件がすべて満たされた場合、コミットレコードを削除できます。
|
| プラン | 計画レコードを削除できるのは、この計画の作業アイテムがいずれもコミットに関連付けられていないか、参照されていない場合のみです。 |
| 作業アイテム | 次の条件がすべて満たされると、作業アイテムレコードを削除できます。
|
| 計画バージョン | 計画バージョンレコードを削除できるのは、[作業アイテムから計画バージョンへ] テーブルに作業アイテムが関連付けられていない場合のみです。 |
| テストサマリー/パフォーマンステストサマリー | テストサマリーレコードは、テストサマリー関係テーブルに関連する関連レコード (アーティファクトバージョン/パッケージ/タスク実行) が関連付けられていない場合にのみ削除できます。 |
| アーティファクト | アーティファクトレコードは、それに属するすべてのアーティファクトバージョンが削除可能な場合にのみ削除できます。 |
| アーティファクトリポジトリ | アーティファクトリポジトリレコードは、それに属するすべてのアーティファクトが削除可能な場合にのみ削除できます。 |
| アーティファクトバージョン | アーティファクトバージョンレコードは、タスク実行フィールドによって構築された場合にのみ削除できます。 |
| アーティファクトステージング済み要求 | アーティファクトステージング済み要求レコードは、孤立したレコードであるか、ステータスが処理済み/エラーである場合に削除できます。 |
| パッケージ | これらの条件がすべて満たされると、パッケージレコードを削除できます。
|
| DevOps 道具 | DevOps ツールレコードは、sn_devops.admin が削除することはできません。 |
ビルドテストサマリー ビルドテスト結果 コミットの詳細 イベント 受信イベント |
これらのエンティティは、sn_devops.admin が削除することはできません。 |
DevOps レコード削除カスケード
親テーブルカスケードのレコードを削除すると、階層内のすべての子レコードが削除されます。
| 親レコードが削除される | カスケード削除された子レコード |
|---|---|
| Pipeline (パイプライン) | ステップ:オーケストレーションタスク パイプライン実行:
|
| パイプライン実行 | ステップ実行 コールバック タスク実行:
|
| ステップ | なし。 ステップレコードは、関連付けられたオーケストレーションタスクレコードまたはステップ実行レコードがない場合にのみ削除できます。 |
| オーケストレーションタスク | タスク実行
|
| リポジトリ | タグ ブランチ:コミットするブランチ コミット :
|
| 分岐 | 分岐からコミット |
| タグ | 依存する子レコードはありません。 |
| コミット | コミットの詳細 分岐からコミット タグ |
| プラン | 作業アイテム アプリを計画に 計画バージョン:作業アイテムから計画バージョンへ |
| 作業アイテム | 作業アイテムから計画バージョンへ |
| 計画バージョン | 作業アイテムから計画バージョンへ |
| テストサマリー/パフォーマンステストサマリー | テストサマリー関係 |
| アーティファクト | アーティファクトバージョン
|
| アーティファクトリポジトリ | アーティファクト アーティファクトバージョン:
|
| DevOps ツール | イベント 受信イベント テストサマリー/パフォーマンステストサマリー:テストサマリーの関係 [Plan (計画)]:
アーティファクトリポジトリ アーティファクト アーティファクトバージョン:
リポジトリ :
Pipeline (パイプライン)
|
DevOps レコード削除カスケード例外
これらのレコードは常にフォアグラウンドで削除されます。
| 親レコードが削除される | カスケード削除された子レコード |
|---|---|
| アーティファクトバージョン | これらのレコードはアーティファクトバージョンとともに削除されます。
|
| ビルドテストサマリー | これらのレコードは、ビルドテストサマリーとともに削除されます。 |
| パッケージ | これらのレコードはパッケージとともに削除されます。
|
フォアグラウンド削除しきい値プロパティ
デフォルトでは、 DevOps レコードの削除はフォアグラウンドで (同期的に) 行われます。つまり、同期削除中は他の UI アクションを実行できません。親レコードを削除すると複数の子レコードが削除される可能性があるため、残りのレコードがバックグラウンドで削除されるようにしきい値を設定できます。
DevOps カスケード削除しきい値プロパティを設定するには、 . フォアグラウンドでカスケード削除できるレコードの合計数を定義し、その後、残りのレコードをバックグラウンドで削除します。デフォルトは 1000 です。
DevOps レコードを削除しても、ビジネスルールやワークフローはトリガーされません。
DevOps レコード削除 UI
DevOpsレコードのカスケード削除は、複数の確認承認をトリガーします。