ソースコントロールの統合
アプリケーション開発者が Git ソースコントロールリポジトリと統合できるようにします。非本番インスタンスから、アプリケーションの複数のバージョンを保存および管理します。
- Git リポジトリからアプリケーションをインポートします。
- Git リポジトリからリモート変更をプルして適用します。
- インスタンスのすべてのローカル変更を Git リポジトリにコミットします。
- 指定されたバージョンのアプリケーションに永続的にリンクするタグを作成します。
- 分岐を作成して、アプリケーションの複数のバージョンを同時に管理します。
統合の要件
- ユーザーにはアドミンロールが必要です。
- 非本番インスタンスには、Git リポジトリへのネットワークアクセスが必要です。
- 各アプリケーションは、それ自体の Git リポジトリ内に存在する必要があります。
- リポジトリユーザーの認証情報は、読み取りおよび書き込みアクセス権を付与する必要があります。
ServiceNow スタジオ で利用可能なオプション
- アプリケーションリポジトリの認証情報を編集します。
- インスタンスのすべてのローカル変更をコミットします。
- リポジトリからのリモート変更を適用します。
- 分岐を作成します。
- 分岐を切り替えます。
- リモートリポジトリからアプリケーションをインポートします。
ソースコントロールを使用して本番インスタンスでアプリケーションを管理することはお勧めしません。本番環境に展開すると、予期しない結果が生じる可能性があります。「本番展開のヒント」を参照してください。代わりに、アプリケーションリポジトリ、更新セット、または ServiceNow Store を使用して、本番インスタンスでアプリケーションを管理できます。本番インスタンスでのアプリケーション管理の詳細については、「アプリケーションの共有」を参照してください。
Git リポジトリから利用可能なオプション
- アプリケーションファイルを別の Git ディレクトリ構造に移動します。
- ServiceNow スタジオ の外部でアプリケーションファイルを編集します。
リポジトリのルートレベルで、sn_source_control.properties と呼ばれるプロパティテキストファイルが生成されます。アプリケーションファイルを別の Git ディレクトリ構造に移動するために、アプリケーション開発者は path パラメーターを設定して、アプリケーションファイルを含むサブフォルダーパスを指定できます。たとえば、アプリケーションを src/app サブフォルダーに移動した場合は、path を path=src/app に設定します。
- 実行されたサニタイズアクションごとに、アップグレードログエントリを作成します。
- サポートされていないフォルダーとファイルをリポジトリから削除します。
- システムアプリケーションファイルが XML スキーマの検証に失敗した場合、すべてのソースコントロール操作を中止します。たとえば、データベースディクショナリレコードが XML スキーマの検証に失敗した場合、システムはすべての操作を中止します。
- 非システムアプリケーションファイルが XML スキーマの検証に失敗した場合、現在のソースコントロール操作をスキップします。
ソースコントロール統合は、sn_source_control.properties ファイルにリストされているアプリケーションパス内のコンテンツのみをサニタイズします。アプリケーションパス外のリポジトリコンテンツは無視されます。
MID サーバーのサポート
既存の MID サーバーを使用して、ソースコントロールリポジトリに接続します。MID サーバーを介してアプリケーションとリンクまたはインポートすると、ファイアウォールの背後にあるリポジトリにアクセスできます。
ソースコントロール統合のための MID サーバーの構成
ソースコントロール統合のために MID サーバーを構成すると、ServiceNow インスタンスと外部のアプリケーション、データソース、サービスの間の通信やデータの移動が可能になります。
- glide.attachment.extensions プロパティに「bundle」拡張を追加します。
- MID サーバーがプロキシを経由してリモートの Git リポジトリにアクセスする必要がある場合は、次の手順を実行します。
- agent\conf\wrapper-override.conf ファイルに次の行を追加します。
- wrapper.java.additionial.3=-Dhttps.proxyHost=<proxyHost>
- wrapper.java.additionial.4=-Dhttps.proxyPort=<proxyPort>
- MID を再起動します。
- 「MID セキュリティポリシー」に新しいエントリを追加します。
- 名前:<プロキシホスト名>
- [アクティブ (Active)] のみをオンにします。
ソースコントロールのコミットのノイズ除去
ソースコントロールのメタデータレコードについて、ノイズを含む更新フィールドの XML ファイルにアンロードすることをスキップします。