N1 Grid Service Provisioning System 5.0 XML スキーマリファレンスガイド

インストール済みコンポーネントターゲッター

この節では、特定のインストール済みコンポーネントを包含ステップ (制御サービスコールなど) の対象として特定する要素を示します。対象となるすべてのステップですべてのターゲッターを使用できるわけではありません。各ターゲッターは、それ自体が使用できるステップを指定します。

<installedComponent> インストール済みコンポーネントターゲッター

<installedComponent> 要素は、ターゲットホスト上にインストールされていると想定される特定のインストール済みコンポーネントを特定します。

この要素は、<checkDependency><createDependency><call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。

このターゲッターは指定されたコンポーネントを直接照合するもので、指定されたコンポーネントの派生インスタンスの照合には使用できません。特定の型から派生したコンポーネントを対象とする場合は、<systemType> ターゲッターを使用してください。

<installedComponent> ターゲッターの属性

このターゲッターには次の属性があります。

<systemService> インストール済みコンポーネントターゲッター

<systemService> 要素は、現在の物理ホストにインストールされていると想定される特定のシステムサービスコンポーネントを特定します。システムサービスがプラグインにより定義されている場合は、pluginName# serviceName のように、サービス名にはプラグイン名を接頭辞として付ける必要があります。

この要素は、<checkDependency><createDependency><call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。

<systemService> ターゲッターを使用すると、暗黙に現在のホストのルート物理ホストに対象が変更されます。別のホスト上のシステムサービスを対象とする必要がある場合は、<retarget> ステップを使用する必要があります。このステップを使用しないかぎり、<systemService> ターゲッター内で新しいホストを指定することはできません。

<systemService> ターゲッターの属性

<systemService> ターゲッターには systemName 型の 1 つの必須属性 name があり、これはシステムサービスコンポーネントの名前です。システムサービスがプラグインにより定義されている場合は、pluginName# serviceName のように、システムサービス名にはプラグイン名を接頭辞として付ける必要があります。

<systemType> インストール済みコンポーネントターゲッター

<systemType> 要素は、ターゲットホスト上にインストールされていると想定される特定の型のインスタンスであるコンポーネントを特定します。指定した基準に複数のインストール済みコンポーネントが一致する場合、一番最近インストールされたコンポーネントが使用されます。

<systemType> 要素は、<checkDependency><createDependency><call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。

<systemType> ターゲッターの属性

<systemType> ターゲッターには次の属性があります。

<thisComponent> インストール済みコンポーネントターゲッター

<thisComponent> 要素は、ステップを含むコンポーネントを、ステップの対象として使用する必要があることを指定します。 このターゲッターを使用できるのは、コンポーネント内に含まれるステップだけです。この要素には属性がありません。

<thisComponent> 要素は、<call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。

リストされたステップにコンポーネントターゲッター要素が含まれない場合、デフォルトで <thisComponent> が使用されます。

<superComponent> インストール済みコンポーネントターゲッター

<superComponent> 要素は、ステップを含むコンポーネントのベースコンポーネントを、ステップの対象として使用する必要があることを示します。このターゲッターを使用できるのは、派生コンポーネント内に含まれるステップだけです。

<superComponent> 要素は、<call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。この要素には属性がありません。

このターゲッターは、派生コンポーネントが無効にする場合でも、常にベースコンポーネントによる該当ステップの定義にバインドします。

<nestedRef> インストール済みコンポーネントターゲッター

<nestedRef> 要素は、現在の複合コンポーネントによって宣言または継承が行われた、入れ子になったコンポーネント参照を特定します。このターゲッターを使用できるのは、複合コンポーネント内のステップだけです。

<nestedRef> 要素は、<checkDependency><call><uninstall> 、および <addSnapshot> ステップのターゲッターとして使用できます。

この際、指定されたコンポーネント参照が呼び出し側コンポーネントによってすでにインストールされていると想定され、インストールされていない場合はエラーが生成されます。入れ子になったコンポーネント参照が現在のターゲットホスト以外のホストにインストールされた場合は、<nestedRef> ターゲッターを使用することで、関連付けられているステップの対象がそのホストに暗黙に変更されます。

<nestedRef> ターゲッターの属性

<nestedRef> ターゲッターには identifier 型の 1 つの必須属性 name があり、これは当該コンポーネント内の入れ子になったコンポーネント参照の名前です。

<allNestedRefs> インストール済みコンポーネントターゲッター

<allNestedRefs> 要素は、現在の複合コンポーネントによって宣言または継承が行われた、入れ子になったコンポーネント参照をすべて特定します。 このターゲッターを使用できるのは、複合コンポーネント内のステップだけです。

