16.4. Git リポジトリーからの Puppet Modules の同期
Red Hat Satellite 6 には pulp-puppet-module-builder
と呼ばれるユーティリティーが含まれており、これは pulp-puppet-tools
RPM から他のシステムにインストールできます。このツールは Git リポジトリーをチェックアウトし、全モジュールをビルドして、Satellite 6 が同期できる構造で公開します。一般的な方法の 1 つは、Satellite Server 自体でユーティリティーを実行し、ローカルディレクトリーに公開して、そのディレクトリーに対して同期することです。以下に例を示します。
# mkdir /modules # chmod 755 /modules # pulp-puppet-module-builder \ --output-dir=/modules \ --url=git@mygitserver.com:mymodules.git \ --branch=develop
この例では、Git リポジトリーの develop
ブランチを git@mygitserver.com:mymodules.git
からチェックアウトし、/modules
に公開します。このディレクトリーを Satellite Server の新規リポジトリーの URL (file:///modules
)として追加します。
リモート HTTP サーバー上の Puppet モジュールの公開
リモートの HTTP サーバー上にモジュールを公開する場合でも同じプロセスを実行します。たとえば、Puppet モジュールを公開する標準 Web ホストとして webserver.example.com
を使用します。
# mkdir /var/www/html/modules/ # chmod 755 /var/www/html/modules/ # pulp-puppet-module-builder \ --output-dir=/var/www/html/modules/ \ --url=git@mygitserver.com:mymodules.git \ --branch=develop
Satellite Server では、リポジトリーの URL を http://webserver.example.com/modules/
に設定します。
Web UI を使用した Git リポジトリーからの Puppet モジュールの同期
以下の手順を使用して、Git リポジトリーから Puppet モジュールを同期します。
手順
- カスタム製品を作成し、リポジトリーの作成 をクリックします。
- タイプ のリストから puppet を選択します。
-
URL フィールドに、ソースとして使用する外部 Git リポジトリーの URL を
file:///modules
の形式で入力します。
CLI をご利用の場合
Puppet Forge リポジトリーを作成します。
# hammer repository create \ --name "Modules from Git" \ --content-type "puppet" \ --product "MyProduct" \ --organization "My_Organization" \ --url file:///modules