のクローン作成のガイドライン 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ツールの場合は、まずプロジェクトの検出を実行します。
- ツールまたはプロジェクトで 検出 アクションを実行して、パイプライン、計画、およびリポジトリの詳細を表示します。
- トラック
必要なパイプライン、計画、およびリポジトリを追跡します。
- 構成
- Webhook URL がツール sys_id のみへの参照を保持するツールの場合はオプションです。たとえば、 GitHub、 GitLab、 Jira、 Bitbucketなどです。
- 再検出後にプロジェクトsys_idが変更されたため、 Azure DevOps プロジェクトを再構成する必要があります。
- ツールのトークンは同じままです。
- 再構成後にサードパーティの DevOps ツールで重複した Webhook が作成されていないことを確認します。
- 履歴インポート
インポートアクションまたはワークスペースを使用して、計画、リポジトリ、パイプラインの履歴データをインポートします。
クローン作成後に保持されたアプリに対する手動ステップ
- 保守担当者
クローン作成前にターゲットインスタンスのアプリに [Maintenanceby (管理担当者)] ユーザーグループが指定されている場合は、クローン作成後にユーザーグループを更新してアプリレコードに手動で設定します。
- アプリに関連付ける
計画、リポジトリ、パイプラインをアプリに手動で再関連付けします。
- SDLC コンポーネントとアプリケーションモデルに再リンク
DevOpsアプリを SDLC コンポーネントに手動で関連付け、SDLC コンポーネントをアプリケーションモデルに手動で関連付けます。
レベル 2 データプリザーバー
DevOpsツールとDevOpsアプリでデータと関係を保持することを目指します。これらのプリザーバーは、level1 プリザーバーおよび手動ステップと一緒に使用する必要があります。
| タイトル | テーブル名 | 目的 | 提案されたフィルター |
|---|---|---|---|
| プラグイン:DevOps Data Model | |||
| アーティファクトリポジトリ | sn_devops_artifact_repository | アーティファクトリポジトリのトップレベルリスト。保持されたツールに関連付けられているアーティファクトリポジトリを保持するために必要です。 | tool=toolid^EQで、 toolid は保持されるツールです。 |
| アーティファクト | sn_devops_artifact | アーティファクトのトップレベルのリスト。保存されたツールに関連付けられているアーティファクトを保持するために必要です。 | artifact_repository.tool=toolid^EQで、ここで「toolid」は保持されるツールです。 |
| パイプライン | 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 Data Model | |||
| カスタムツール統合機能 | 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 ワークスペース | |||
| カスタムツールのオンボーディングタスクタイプ | sn_devops_ws_onboarding_task_type | カスタムツール統合のオンボーディングタスクタイプを維持するために必要です。 | tool_integration=customToolIntegrationId^EQです。 ここで、customToolIntegrationId はカスタムツール統合のsys_idです。 |
レベル 3 データプリザーバー
ターゲットインスタンスですべての m2m マッピングが損なわれないようにすることを目指します。
注:
特定のテーブル DevOps は次のとおりです。他のデータを配置する必要がある場合は、それらのテーブルを保持者リストに追加できます。たとえば、「変更要求」などです。
| 名前 | テーブル名 | アプリケーション |
|---|---|---|
| アプリケーション | 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 データモデル |
| パイプライン | 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 データモデル |