同期の開始
ファイルベース Git リポジトリを使用する場合は、開発用 Management Console と本番用 Management Console の Synchronizer インスタンスから、リポジトリが配置されているファイル システムに直接アクセスできる必要があります。
リポジトリが保存されているのと同じコンピュータで Synchronizer の両方のインスタンスを実行することをお勧めします (1)。この設定の場合、プロモーション マネージャーはサポートされている Git プロトコル標準 (2) の 1 つを使用してリポジトリにアクセスし、変更を本番環境にプッシュできます。
推奨 1: ファイルベースのベア リポジトリと同期する場合は、複数の Synchronizer を同じコンピュータで実行できます。
推奨 2: 必要に応じて、管理者は Git コマンドの代わりに、SourceTree などのサードパーティの Git クライアントを使用できます。
推奨 3: Docker を開発に使用する場合は、Synchronizer コンテナでボリュームを共有できます。
同期を開始する
Management Console への Synchronizer アクセスを構成します
2 つの Management Console と Git リポジトリを接続するには、次の手順を実行します。
- synchronizer.settings ファイルで、開発 Synchronizer を開発 Management Console にポイントし、次の表のコマンドを使用して設定を構成します。
-
コマンド プロンプト ウィンドウで、synchronizer.exe ファイルに対して -c プロパティを指定して、デフォルトの synchronizer.settings ファイルを無視します。
-
必要なその他の設定を指定します。
Synchronizer.exe -c --mc-url http://127.0.0.1:8080/ManagementConsole --oauth-client-secret <insert-secret-string> --interval 10 --no-host-key false --private-key $USER_HOME \.ssh\id_rsa -s
コマンド 説明 -c,--command-line command-line で指定した設定を使用し、設定ファイルは無視します。
-e,--environment 環境設定を使用し、設定ファイルを無視します。
-g,--generate-ssh-keys <argument> SSH 認証用のキー ペアを生成し、指定されたフォルダに保存します。例:-g C:\Work\MyKeys
--mc_url <argument> 必須です。-c が指定されている場合にのみ使用します。プロトコルとポート番号を含む開発用または本番用 Management Console に接続するための URL を指定します。
--oauth-client-secret <argument> 必須です。-c が指定されている場合にのみ使用します。Management Console の OAuth サーバー セクションから Management Console を使用した認証シンクロナイザーにコピーされたプレーン テキストの OAuth クライアント シークレットを含みます。
--oauth-client-secret-file <argument> 必須です。Management Console の OAuth サーバー セクションから Management Console を使用した認証シンクロナイザーにコピーされた OAuth クライアント シークレットを含むファイルへのパス。
--interval <argument> 必須です。-c が指定されている場合にのみ使用します。同期の実行間隔を秒単位で設定します。0 以下の値または数値以外の値に設定した場合、Synchronizer は 1 回実行されて終了します。
--no-host-key <argument> オプションです。-c が指定されている場合にのみ使用します。厳密な SSH ホスト キー チェックを無効にします。デフォルトは false です。
--private-key <argument> 必須です。-c が指定されている場合にのみ使用します。リモート リポジトリに接続するためのプライベート SSH キーを含むファイルへのパスを提供します。ローカル リポジトリに接続する場合、この属性は無視されますが、値を指定する必要があります。 -r,--reset-hard バージョン情報をリセットし、ローカル キャッシュ全体をパージします。
-s,--save synchronizer.settings ファイルに設定を保存して終了します。
-v,--version バージョン情報を出力して終了します。
-h,--help プロパティの説明を出力して終了します。
-
- 本番用 Synchronizer および本番用 Management Console に前のステップを繰り返し、必要に応じてプロパティを変更します。
-
設定を保存します。
Management Consoles と Git リポジトリが同期されました。オブジェクトを本番環境に昇格させ、Management Console プロジェクトと GIT リポジトリ間の同期を設定できるようになりました。
Management Console プロジェクトと github リポジトリ間の同期を設定する
Management Console プロジェクトと github リポジトリ間の同期を設定するには、次の手順に従います。
-
github リポジトリ Web サイトを開き、新しいアカウントを作成します。
-
コマンド プロンプト ウィンドウで、-g パラメータを指定して Synchronizer.exe ファイルを実行します。
例
Synchronizer.exe -c --mc-url http://127.0.0.1:8080/ManagementConsole --oauth-client-secret <insert-secret-string> -g $USER_HOME\.ssh\
これにより、公開鍵と秘密鍵の RSA ペアが生成されます。
-
github アカウントにログインします。[設定] メニューで [SSH および GPG キー] セクションを探し、生成されたキーペアの公開キーを入力して、新しい SSH キーを作成します。
-
github Web サイトで新しいプライベート リポジトリを作成し、リポジトリの SSH アドレス (git@githubrepository.com/username/repository_name.git など) をコピーします。
-
に移動して、プロジェクトを選択します。
[編集] をクリックし、プロジェクトの編集 ウィンドウで [リポジトリ] を選択します。
-
[設定を有効化] をクリックして、リポジトリを設定するためのフィールドをアクティブ化します。
-
[URL] フィールドに、コピーした SSH アドレスを入力します。
-
[ブランチ] フィールドに、使用するブランチの名前を入力します。
-
[読み取り専用] が選択されている場合、プロジェクト ファイルは消去され、github リポジトリ ファイルに置き換えられます。
[読み取り専用] が選択されていない場合、github リポジトリ ファイルは消去され、プロジェクト ファイルに置き換えられます。
読み取り専用モードでは、Management Console に含まれるすべてのオブジェクトがリポジトリから取得されます。同期を開始する前に、同期するオブジェクトが Management Console で空であることを確認してください。空でない場合、エラー メッセージが表示されます。
オブジェクトの内容を削除するには、同期するオブジェクト リストから必要なオブジェクトを選択し、[選択したオブジェクトを削除] をクリックします。重要なデータを失わないように、オブジェクトを削除するときは注意してください。
-
[同期するオブジェクト] については、同期に含めるオブジェクトを選択します。
-
[OK] をクリックして変更を保存します。
-
-
コマンド プロンプト ウィンドウで、--private-key パラメータを指定して Synchronizer.exe ファイルを実行します。
例
Synchronizer.exe -c --mc-url http://127.0.0.1:8080/ManagementConsole --oauth-client-secret <insert-secret-string> --interval 10 --no-host-key true --private-key $USER_HOME\.ssh\id_rsa
これで、github リポジトリが Management Console プロジェクトと同期されました。