この要素は、<call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。

このターゲッターは、任意の数のコンポーネントを特定できます。コンポーネントがまったく特定されない場合、ステップはノーオペレーション (空命令) となります。このターゲッターが複数のコンポーネントを特定する場合、特定されるコンポーネントごとに <nestedRef> ターゲッターを使用する個別のステップが存在するかのように、ステップが意味的に展開されます。ステップは同時にではなく連続的に実行され、ステップの順序はステップ型に応じて変化します。コンポーネントの 1 つに対してステップを実行しエラーが生じる場合は、そのステップは一致するほかのコンポーネントに対しては実行されません。

<call> または <addSnapshot> ステップのターゲッターとして使用される場合、ターゲッターは当該コンポーネントによって現在インストールされている、入れ子になったすべてのコンポーネント参照を照合します。コンポーネントの照合はインストール順に行われます。

<uninstall> ステップのターゲッターとして使用される場合、ターゲッターは当該コンポーネントによって現在インストールされている、入れ子になったすべてのコンポーネント参照を照合します。コンポーネントの照合はインストールの逆順に行われます。

<toplevelRef> インストール済みコンポーネントターゲッター

<toplevelRef> 要素は、現在の複合コンポーネントによって宣言または継承が行われた最上位のコンポーネント参照を特定します。このターゲッターを使用できるのは、複合コンポーネント内のステップだけです。

<toplevelRef> 要素は、<checkDependency><createDependency><call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。

このターゲッターは、namepath、および version 属性が参照先コンポーネントに基づいて事前定義されることを除き、意味的に <installedComponent> ターゲッターと同じです。詳細は、 <installedComponent> インストール済みコンポーネントターゲッター」を参照してください。

<toplevelRef> ターゲッターの属性

<toplevelRef> ターゲッターには次の属性があります。

<dependee> インストール済みコンポーネントターゲッター

<dependee> 要素は、呼び出し側コンポーネントによってその依存性 (<createDependency> で作成される) が宣言されたインストール済みコンポーネントを特定します。このターゲッターを使用できるのは、コンポーネント内のステップだけです。

<dependee> 要素は、<call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。

<dependee> ターゲッターの属性

<dependee> ターゲッターには identifier 型の 1 つの必須属性 name があり、これは当該コンポーネントによって作成される依存性の名前です。

<allDependants> インストール済みコンポーネントターゲッター

<allDependants> 要素は、呼び出し側コンポーネントに対して依存性 (<createDependency> で作成) を宣言してあるインストール済みコンポーネントのセットを特定します。このターゲッターを使用できるのは、コンポーネント内のステップだけです。

<allDependants> 要素は、<call><uninstall>、および <addSnapshot> ステップのターゲッターとして使用できます。

このターゲッターは、包含するステップを、一致するすべてのコンポーネントにマップさせるという点で <addNestedRefs> ターゲッターと似た機能を持ちます。依存コンポーネントに対するマップの順序は指定されません。

<allDependants> ターゲッターの属性

<allDependants> ターゲッターは、identifier 型の 1 つの必須属性 name を持っています。これはほかのコンポーネントによって当該コンポーネントに対して作成される依存性の名前です。

<targetableComponent> インストール済みコンポーネントターゲッター

<targetableComponent> 要素は、ホストを対象とする特定のコンポーネントと関連付けられた、ターゲット可能コンポーネントを特定します。

<targetableComponent> 要素は、<call><uninstall><checkDependency><createDependency>、および <addSnapshot> ステップのターゲッターとして使用できます。

<targetableComponent> ターゲッターの属性

<targetableComponent> ターゲッターには 1 つのオプション属性 name があり、これはホストを対象とするコンポーネントの名前です。この属性を指定しないと、値は現在のターゲットホストになります。この属性は、単純置換変数を参照できます。

共通イントールパスの書式

インストールパスはインストール済みコンポーネント参照内に指定できます。その場合、installPath 属性の値は、インストール済みコンポーネント参照を解釈処理する前に、共通書式に変換されます。このような変換が行われるのは、インストール済みコンポーネントのインストールパスが、共通書式でも保存されるためです。

共通書式では、インストールパス内にあるパス区切り文字はすべてスラッシュ「/」に置き換えられます。パス区切り文字は、Master Server で動作中のオペレーティングシステムに固有です。末尾の「/」は削除されます。ルートインストールパス (/) は例外で、空のパスには変換されません。

Master Server アプリケーションが UNIX ベースのシステムで実行中である場合、末尾のスラッシュは無視されます。そのため、/opt/apache ディレクトリにインストールされているコンポーネントを指すためには、/opt/apache/ /opt/apache の両方を使用できます。