3.3. (オプション) Git フックディレクトリーの指定


GIT_HOOKS_DIR パラメーターを設定した場合には、Git フックのディレクトリーを指定して、Business Central デプロイメントにこのディレクトリーをマウントする必要があります。

Git フックは一般的に、アップストリームのリポジトリーとの対話に使用します。Git フックを使用して、アップストリームのリポジトリーにコミットをプッシュできるようにするには、アップストリームのリポジトリーで設定した公開鍵に対応する秘密鍵を指定する必要があります。

手順

  1. SSH 認証を使用してアップストリームリポジトリーを操作する必要がある場合は、次の手順を実行して、必要なファイルを含むシークレットを作成してマウントします。

    1. リポジトリーに格納されている公開鍵に一致する秘密鍵を使用して、id_rsa ファイルを作成します。
    2. リポジトリーの正しい名前、アドレス、公開鍵で known_hosts ファイルを作成します。
    3. 以下のように oc コマンドを使用して、2 つのファイルでシークレットを作成します。

      oc create secret git-hooks-secret --from-file=id_rsa=id_rsa --from-file=known_hosts=known_hosts
    4. 以下の例では、Business Central デプロイメントの ssh キーパスにこのシークレットをマウントします。

      oc set volume dc/<myapp>-rhpamcentr --add --type secret --secret-name git-hooks-secret --mount-path=/home/jboss/.ssh --name=ssh-key

      <myapp> をテンプレートの設定時に設定したアプリケーション名に置き換えます。

  2. Git フックディレクトリーを作成します。方法は、「Git hooks reference documentation」を参照してください。

    たとえば、単純な Git フックディレクトリーで、変更をアップストリームにプッシュする post-commit フックを指定できます。プロジェクトがリポジトリーから Business Central にインポートされた場合、このリポジトリーはアップストリームリポジトリーとして設定されたままになります。パーミッションを 755 の値に指定し、以下の内容を含めて post-commit という名前のファイルを作成します。

    git push
  3. Git フックディレクトリーを Business Central デプロイメントに指定します。設定マップまたは永続ボリュームを使用できます。

    1. Git フックに 1 つまたは複数の固定スクリプトファイルが含まれる場合は、設定マップを使用します。以下の手順を実行してください。

      1. 作成した Git フックディレクトリーに移動します。
      2. ディレクトリーのファイルから OpenShift 設定マップを作成します。次のコマンドを実行します。

        oc create configmap git-hooks --from-file=<file_1>=<file_1> --from-file=<file_2>=<file_2> ...

        file_1file_2 などは、Git フックのスクリプトファイル名に置き換えます。たとえば、以下のようになります。

        oc create configmap git-hooks --from-file=post-commit=post-commit
      3. Business Central デプロイメントの設定したパスに設定マップをマウントします。

        oc set volume dc/<myapp>-rhpamcentr --add --type configmap --configmap-name git-hooks  --mount-path=<git_hooks_dir> --name=git-hooks

        <myapp> をテンプレートの設定時に設定したアプリケーション名に、<git_hooks_dir> はテンプレート設定時に設定した GIT_HOOKS_DIR の値に置き換えます。

    2. Git フックが長いファイルで構成されているか、または実行可能なファイルや KJAR ファイルなどのバイナリーに依存する場合は、永続ボリュームを使用します。永続ボリュームを作成し、永続ボリューム要求を作成して、そのボリュームを要求に関連付けてから、ファイルをそのボリュームに転送し、ボリュームを myapp-rhpamcentr デプロイメント設定にマウントします (myapp はアプリケーション名に置き換えます)。永続ボリュームの作成およびマウント方法は、「永続ボリュームの使用」を参照してください。永続ボリュームへのファイルのコピー方法は、「Transferring files in and out of containers」を参照してください。
  4. 数分待機してから、プロジェクト内の Pod の一覧およびステータスを確認します。Business Central は Git フックディレクトリーが指定されるまで開始されないので、Process Server は全く起動されない可能性があります。Process Server が起動しているかどうかを確認するには、以下のコマンドの出力で確認します。

    oc get pods

    稼働中の Process Server Pod がない場合には、これを起動します。

    oc rollout latest dc/<myapp>-kieserver

    <myapp> を、テンプレートの設定時に設定されたアプリケーション名に置き換えます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.