付録A テンプレート作成の参照


Embedded Ruby (ERB)は、Ruby コードとプレーンテキストを統合するテンプレートをもとに、テキストファイルを生成するためのツールです。Red Hat Satellite は、プロビジョニングテンプレート (「Provisioning Templates」 )で ERB 構文を使用します( 『Red Hat Satellite Provisioning Guide』のプロビジョニングテンプレートの 作成 および リモート実行 ジョブ テンプレート( 12章Satellite ホストでのジョブの実行 )、パーティションテーブルこのセクションでは、ERB テンプレートで使用可能な Satellite 固有の機能と変数を使用例と併せて概説します。Red Hat Satellite が提供するデフォルトのテンプレート(ホスト プロビジョニングテンプレート、ホスト ジョブテンプレート )には、ERB 構文の適切な例も含まれている点にご留意ください。
ホストのプロビジョニング時またはリモートジョブの実行時に、ERB のコードが実行し、変数がホスト固有の値に置き換えられます。このプロセスは レンダリング と呼ばれています。Satellite Server ではセーフモードのレンダリングオプションがデフォルトで有効になっており、これにより、有害なコードがテンプレートから実行されないようにすることができます。

A.1. ERB テンプレートの作成

以下は ERB 構文を要約したポイントになります。
  • <% %&gt; - ERB テンプレート内に Ruby コードを囲むマークです。コードはテンプレートのレンダリング時に実行されます。これには Ruby の制御フロー構造と、Satellite 固有の関数および変数を含めることができます。以下に例を示します。
    <% if @host.operatingsystem.family == "Redhat" && @host.operatingsystem.major.to_i > 6 %>
    systemctl <%= input("action") %> <%= input("service") %>
    <% else %>
    service <%= input("service") %> <%= input("action") %>
    <% end -%>
  • <%= %&gt; - コード出力はテンプレートに挿入されます。これは変数の置き換えに便利です。以下に例を示します。
    echo <%= @host.name %>
  • <% -%>, <% = -%>: デフォルトでは、行末で閉じられている場合に、改行文字が Ruby ブロックの後に挿入されます。この動作を抑制するには、囲んでいるマークを変更します。たとえば、以下のテンプレートです。
    curl <%= @host.ip -%>
    /mydir
    上記のテンプレートは以下のようにレンダリングされます。
    curl <%= @host.ip %>/mydir
    これはレンダリングされるテンプレートの行数を減らすために使用されます (Ruby 構文で許可される場合)。
  • <%# %&gt; - テンプレートのレンダリング中に無視されるコメントを囲むマーク:
    <%# A comment %>
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る