のクローン作成ガイドライン DevOps チェンジベロシティ
あるインスタンスから別のインスタンスに DevOps チェンジベロシティ アプリケーションのクローンを作成します。
注:
Utah 以降に有効です。
ServiceNowインスタンスのクローン作成の詳細については、次のトピックを参照してください。
で使用されるグローバルテーブルのベースシステムテーブルの除外とプリザーバー DevOps
| テーブル名 | 除外テーブルエントリが存在しますか? | データプリザーバーエントリが存在しますか? |
|---|---|---|
| DevOps ツールの場合 | ||
| sys_alias | いいえ | いいえ |
| http_connection | はい | はい |
| discovery_credentials | はい | はい |
| oauth_entity_profile | はい | はい |
| oauth_entity | はい | はい |
| jwt_provider | はい | はい |
| jwt_keystore_aliases | はい | はい |
| sys_certificate | はい | はい |
| token_verification | はい | はい |
| sys_user_group | いいえ | いいえ |
| DevOps アプリの場合 | ||
| cmdb_ci_business_app | いいえ | いいえ |
| cmdb_ci_sdlc_component | いいえ | いいえ |
| cmdb_application_product_model | いいえ | いいえ |
ソースインスタンスからクローンされたツール
- ソースインスタンスからクローンされたツールには、接続エイリアス (sys_alias) が関連付けられます。
- 接続レコードと認証情報レコードは、これらのテーブルが除外されているため、ソースインスタンスからクローンされません。
- ツール URL は接続レコードを使用して動的に計算されるため、ツール URL は空になります。
- アクティブな接続がないため、接続テストが失敗します。
- プロジェクト、計画、パイプライン、リポジトリ、作業アイテム、コミット、パイプライン実行などの基になるすべてのエンティティがツールの下に存在する必要があります。
- ツールのトークンは複製されません。
- 新しい Webhook 受信イベントは、これらのツールのクローンされたターゲットインスタンスへの受信を自動的に開始しません。新しい受信イベントを受信するには、ツールを再構成する必要があります。
クローンツールの手動ステップ
- 接続と資格情報を作成
- ツールレコードの関連リンクの下にある [新しい接続および資格情報を作成 ] アクションを使用するか、接続 (http_connection) レコードと資格情報 (discovery_credentials) レコードを手動で作成し、ツールの接続エイリアスに関連付けます。
- ツールで [接続 ] アクションを手動で実行し、ツールの接続状態が [接続済み] になっていることを確認します。
- トークンを再生成して構成
- トークンベースの Webhook 構成をサポートするツールの場合は、ツールレコードページの [関連リンク] から [ トークンを再生成 ] アクションを使用します。
- トークンを再生成すると、token_verificationテーブルに新しいトークンが作成され、[構成] ステータスが [構成済み] であるツールとリポジトリの Webhook が作成されます。
- トークンベースの Webhook をサポートしていないツールの場合は、[ 構成 ] をクリックし、 DevOps 統合ユーザーのユーザー名とパスワードを入力します。
ソースインスタンスからクローンされたアプリ
- ソースインスタンスからクローンされたアプリには、すべてのアプリの関連付けがそのまま残ります。
- ビジネスアプリと SDLC コンポーネントのリンクは維持されます。
- クローン作成後に手動の手順は必要ありません。
ターゲットインスタンスのデータを保持する
ターゲットインスタンス上の既存のツール、ツール接続、およびアプリを保持することを目指します。
レベル 1 データプリザーバー
| タイトル | テーブル名 | 目的 | 提案されたフィルター |
|---|---|---|---|
| DevOps ツール | sn_devops_tool | 最上位の DevOps ツールリストを保持します。 | connection_state=connected^EQ は、接続されているすべてのツールを保持するか、特定のツール ID でフィルタリングします。 |
| 接続および資格情報エイリアス | sys_alias | 接続の詳細を保持するために DevOps ツールで指定されます。 | idLIKEdevops^ORidLIKEspoke^EQ を使用して、 DevOpsに関連するすべてのエイリアスを保持します。 |
| DevOpsアプリ | sn_devops_app | トップレベルの DevOps アプリリストを保持する。 |
クローン作成後に保持されたツールの手動ステップ
- 保守担当者
クローン作成前にターゲットインスタンスのツールに [保守担当者 ] ユーザーグループが指定されていた場合は、ユーザーグループを更新し、クローン作成後にツールレコードに手動で設定します。
- 検出
- プロジェクト、パイプライン、計画、およびリポジトリは、クローン後に保持されたツールには存在しません。
- Azure DevOpsツールの場合は、最初に [プロジェクトの検出] を実行します。
- ツールまたはプロジェクトで 検出 アクションを実行して、パイプライン、計画、リポジトリの詳細を表示します。
- 追跡
必要なパイプライン、計画、およびリポジトリを追跡します。
- Configure (構成)
- Webhook URL がツールsys_idへの参照のみを保持するツールではオプションです。たとえば、 GitHub、 GitLab、 Jira、 Bitbucket などです。
- 再検出後にプロジェクトsys_idが変更されたため、 Azure DevOps プロジェクトを再構成する必要があります。
- トークンはツールで同じままです。
- 再構成後に、サードパーティの DevOps ツールで重複する Webhook が作成されていないことを確認します。
- 履歴インポート
インポートアクションまたはワークスペースを使用して、計画、リポジトリ、およびパイプラインの履歴データをインポートします。
クローン作成後の保持されたアプリの手動手順
- 保守担当者
クローン作成前にターゲットインスタンスのアプリに [保守担当者 ] ユーザーグループが指定されていた場合は、クローン作成後にユーザーグループを更新し、アプリレコードに手動で設定します。
- アプリに関連付ける
計画、リポジトリ、パイプラインをアプリに手動で再関連付けします。
- SDLC コンポーネントとアプリケーションモデルへの再リンク
DevOps アプリを SDLC コンポーネントに、SDLC コンポーネントをアプリケーションモデルに手動で関連付けます。
レベル 2 データプリザーバー
DevOpsツールとDevOpsアプリのデータと関係を保持することを目指します。これらのプリザーバーは、レベル 1 のプリザーバーおよび手動の手順と一緒に使用する必要があります。
| タイトル | テーブル名 | 目的 | 提案されたフィルター |
|---|---|---|---|
| プラグイン:DevOps データモデル | |||
| アーティファクトリポジトリ | sn_devops_artifact_repository | アーティファクトリポジトリのトップレベルのリスト。保持されたツールに関連付けられているアーティファクトリポジトリを保持するために必要です。 | tool=toolid^EQで、 toolid は保持される工具です。 |
| アーティファクト | sn_devops_artifact | アーティファクトのトップレベルのリスト。保存されたツールに関連付けられているアーティファクトを保持するために必要です。 | artifact_repository.tool=toolid^EQで、「toolid」は保持されるツールです。 |
| Pipeline (パイプライン) | sn_devops_pipeline | パイプラインのトップレベルのリスト。保持されたツールに関連付けられているパイプラインを保持するために必要です。 | tool=toolid^EQで、 toolid は保持される工具です。 |
| リリースバージョン | sn_devops_plan_version | リリースバージョンのトップレベルのリスト。保存された計画立案ツールに関連付けられているリリースバージョンを保持するために必要です。 | plan.tool=toolid^EQで、 toolid は保持されるツールです。 |
| プラン | sn_devops_plan | 計画のトップレベルのリスト。保存された計画立案ツールに関連付けられている計画を保持するために必要です。 | tool=toolid^EQで、 toolid は保持される工具です。 |
| プロジェクト | sn_devops_project | プロジェクトの最上位リスト。保持されたツールに関連付けられているプロジェクトを保持するために必要です。現在、 Azure DevOps でサポートされています。 | tool=toolid^EQで、 toolid は保持される工具です。 |
| リポジトリ | sn_devops_repository | リポジトリのトップレベルのリスト。保存されたコーディングツールに関連付けられているリポジトリを保持するために必要です。 | tool=toolid^EQで、 toolid は保持される工具です。 |
| アーティファクトリポジトリへのアプリ | sn_devops_m2m_app_artifact_repository | アプリ/アーティファクトリポジトリの関連付け。保持されたアプリとアーティファクトリポジトリの関係を維持するために必要です。 | app=appid^EQで、 appid は保持されるアプリです。 |
| アプリからアーティファクトへ | sn_devops_m2m_app_artifact | アプリ/アーティファクトの関連付け。保存されたアプリとアーティファクトの関係を維持するために必要です。 | app=appid^EQで、 appid は保持されるアプリです。 |
| アプリを計画に | sn_devops_m2m_app_plan | アプリ/プランの関連付け。保持されているアプリと計画の関係を維持するために必要です。 | app=appid^EQで、 appid は保持されるアプリです。 |
| プラグイン:DevOps 脆弱性統合 | |||
| DevOps セキュリティオーケストレーション関係 | sn_devops_security_orchestration_relation | DevOpsエンティティ (パイプラインなど) とセキュリティツールの間の関係を維持するために必要です。 | reference_table=sn_devops_pipeline |
カスタム統合データプリザーバー
ターゲットインスタンス上のカスタムツール統合に関連するメタデータを保持することを目指します。これらのデータプリザーバーは、レベル 1 とレベル 2 の両方のプリザーバーで使用できます。
| タイトル | テーブル名 | 目的 | 提案されたフィルター |
|---|---|---|---|
| プラグイン:DevOps データモデル | |||
| カスタムツールの統合機能 | sn_devops_integration_capability | サポートされているアクションをカスタムツール統合の統合機能マッピングレコードに保持するために必要です。 | tool_integration=customToolIntegrationId^EQ で、 customToolIntegrationId はカスタムツール統合の sys_id です。 |
| カスタムツール統合機能マッピング | sn_devops_tool_capability_mapping | カスタムツール統合の統合機能マッピングレコードを保持するために必要です。 | tool_integration=customToolIntegrationId^EQ で、 customToolIntegrationId はカスタムツール統合の sys_id です。 |
| カスタム DevOps ツール統合 | sn_devops_tool_integration | カスタムツール統合のツール統合レコードを保持するために必要です。 | sys_id=customToolIntegrationId^EQで、 customToolIntegrationId はカスタムツール統合の sys_id です。 |
| カスタムツール権限 | sn_devops_tool_permission | カスタムツール統合の権限確認レコードを保持するために必要です。 | tool_integration=customToolIntegrationId^EQ で、 customToolIntegrationId はカスタムツール統合の sys_id です。 |
| プラグイン:DevOps Workspace | |||
| カスタムツール オンボーディングタスクタイプ | sn_devops_ws_onboarding_task_type | カスタムツール統合のオンボーディングタスクタイプを維持するために必要です。 | tool_integration=customToolIntegrationId^EQです。ここで、 customToolIntegrationId はカスタムツール統合のsys_idです。 |
レベル 3 データプリザーバー
ターゲットインスタンス内のすべての m2m マッピングがそのまま残ることを目指します。
注:
具体的なテーブル DevOps は次のとおりです。他のデータを配置する必要がある場合は、それらのテーブルをプリザーバーリストに追加できます。たとえば、変更要求などです。
| 名前 | テーブル名 | アプリケーション |
|---|---|---|
| App (アプリ) | sn_devops_app | DevOps データモデル |
| アーティファクト | sn_devops_artifact | DevOps データモデル |
| アーティファクトリポジトリ | sn_devops_artifact_repository | DevOps データモデル |
| アーティファクトステージング済み要求 | sn_devops_artifact_staging | DevOps データモデル |
| アーティファクトバージョン | sn_devops_artifact_version | DevOps データモデル |
| 基本計画立案アイテム | sn_devops_base_planning_item | DevOps データモデル |
| 分岐 | sn_devops_branch | DevOps データモデル |
| ビルドテスト結果 | sn_devops_build_test_result | DevOps データモデル |
| ビルドテストサマリー | sn_devops_build_test_summary | DevOps データモデル |
| コールバック | sn_devops_callback | DevOps データモデル |
| 変更参照 | sn_devops_change_reference | DevOps データモデル |
| コミット | sn_devops_commit | DevOps データモデル |
| コミット担当者 | sn_devops_committer | DevOps データモデル |
| コミットの詳細 | sn_devops_commit_details | DevOps データモデル |
| 貢献者スコア変更係数 | sn_devops_contributor_score_chg_factor | DevOps データモデル |
| 環境 | sn_devops_environment | DevOps データモデル |
| 要求をインポート | sn_devops_import_request | DevOps データモデル |
| 要求ページをインポート | sn_devops_import_request_page | DevOps データモデル |
| 受信イベント | sn_devops_inbound_event | DevOps データモデル |
| アプリからアーティファクトへ | sn_devops_m2m_app_artifact | DevOps データモデル |
| アーティファクトリポジトリへのアプリ | sn_devops_m2m_app_artifact_repository | DevOps データモデル |
| アプリを計画に | sn_devops_m2m_app_plan | DevOps データモデル |
| TaskExecution に展開されたアーティファクト | sn_devops_m2m_artifact_execution | DevOps データモデル |
| コミットするアーティファクトバージョン | sn_devops_m2m_artifact_version_commit | DevOps データモデル |
| パッケージ化するアーティファクトバージョン | sn_devops_m2m_artifact_version_package | DevOps データモデル |
| コミットを分岐に | sn_devops_m2m_branch_commit | DevOps データモデル |
| コミットを実行 | sn_devops_m2m_commit_execution | DevOps データモデル |
| プル要求にコミット | sn_devops_m2m_commit_pull_request | DevOps データモデル |
| 作業アイテムにコミット | sn_devops_m2m_commit_work_item | DevOps データモデル |
| 受信イベントマッピングへのインポート要求 | sn_devops_m2m_inbound_event_import_request | DevOps データモデル |
| ツール統合構成テンプレート | sn_devops_m2m_tool_integration_configuration_template | DevOps データモデル |
| リリースバージョンに対する作業アイテム | sn_devops_m2m_work_item_plan_version | DevOps データモデル |
| オーケストレーションタスク | sn_devops_orchestration_task | DevOps データモデル |
| オーケストレーションタスク定義 | sn_devops_orchestration_task_definition | DevOps データモデル |
| DevOps パッケージ | sn_devops_package | DevOps データモデル |
| 参加者 | sn_devops_participant | DevOps データモデル |
| パフォーマンステストサマリー | sn_devops_performance_test_summary | DevOps データモデル |
| Pipeline (パイプライン) | sn_devops_pipeline | DevOps データモデル |
| パイプライン実行 | sn_devops_pipeline_execution | DevOps データモデル |
| プラン | sn_devops_plan | DevOps データモデル |
| リリースバージョン | sn_devops_plan_version | DevOps データモデル |
| 処理された受信イベント | sn_devops_processed_inbound_event | DevOps データモデル |
| プロジェクト | sn_devops_project | DevOps データモデル |
| プル要求 | sn_devops_pull_request | DevOps データモデル |
| リポジトリ | sn_devops_repository | DevOps データモデル |
| ソフトウェア品質カテゴリ | sn_devops_software_quality_category | DevOps データモデル |
| ソフトウェア品質カテゴリの詳細 | sn_devops_software_quality_category_detail | DevOps データモデル |
| ソフトウェア品質スキャンの詳細 | sn_devops_software_quality_scan_detail | DevOps データモデル |
| ソフトウェア品質スキャンサマリー | sn_devops_software_quality_scan_summary | DevOps データモデル |
| ソフトウェア品質スキャンサマリー関係 | sn_devops_software_quality_scan_summary_relations | DevOps データモデル |
| ソフトウェア品質サブカテゴリ | sn_devops_software_quality_sub_category | DevOps データモデル |
| ステップ | sn_devops_step | DevOps データモデル |
| ステップ実行 | sn_devops_step_execution | DevOps データモデル |
| タグ | sn_devops_tag | DevOps データモデル |
| タスク実行 | sn_devops_task_execution | DevOps データモデル |
| テスト実行 | sn_devops_test_execution | DevOps データモデル |
| テスト結果 | sn_devops_test_result | DevOps データモデル |
| テストサマリー | sn_devops_test_summary | DevOps データモデル |
| テストサマリー関係 | sn_devops_test_summary_relations | DevOps データモデル |
| DevOps ツール | sn_devops_tool | DevOps データモデル |
| ツール接続ステータス | sn_devops_tool_connection_status | DevOps データモデル |
| ツールの接続履歴 | sn_devops_tool_connectivity_history | DevOps データモデル |
| 待機理由の追跡 | sn_devops_waiting_reason_tracking | DevOps データモデル |
| 作業アイテム | sn_devops_work_item | DevOps データモデル |