N1 Service Provisioning System 4.1 リファレンスガイド

第 3 章 N1 Service Provisioning System Software プランのスキーマ

この章では、N1 Service Provisioning System software プランの XML スキーマについて説明します。

プロビジョニングソフトウェア の XML スキーマアーキテクチャーの概要は、第 1 章を参照してください。

executionPlan 要素

プラン全体は、<executionPlan> 要素によって包含されます。

以下の表の「構成可能」列は、個々の属性に置換変数参照が「:[varName]」という形式で含まれるかどうかを示します。

executionPlan 要素属性

名前 

型 

必須 

説明 

xmlns 

文字列 

はい 

必要な値: http://www.sun.com/schema/SPS 

xmlns:xsi 

文字列 

はい 

必要な値: 

http://www.w3.org/ 2001/XML 

Schema-instance 

xsi:schemaLocation 

文字列 

不可 

推奨値: 

http://www.sun.com/schema/SPS 

plan.xsd 

name 

entityName 

はい 

プランの名前 

path 

pathName 

いいえ 

実行プランの絶対パス。 指定しないと、デフォルトで root パス「/」が使用される 

説明 

文字列 

いいえ 

プランの説明 

version 

schemaVersion 

はい 

使用されているプランスキーマのバージョン。 現在許可されている値は 4.0 のみ 

executionPlan 子要素

プラン単純または複合のどちらかです。 単純プランはほかのプランを含まず、ほかのプランを呼び出すこともありません。 単純プランは、特定の対象マシンセットに対して実行される手順の連続リストです。 複合プランには、ほかのサブプランだけが入っています。 複合プランが再帰的に包含している各単純サブプランは、それぞれ異なる対象を持ちます。このため、複合プランは直接の対象とはなりません。

名前 

数 

説明 

paramList 

0 または 1 

プラン内で使用するパラメタの一覧 

varList 

0 または 1 

プラン内で使用する変数の一覧 

simpleSteps 

0 または 1 

単純手順の一覧を含む。 この要素または compositeSteps 要素のどちらかが存在しなければならないが、両方存在してはならない  

compositeSteps 

0 または 1 

複合手順の一覧を含む。 この要素または simpleSteps 要素のどちらかがが存在しなければならないが、両方存在してはならない 

plan paramList 要素

plan <paramList> 要素は <executionPlan> 要素の子であり、プラン内の手順およびそれらの参照コンポーネントが使用する一連のパラメタを宣言するために使用されます。 このプランが最上位のプランとして実行される場合、呼び出し側はこのリストで宣言された全パラメタの値を入力するように求められます。 このプランがほかのプラン内で <execSubplan> 手順の結果として呼び出される場合、呼び出し側のプランは <paramList> で宣言されたすべての非デフォルトパラメタの値を明示的に渡す必要があります。

plan paramList 要素の子要素

名前 

数 

説明 

param 

1 つ以上 

プランパラメタ (名前、プロンプト、デフォルト値など) の宣言  

plan param 子要素

plan <param> 要素は plan <paramList> 要素の子であり、プラン内で使用するパラメタの宣言に使用されます。

plan param 子要素属性

名前 

型 

必須 

説明 

name 

識別子 

はい 

プランパラメタの名前。 この名前は、最上位のすべてのプランパラメタおよびプラン変数にわたって一意でなければならない 

prompt 

文字列 

いいえ 

パラメタの値を求める際に表示する UI テキスト。 指定しないと、デフォルトで名前が使用される 

default 

文字列 

いいえ 

パラメタのデフォルト値。 このデフォルト値は、ほかのパラメタまたは変数の参照を含むことはできない 

display Mode 

次の 1 つ:  

PASSWORD  

CLEAR  

BOOLEAN 

いいえ 

変数の表示モード  

指定しないと、デフォルトで CLEAR が使用される  

PASSWORD を指定すると、クライアントが入力した値が隠される (つまり、非表示、あるいは *** への置換)  

BOOLEAN を指定すると、チェックボックスとしてパラメタの入力が行われる  

あるいは、CLEAR または BOOLEAN を指定した場合に、入力時に値を表示するようにすると安全 

plan varList 要素

plan <varList> 要素は <executionPlan> および <inlineSubplan> 要素の子であり、プラン内の手順およびそれらが参照するコンポーネントによって使用される一連の変数を宣言するために使用されます。 これらの変数の値は宣言時に定義され、再定義は行えません。

plan varList 要素

名前 

数 

説明 

var 

1 つ以上 

プラン変数 (名前、値など) の宣言  

plan var 子要素

plan <var> 要素は plan <varList> 要素の子であり、プラン変数 (名前や値など) を宣言するために使用されます。

plan var 子要素属性

名前 

型 

必須 

構成可能 

説明 

name 

識別子 

はい 

不可 

局所変数の名前。 この名前は、包含する <varList> 内のすべての変数にわたって一意でなければならない。 最上位の <executionPlan> に関連付けられた変数は、プランパラメタにおいても一意でなければならない 

デフォルト 

文字列 

はい 

可能 

プラン変数 (先に宣言されているほかのプラン変数の参照も含むことができる) のデフォルト値と、プランパラメタ。 このプランが単純プランの場合には、対象ホスト属性およびインストール済みのコンポーネント変数の参照も含めることができる 

simpleSteps 要素

<simpleSteps> 要素は <executionPlan> および <inlineSubplan> 要素の子であり、1 つ以上の「共通」手順または「単純プラン専用」手順から構成されます。 <simpleStep> 要素の存在は、そのプランが単純 (複合に相対する) プランであることを示します。 実行時にこの要素内の手順は、呼び出し側によって選択された一連の論理対象ホストで順次実行されます。

simpleSteps 要素属性

名前 

型 

必須 

説明 

executionMode 

次の 1 つ:  

PARALLEL  

SERIES 

いいえ 

包含した複数の手順を対象ホストに対して順次実行するか同時に実行するかを示す。 指定しないと、PARALLEL が使用される 

limitToHostSet 

文字列 

いいえ 

当該プランの有効な論理的対象と見なされるホストを含むホストセットの名前 (詳細は下記) 

simpleSteps limitToHostSet 属性

<simpleSteps> 要素の limitToHostSet 属性は、当該プランの有効な対象と見なされるホストを含むホストセットの名前を指定します。 この属性を指定しないと、すべてのホストが有効な対象と見なされます。 すべてのホストを有効な対象としない場合、クライアントが指定する対象はこの要素で指定されるホストセットに含まれるホストのサブセットでなければなりません。 指定されたホストセットに含まれないホストが対象内に存在する場合、その状況はプラン実行時エラーです。 既存のホストセットに一致しない名前を指定するのも、プラン実行時エラーです。 ここで説明するプラン実行時エラーは、プリフライトが始まる前に検証の段階で報告されます。

simpleSteps 要素の子要素

<simpleSteps> 要素の子は、1 つ以上の「共通」手順または「単純プラン専用」手順から構成されます。 これらの手順には、プランパラメタおよびプラン変数の参照を含めることができます。

詳細は、「単純プラン専用手順」を参照してください。

compositeSteps 要素

<compositeSteps> 要素は <executionPlan> および <inlineSubplan> 要素の子であり、1 つ以上の「複合プラン専用」手順から構成されます。 <compositeStep> 要素の存在は、そのプランが複合 (単純に相対する) プランであることを示します。 <compositeSteps> 要素に属性は含まれません。

compositeSteps 要素の子要素

<compositeSteps> 要素の子は、1 つ以上の「複合プラン専用」手順から構成されます。 これらの手順には、プランパラメタおよびプラン変数の参照を含めることができます。

詳細は、「単純プラン専用手順」を参照してください。

compositeSteps 要素の子要素

<compositeSteps> 要素の子は、1 つ以上の「複合プラン専用手順」手順から構成されます。 これらの手順には、プランパラメタおよびプラン変数の参照を含めることができます。

「単純プラン専用手順」を参照してください。

共通手順

この節では、コンポーネントまたは単純プランのどちらでも使用できる手順を示します。 該当する手順は次のとおりです。

以下の表の「構成可能」列は、個々の属性に置換変数参照が「:[varName]」という形式で含まれるかどうかを示します。

call 手順

<call> 手順は、対象ホスト上にインストールされたコンポーネントに関連付けられた制御プロックの実行に使用できます。

call 手順属性

名前 

型 

必須 

構成可能 

説明 

blockName 

文字列 

はい 

不可 

インストール済みコンポーネントに対して実行する制御ブロックの名前 

call 手順の子要素

名前 

数 

説明 

argList 

0 または 1 

制御ブロックに渡す引数の一覧 

installed component targeter 

0 または 1 

実行する制御ブロックを含んでいるコンポーネントを特定する。 指定しないと、<thisComponent> が使用される 

argList 子要素

<argList> 要素は、<call>、<install>、<uninstall>、<execSubplan>、および <addSnapshot> 手順の子です。 この要素は、呼び出されるサービスに引数として渡される一連の変数を指定します。 呼び出されるサービスの方は、待ち受ける変数を <paramList> 要素を使用して宣言します。 <argList> 内の変数と呼び出される <paramList> 内の変数は同じである必要はありません。 しかし、呼び出される <paramList> 内の変数のうちデフォルト値を持たないものについては、<argList> 内に同じ名前の変数が存在しなければなりません。この条件が満たされない場合、実行時にプリフライトエラーが発生します。 呼び出される <paramList> 内の変数のうち <argList> 内に対応する変数が存在するものは、呼び出されるサービスの実行時に <argList> 内の対応する変数の値をその値として取得します。

<argList> 内の変数のうち 呼び出される <paramList> 内の変数に対応しないものは、単純に無視されます。 このような処理がなされることで、1 つのプランで新旧両方のサービスバージョンを呼び出すことができる下位互換性を維持しながら、追加されたパラメタによるサービスの再定義が可能となります。

<argList> 要素の引数は属性として表現されます。 たとえば、次の <argList> は 2 つの引数、「password」と「path」を宣言しています。


<argList password=”:[password]”
path=”/tmp”/> 

順序は重要ではありません。

argList 子要素属性

<argList> 要素には、属性を少なくとも 1 つは指定する必要があります。 各属性は、呼び出されるサービスに渡される名前付き変数として扱われます。 各属性の名前は置換変数参照のない識別子でなければならず、呼び出されるサービス内のパラメタの名前に一致したものでなければなりません。 各属性の値は任意の文字列であり、包含するスコープ内の変数の参照を含むことができます (<argList> 内のほかの引数の参照は含むことができない)。

CheckDependency 手順

<checkDependency> は、特定のコンポーネントが対象ホスト上にインストール済みであることを検証するために使用できます。 指定したコンポーネントがインストールされていない場合、手順は失敗し、実行が停止します。

この処理では、包含されているコンポーネントターゲッターによって依存性がチェックされます。 このターゲッターが正常にコンポーネントを解決処理すると、依存性が満たされていると見なされます。 正常に解決処理されない場合、依存性が満たされていないと見なされます。

checkDependency 手順の子要素

名前 

数 

説明 

installed component targeter 

依存性をチェックするコンポーネントを特定する 

execJava 手順

対象ホスト上で JavaTM Executor インスタンスを実行するために使用する手順です。 Executor インスタンスが例外を送出する場合、手順は失敗し、実行が停止します。


注 –

<execJava> 手順は、内部使用だけを意図した高度な機能です。


execJava 手順属性

名前 

型 

必須 

構成可能 

説明 

className 

文字列 

はい 

可能 

(Plan Executor で指定されているとおりに) ExecutorFactory インタフェースを実装する、public no-arg コンストラクタを持つ public クラスのフルネーム 

classPath 

文字列 

いいえ 

可能 

className 属性で指定されたクラスを含むクラスパス。 指定しないと、遠隔エージェントのシステムクラスパスが使用される。 クラスパスは、エージェント上の jar ファイルの絶対パスをセミコロンで区切ったリストの形式をしている。 

timeout 

positiveInteger 

いいえ 

不可 

コマンドの完了を待機する時間を秒数で指定する。この時間を経過するとタイムアウトとなる。 指定しないと、プランの exec 固有タイムアウト期間が適用される。 この値は 0 よりも大きなものでなければならない。 


注 –

execJava 手順がコンポーネント内に含まれる場合、通常この手順はそのコンポーネントによって配備された 1 つ以上のリソースに含まれるクラスを呼び出します。 プラン内に含まれる場合、呼び出されるクラスはエージェント自体のシステムクラスとして、あるいは既存コンポーネントによって配備されたリソースとして (一般にこちら)、エージェント上にすでに存在します。


execJava 子要素

名前 

数 

説明 

argList 

0 または 1 

Executor インスタンスのパスに対する引数の一覧 

execNative 手順

<execNative> 手順は、対象ホストでネイティブコマンドを実行するために使用されます。 コマンドが予期しなかった結果を生成する場合、手順は失敗し、実行が停止します。

execNative 手順属性

名前 

型 

必須 

構成可能 

説明 

userToRunAs 

文字列 

不可 

可能 

当該コマンドをどのユーザーとして実行するかを指定する。 指定するとコマンドはこのユーザーとして実行され、指定しないと構成ファイル内の defaultUserToRunAs として実行される。 値として、文字列によるユーザー名または数値による UID を指定できる。 これは、空でない文字列でなければならない 

dir 

文字列 

不可 

可能 

コマンドの作業ディレクトリの絶対パス。 指定しないと、デフォルトでエージェント固有の構成可能ディレクトリが使用される。 空の文字列であってはならない 

timeout 

正の Integer 

いいえ 

不可 

コマンドの完了を待機する時間を秒数で指定する。この時間を経過するとタイムアウトとなる。 指定しないと、プランの exec 固有タイムアウト期間が適用される。 この値は 0 よりも大きなものでなければならない 

execNative は、次のものを指定するために入れ子になった要素を持つことができます。

execNative 要素の子要素

名前 

数 

説明 

env 

0 またはそれ以上 

子プロセスの環境変数 

background 

0 または 1 

コマンドをバックグラウンドプロセスとして実行すべきであることを指定する 

outputFile 

0 または 1 1 

コマンドの標準出力を格納するファイルの名前 

errorFile 

0 または 1 1 

コマンドの標準エラー出力を格納するファイルの名前 

inputText 

指定できるのはこれらの要素の 1 つだけ 2 

コマンドの標準入力に送り込むテキスト。 inputFile が指定されているとこの要素は指定できない 

inputFile 

ファイルの名前を指定する。このファイルからコマンドの標準入力が読み取られる 

exec 

これらの要素の 1 つを指定する必要がある 3 

実行する実行可能ファイルを指定する 

shell 

実行するシェルコマンドを指定する 

successCriteria 

0 または 1 

この手順が正常に実行されたかどうかを評価する基準 

1 <background> 要素を指定する場合は、<outputFile> と <errorFile> の両方を指定する必要があります。

2 inputText および inputFile 要素は省略可能です。 これらの指定は一度に 1 つずつ行う必要があります。

3 exec または shell 要素の 1 つを指定する必要があります。 execNative 要素内に exec 要素と shell 要素の両方を入れることは認められません。

<inputText> および <inputFile> 要素は省略可能です。 これらの指定は一度に 1 つずつ行う必要があります。

3 exec または shell 要素の 1 つを指定する必要があります。 execNative 要素内に exec 要素と shell 要素の両方を入れることは認められません。

env 子要素

<execNative> 要素は、コマンドの環境変数を指定する目的で、必要に応じて <env> 要素を含むことができます。 <env> を使用すると、コマンド環境の新しい変数を提供することも、既存の変数を無効にすることもできます。

コマンドの環境変数セットは、遠隔エージェントの環境変数セットと、<env> タグを使用して提供される変数を合わせたものです。

env 要素属性

名前 

型 

必須 

構成可能 

説明 

name 

文字列 

はい 

可能 

環境変数の名前。 空でない文字列を指定する必要がある 

value 

文字列 

はい 

可能 

環境変数の値。 この値には、RA の環境変数の値を参照するように、${var_name} 文字列を含めることができる。 var_name が無効にされる変数を env タグを使用して参照する場合、その置換された値は RA の環境内で定義されたものであり、無効にされたも値ではない。 ${ という文字をそのまま表示させる必要がある場合は、${{ を使用できる。 ${{ のインスタンスはすべて ${ に置換される 

background 要素

<background> 要素は <execNative> 要素の子です。この要素が指定される場合、コマンドをバックグラウンドプロセスとして実行する必要があることを示します。 この要素には属性も子要素もありません。

<background> 要素が指定された <execNative> の場合、以下の制限が適用されます。

outputFile 要素

outputFile 要素は、実行されるコマンドの標準出力が格納される、エージェント上のローカルファイルのパスを指定するために使用されます。 ローカルファイルのパスは、outputFile 要素内の name 属性で指定します。 相対パスは、コマンドの作業ディレクトリに相対的であると解釈されます。

background 要素を指定する場合は、outputFile 要素を指定する必要があります。

outputFile を指定せず、successCriteria 要素で outputMatches も指定しないと、コマンドの各出力は格納されずに消失します。 outputMatches を指定すると、標準出力は一時ファイルに格納され、コマンドの実行後そのファイルが削除されます。

outputFile 属性

名前 

型 

必須 

構成可能 

説明 

name 

文字列 

はい 

可能 

コマンドの標準出力の書き込み先となるファイル。 空でない文字列を指定する必要がある  

errorFile 要素

errorFile 要素は、実行されるコマンドのエラー出力を格納する、エージェント上のローカルファイルのパスを指定するために使用されます。 ローカルファイルのパスは、errorFile 要素内の name 属性で指定します。 相対パスは、コマンドの作業ディレクトリに相対的であると解釈されます。

background 要素を指定する場合は、errorFile 要素を指定する必要があります。

errorFile を指定せずに、かつ successCriteria 要素で errorMatches を指定しないと、コマンドの各出力は格納されずに消失します。 errorMatches を指定すると、エラー出力は一時ファイルに格納され、コマンドの実行後そのファイルが削除されます。

errorFile 属性

名前 

型 

必須 

構成可能 

説明 

name 

文字列 

はい 

可能 

コマンドのエラー出力の書き込み先となるファイル。 空でない文字列を指定する必要がある  

inputText 子要素

<inputText> 要素は、<execNative> の子要素です。 <inputText> 要素は、コマンドの標準入力に送り込む必要がある任意のテキストを指定します。 このテキストは、この要素のコンテンツとして指定されます。

<inputText> は、CDATA セクションの入力を囲む目的で使用できます。入力を囲むことで、入力フォーマットを保持するとともに、文字 `& や `<' を含む入力で発生しえる解析エラーを防ぐことができます。

(例:


<execNative>
		<inputText> 		  ls –l |fgrep `*test*'|sort –u >file.out 
	</inputText> 		<command exec=”sh”/> </execNative> 

<inputText> を指定すると、<execNative> 手順の XML を生成する際に常に CDATA セクション内に包含されます。 inputText 内の文字はすべて、実行されるコマンドにそのままの形で送り込まれます。 inputText に空白文字だけを含めると、それらの空白文字は指定されているとおりに実行されるコマンドの標準入力に送り込まれます。

<inputText> のコンテンツは config 生成されます。

<inputText> 要素に属性はありません。

inputFile 子要素

<inputFile> 要素は、<execNative> の子要素です。 <inputFile> 要素は、実行されるコマンドの標準入力に送り込まれるコンテンツが入った、遠隔リモートエージェント上のローカルファイルのパスを指定するために使用されます。 ローカルファイルのパスは、<inputFile> 要素内の name 属性を使用して指定します。


注 –

<inputFile> 要素は、<execNative> コマンド内で <inputText> 要素と併用することはできません。


inputFile 要素属性

名前 

型 

必須 

構成可能 

説明 

name 

文字列 

はい 

可能 

コマンドの入力情報が入ったファイル。 空でない文字列を指定する必要がある。 相対パスを指定した場合、コマンドの作業ディレクトリに対して相対的であると解釈される 

exec 子要素

<execNative> 手順には <exec> 要素を 1 つしか含めることができません。 <exec> 要素は、実行されるネイティブコマンドの詳細を指定します。

<exec> 要素には次のものが含まれます。

<execNative> は、cmd 内に指定されたコマンドを、指定された引数を順に使用して直接実行します。

次に、<execNative> 手順の例を示します。


<execNative>
	<exec cmd=”ps”>
		<arg value=”-fu”/>
		<arg value=”sps”/>
	</exec>
</execNative> 

この手順は、コマンド ps –fu sps を実行します。

exec 要素属性

名前 

型 

必須 

構成可能 

説明 

cmd 

文字列 

はい 

可能 

実行するコマンドのパス。 指定したパスが絶対パスでない場合、RA の PATH 環境変数で指定されたプラットフォームを使用してコマンドの検索が行われる。 空でない文字列を指定する必要がある 

exec 要素の子要素

名前 

数 

説明 

arg 

0 またはそれ以上 

実行するコマンドの引数。 各 arg 要素は、コマンドに対する定位置パラメタを 1 つ定義する 

arg 子要素属性

名前 

型 

必須 

構成可能 

説明 

value 

文字列 

はい 

可能 

引数値 この引数は、arg がコマンド要素の n 番目の子であるコマンドに n 番目の引数として渡される 

shell 子要素

<shell> 要素は、<execNative> の子要素です。 <shell> 要素は、そのコンテンツとして実行されるコマンドを指定します。 実行されるコマンドは、cmd 属性で指定されるインタプリタによってインタプリトされます。 したがって、指定されるコマンドはそのプラットフォームの sh –c `command' 構文を使用して実行されます。 この書式では、コマンドの実行に使用するシェルコマンドを示すために cmd 属性を指定する必要があります。

(例:


<execNative>
	<shell cmd=”/usr/bin/bash -c”>
		ls –l |fgrep `*test*'|sort –u >file.out
	</shell>
</execNative> 

このコードは次のコマンドを実行します。


/usr/bin/bash –c `ls –l |fgrep `*test*'|sort –u >file.out' 

書式を保持するとともに XML の解析エラーを回避するため、<execNative> 手順から XML 表現を生成する際には常に CDATA 要素内にコマンドのテキストコンテンツが包含されます。

コマンド文字列を空の状態にしたり、空白文字だけを入れたりすることは認められません。 コマンド文字列は、(周囲の空白も含め) 指定されているとおりにシェルに送られます。

<shell> 要素のコンテンツは config 生成されます。

シェル要素の属性

名前 

型 

必須 

構成可能 

説明 

cmd 

文字列 

はい  

可能 

`sh –c' 構文内のシェルコマンド。 この文字列には、埋め込みの引用符文字を含めてはならない。 この文字列は、空白を区切りとして使用したシェル名と引数を取得するために解析される。 たとえば、`/usr/bin/bash –c' は空でない文字列でなければならない。 

successCriteria 要素

<successCriteria> 要素は、<execNative> の子要素です。 <successCriteria> 要素は、<execNative> 手順が正常に実行されたかを評価するために使用される基準を指定します。 この要素が指定されない場合のデフォルト値は次のとおりです。


<successCriteria status=”0”/> 

空の successCriteria を指定すると、successCriteria は無視されます。 次のタグを指定した場合には、


<successCriteria/> 

コマンドがどのような出力または終了コードを生成した場合でも、手順は常に成功します。

successCriteria 要素属性

名前 

型 

必須 

構成可能 

説明 

status 

整数 

いいえ (複数指定するとそれらの条件の AND (論理積) がとられる) 

不可 

コマンドの適切な終了ステータス。 正の整数でなければならない 

outputMatches 

文字列 

可能 

コマンドによって生成された標準出力を照合する正規表現。 空でない文字列を指定する必要がある 

errorMatches 

文字列 

はい 

コマンドによって生成された標準エラーを照合する正規表現。 空でない文字列を指定する必要がある 

inverse 

ブール型 

いいえ 

不可 

true に設定すると、successCriteria の echo 要素によって表現された条件は無視される。 デフォルト値は false。 つまり、successCriteria の各属性で指定された条件が満たされない場合だけ手順は成功する 

inverse 属性を true に設定すると、<successCriteria> 内で指定された各条件は無視されます。

たとえば、次の successCriteria を持つ <execNative> 手順の場合、


<successCriteria status=”1” outputMatches=”bin” errorMatches=”none” inverse=”true”/> 

ステータスが 1 でなく、出力が `bin' に一致せず、エラーが `none' に一致しない場合だけ成功します。

inverse 属性だけを含む <successCriteria> 要素は、inverse 属性なしで保存されます。 つまり、次のように指定すると、


<successCriteria inverse=”true”/> 

次のように保存されます。


<successCriteria/> 

結果的に、<successCriteria> は無視されます。

if 手順

手順ブロックを条件付きで実行するために使用される手順です。 この手順に属性はなく、子は <condition>、<then>、および <else> 要素から構成されます。

<condition> 要素のコンテンツが true に評価される場合、<then> ブロックの手順は実行されます。true に評価されない場合、<else> ブロックの手順が実行されます (存在する場合)。

if 手順の子要素

名前 

数 

説明 

condition 

評価する条件 

then 

条件が true の場合に実行する手順 

else 

0 または 1 

条件が true でない場合に実行する手順 

if 手順の例

以下に、条件付きで再起動するために使用される <if> 手順の例を示します。


<if>
	<condition><istrue value=":[restart]"/></condition>
	<then>
		<call blockName="restart"/>
	</then>
</if> 

condition 要素

<if> 手順の子要素であり、ブール式を指定します。 この要素に属性はありません。この要素は、ブール演算子の子要素を 1 つだけ含む必要があります。 許可されるブール演算子の詳細は、ブール演算子の節を参照してください。

then 要素

<if> 手順の子要素であり、関連付けられた条件が true の場合に実行する手順を指定します。 この要素には、<if> 手順を含むブロックのスコープ内で許可される手順をいくつでも含めることができます。

else 要素

<if> 手順の子要素であり、関連付けられた条件が true でない場合に実行する手順を指定します。 この要素には、<if> 手順を含むブロックのスコープ内で許可される手順をいくつでも含めることができます。

pause 手順

<pause> 手順は、指定された期間、プランの実行を一時的に中止します。 <pause> は、必要なサービスが起動されたあと、このサービスがオンラインになるのをプランに待機させるために使用できます。

pause 手順属性

名前 

型 

必須 

構成可能 

説明 

delaySecs 

positiveInteger 

はい 

不可 

待機する時間 (秒数)  

processTest Step

<processTest> 手順は、対象ホストで特定のプロセスが実行されているかを調べるために使用されます。 目的のプロセスが存在しない場合、手順は失敗し、実行が停止します。


注 –

この手順は、UNIX システムでの使用を意図したものです。


processTest 手順属性

名前 

型 

必須 

構成可能 

説明 

delaySecs 

positiveInteger 

はい 

不可 

プロセスが存在する場合にテストを実施する前に待機する時間 (秒数)  

timeoutSecs 

positiveInteger 

はい 

不可 

プロセスがオンラインになるのを待機する時間 (秒数)。この時間が経過すると失敗する。 この時間は、遅延時間が経過したあとからカウントされる  

processNamePattern 

文字列 

はい 

可能 

所期のプロセス名の照合に使用する glob スタイルパターン  

ユーザー 

文字列 

いいえ 

可能 

プロセス所有者の名前を照合するために使用される glob スタイルパターン。 指定しないと、プロセス所有者はテストの一環と見なされない  

raise 手順

常に失敗する手順 (<try> 手順における捕捉と処理は可能)。 この手順には「message」という属性だけが存在し、子はありません。

<raise> 手順は、人為的な手順を構築することなくエラー状況を示す手段として使用されます。 この手順の出現がもっとも多いのは <catch> ブロック内であり、クリーンアップ後のエラー状況を伝えるために使用されます。

raise 手順属性

名前 

型 

必須 

構成可能 

説明 

メッセージ 

文字列 

いいえ 

可能 

エラー状況を説明するメッセージ。 デフォルトは、システムで指定された一般的なメッセージ 

raise 手順の例

以下の例は、ログ内にエラーを見つけたあと <catch> ブロック内からエラー状況を再伝達するために <raise> 手順をどのように使用するかを示しています。


<control blockName="default">
	<try>
		<block>
			<!-- some arbitrary processing here -->
		</block>
		<catch>
			<!-- note error in log -->
			<execNative>
				<exec cmd="appendLog"> <arg value="an error occurred"/> </exec>
			</execNative>
			<!-- rethrow error -->
			<raise/>
		</catch>
	</try>
</control> 

reboot 手順

プランの残り部分を続行する前にエージェントにリブートを行わせる手順です。 この手順は、Windows ベースのプラットフォーム上でしか使用できません。 Windows 以外のプラットフォームで検出された場合は、エラーが発生します。 マスターサーバーと同じホスト上に存在するエージェントをリブートした場合もエラーとなります。 ここで説明しているエラーはプリフライトエラーです。

reboot 手順属性

名前 

型 

必須 

構成可能 

説明 

timeout 

正の Integer 

いいえ 

不可 

マシンの復帰を待機する最長時間 (秒数)。 指定しないと、プランの execNative タイムアウト期間が適用される 

retarget 手順

一連の手順の実行対象を変更する手順。 retarget 手順は入れ子にすることができます。

retarget 手順属性

名前 

型 

必須 

構成可能 

説明 

host 

文字列 

はい 

可能 

包含された手順の実行対象となるホスト  

retarget 手順の子要素

名前 

数 

説明 

varList 

0 または 1 

包含された手順で使用できる局所変数。 これらは、新しいホストのスコープ内で評価される 

steps 

0 またはそれ以上 

新しいホスト上で実行する手順。 <retarget> 手順を含むブロックのスコープ内で許可される任意の手順を指定できる 

retarget 手順の host 属性

host 属性は、各種のコンポーネントターゲッター要素内のほか、<retarget> 手順内でも使用できます。 この属性の値はホストの名前であり、置換変数参照を含むことができます。 また、シンボリック名「/」を含めて現在の実行対象のルート物理ホストを参照することも、あるいは「..(/..)*」を含めて現在の実行対象の親ホストを参照することもできます。 サポートされている全構文は、第 16 章の「ホストの切り替え」に示されています。


注 –

host 属性をコンポーネントターゲッター内に指定することは、包含する手順を retarget 手順内に含めることに意味的に同じです。


retarget 手順の実行意味論

<retarget> 手順が検出される場合、まず呼び出し側の現在のホストのコンテキストで「host」属性を評価します。

「host」属性の値が現在のホストの名前と異なる場合、以下の手順が実行されます。

  1. ホスト名を実際のホストに解決処理します。 そのようなホストが存在しない場合、エラーが発生します。

  2. 現在のユーザーがそのホストにおいて「プランの実行」アクセス権を所有しているかを検証します。 所有していない場合、エラーが発生します。

  3. このホストのルート物理ホストに RA が含まれていること、ルート物理ホストに接続可能なこと、およびルート物理ホストが最新の状態で準備が整っていることを確認します。 この条件が満たされない場合、エラーが発生します。

  4. 以前にアクセスしたすべてのホストでロックを保持したまま、このホストでロックを取得します。 現在の実行スレッドがすでにホストをロックしている場合、この処理は事実上ノーオペレーション (空命令) となります。 ホストがすでにほかの実行スレッドによってロックされている場合、この処理はホストのロックが解除されるまでブロックします。 ロック要求のためにデッドロックが起きた場合は、エラーが発生します。

  5. そのホストが新しい「現」ホストになります。 「物理」ホストは、新しい「現」ホストに基づいて再設定されます。 「初期」ホストは変化しません。

上記の手順が完了したところで、<varList> 要素の変数が新しい現ホストのコンテキストで評価されます。 局所変数は、包含するスコープの変数を隠蔽することができます 続いて、各手順が新しい現ホストのコンテキストで実行されます。

最後に、対象変更の処理によって現ホストが変わった場合には、そのロックが適宜解除され、その現ホストが呼び出し側の現ホストとして再設定されます。 現在の実行スレッドでホストが以前にロックされている場合は、ロックを初めに取得したブロックが完了するまでロックしたままとなります。


注 –

空の <retarget> ブロックは、現在のユーザーが適切なアクセス権を持っているかということと、ホストの準備が適切に行われているかということをあらかじめ検証するメカニズムとして依然として有用です。


retarget 手順の例

以下に、WebLogic 管理対象サーバー上で使用できる「再起動」制御サービスの例を示します。 このサービスは、管理サーバー上で制御を呼び出して管理対象サーバーを「停止」し、続いてローカルマシンで呼び出しを行なってサーバーを起動することによって実施されます。


注 –

「adminHostName」変数は、呼び出し側の現ホスト (これは管理対象サーバーを含んでいる vhost と見なされる) で評価されます。 domainName 変数は、新しい対象ホスト (これは管理サーバーを含んでいる vhost と見なされる) で評価されます。 ADMIN_SERVER コンポーネントも、新しい対象ホストで解決処理されます。



<control name="restart">
	<varList>
		<var name="adminHostName" default=":[target:adminHostName]"/>
	</varList>
	<retarget host=":[adminHostName]">
		<varList>
			<var name="domainName" default=":[target:domainName]"/>
		</varList>
		<call blockName="stopServer">
			<argList serverName=":[serverName]"
domainName=":[domainName]"/>
			<installedComponent name="ADMIN_SERVER"/>
		</call>
	</retarget>
	<call blockName="start"/>
</control> 

sendCustomEvent 手順

<sendCustomEvent> 手順は、特定のメッセージを使用してカスタムイベントを生成するために使用されます。 この手順を通知規則モジュールと併用することで、特定のホストでこの手順が検出されるたびに電子メールを送信できます。

sendCustomEvent 手順属性

名前 

型 

必須 

構成可能 

説明 

メッセージ 

文字列 

はい 

可能 

イベントテキストとして含めるメッセージ  

transform 手順

<transform> 手順は、対象ホスト上に含まれるファイルのテキストベース変換を行うために使用されます。 現時点では、Perl5 および XSLT ベースの変換がサポートされています。

transform 手順属性

名前 

型 

必須 

構成可能 

説明 

input 

文字列 

いいえ 

可能 

変換の適用先である、対象ホスト上のファイルの一般パス。 指定しないと、入力は出力ファイルから読み取られる 

output 

文字列 

はい 

可能 

変換結果の書き込み先である、対象ホスト上のファイルの一般パス 

input 属性と output 属性は、同じファイルまたは個別のファイルを参照できます。 input 属性と output 属性の値は、zip アーカイブ (または zip の派生フォーマットである JAR など) をディレクトリ要素として含むことができる一般パスです (例: webapp/myapp.jar/Configurablexml)。

transform 要素の子要素

<transform> 要素の子は、入力ファイルに適用される変換を指定します。 これらの子要素は、以下のどれでもかまいません。

stylesheet transform 子要素

<stylesheet> 要素は <transform> 手順の子であり、入力ソースに適用する XSLT 変換を指定します。 各 <transform> 要素の子として指定できるのは <stylesheet> 要素 1 つであり、ほかの子要素と併用はできません。

<stylesheet> 要素は、ネームスペース//www.w3.org/1999/XSL/Transform” で定義されているように XSLT バージョン 1.0 要素です。 詳細は、"http://www.w3.org/TR/xslt” に挙げられた XSLT 仕様を参照してください。 transform 要素の子として受け入れられるのは、XSLT <stylesheet> 要素だけです。 XSLT 仕様の節 2.3 で説明された XSLT シノニム <transform>、単純化された XSLT 変換構文とも、transform 要素の子としてはサポートされません。

stylesheet 要素本体には、本体が有効な XSLT と見なされるかぎり、初めに変数置換を行うことなく置換変数参照を含めることができます。

<stylesheet> 要素が変換として使用される場合、入力ファイルが XML 形式で記述されていると見なされます。

stylesheet 要素の例

以下に、XSLT 変換の例を示します。


<transform output="/etc/hosts">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:for-each select="a" >
<xsl:value-of select="b"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
</transform> 

subst transform 子要素

<subst> 要素は <transform> 手順の子であり、変換として適用する Perl5 ベースの置換パターンを指定します。 複数の <subst> 要素を <transform> 要素の子として指定できますが、ほかの子要素と併用はできません。 複数の <subst> 要素が出現する場合、それらは順次適用されます。

入力ファイル内に出現するパターンは、1 行内に複数出現している場合も含めすべて置換されます。

サポートされる構文の詳細は、Oro ドキュメント (class org.apache.oro.text.regex.Perl5Substitution) に入っています。

subst 要素属性

名前 

型 

必須 

構成可能 

説明 

match 

文字列 

はい 

可能 

入力内で検索される Perl5 正規表現 (大文字小文字の区別がなされる)  

replace 

文字列 

はい 

可能 

「match」で指定されたパターンが出現するごとに置換される Perl5 置換値。 この値は一語一語解釈されるのではなく、 構成体 $n が検索表現内で n 番目に出現する括弧付きの表現として解釈される  

subst 要素の例

以下の変換は、ファイル /etc/hosts 内のすべての文字列 127.0.0.xxx を 10.10.0.xxx に変換します。


<transform output=”/etc/hosts”>
 		<subst match=”127\.0\.0\.(\d+)” replace=”10.10.0.$1” />
</transform>

source transform 子要素

<source> 要素は <transform> 手順の子であり、入力ファイルに適用する変換が入っている、対象ホスト上の外部ファイルを指定します。 各 <transform> 要素の子として指定できるのは <source> 要素 1 つであり、ほかの子要素と併用はできません。


注 –

指定されたソースファイルに対して <transform> 手順の一部として config 生成が行われることはありません。 しかし、指定されたソースファイルが、コンポーネントインストールの一部として配備された config 型のリソースファイルである場合はあります。このようなケースでは、ソースファイルに含まれる置換変数は、通常、ソースファイルが配備された際に置換されています。


source 要素属性

名前 

型 

必須 

構成可能 

説明 

type 

次の 1 つ:  

PERL  

XSLT 

はい 

不可 

指定されたファイル内に含まれる変換のタイプ (詳細は下記)  

name 

文字列 

はい 

可能 

変換を含む、対象ホスト上のファイルの名前。 指定されたファイルのコンテンツは、「type」属性で定義された型に一致する必要がある。 この名前は、ディレクトリ要素として zip アーカイブを含むことはできない  

source 要素の type 属性

<source> 要素の「type」属性は、指定されたファイル内に含まれる変換の型を指定します。

値「PERL」は、<subst> 要素による変換に似た Perl5 ベースの変換を示します。 この場合、指定されるファイルは以下のような形式をとる必要があります。


<?xml version='1.0'?>
<transform>
	<subst match=”127\.0\.0\.(\d+)” replace=”10.10.0.$1” />
</transform> 

Perl 型の外部変換ファイルは、任意の数の <subst> 要素を含むことができます。

値「XSLT」は XSLT 変換を示します。 この場合、指定されたファイルには、ネームスペース「http://www.w3.org/1999/XSL/Transform」で定義されているように、標準の XSLT バージョン 1.0 変換が含まれます。 XSLT <stylesheet> 要素しか許可しないインライン変換と異なり、外部ソースファイルに含まれる XSLT 変換は XSLT 仕様の節 2.3 で説明しているように任意の有効な最上位 XSLT 変換要素 (<stylesheet>、<transform>、単純化された XSLT 構文など) を含むことができます。

try 手順

<try> 手順は、手順ブロックの典型的なエラー処理とクリーンアップロジックを指定するために使用されます。 この手順に属性はなく、子は <block>、<catch>、および <finally> 要素から構成されます。

<try> 手順は次のように実行されます。

<catch> 要素は、<block> 要素内で発生するエラーの抑制と、これらのエラーからの回復のために使用されます。 <finally> 要素は、典型的なエラーが検出されるかどうかにかかわらず、無条件でクリーンアップを行うために使用されます。

<try> 手順は、以下のように成否が決まります。

以上のことから、<block> 要素の失敗は <catch> 要素の存在で抑制できると言えます。

try 手順の子要素

名前 

数 

説明 

block 

初めに実行される手順 

catch 

0 または 1 

典型的なエラー時に実行される手順。 finally が指定されない場合に指定する必要がある 

finally 

0 または 1 

典型的なエラーであるかどうかにかかわらず実行される手順。 catch が指定されない場合に指定する必要がある  

try 手順の例

インストールにおいてリソースの配備と再起動を行う必要があるコンポーネントがある場合を考えてみます。 このケースでは、コンポーネントのインストールが完了したと見なされるのは、そのリソースが配備され、再起動時におけるエラーがそのインストール状態に影響を与えない場合だけです。 典型的なエラーは、以下のように再起動時に抑制できます。


<installSteps blockName="default">
	<deployResource/>
	<try>
		<block>
			<call blockName="restart"><thisComponent/></call>
		</block>
		<catch/><!-- suppress all typical errors -->  
	</try>
</installSteps> 

try ブロックは、インテリジェントな自動アップグレードをモデル化するためにも使用できます。 バージョン 1.1 のコンポーネントが存在し、バージョン 1.0 を以前にインストールしたことがあるかどうかに基づいて選択できる 2 つの異なるインストールルーチン、フレッシュインストールとアップグレードインストールが存在する場合を考えてみます。 このケースは、以下のように単一のインストールブロックとしてモデル化できます。


<installSteps blockName="default">
	<try>
		<block>
			<checkDependency>
				<installedComponent name="foo" version="1.0"/>
			</checkDependency>
			<!-- 1.0 install exists, do upgrade -->
		</block>
		<catch>
			<!-- 1.0 install doesn"t exist, do fresh install -->
		</catch>
	</try>
</installSteps> 

<finally> ブロックは、通常、一時リソースのクリーンアップに使用されます。 次の例では、一時ファイルの作成、処理、および削除が行われます。


<control blockName="default">
	<varList>
		<var name="file" default="/tmp/file.txt"/>
	</varList>
	<execNative outputFile=":[file]">
		<exec cmd="ls"><arg value="-l"/></exec>
	</execNative>
	<try>
		<block>
			<!-- process file in some way -->
		</block>
		<finally>
			<execNative>
				<exec cmd="rm"><arg value=":[file]"/></exec>
			</execNative>
		</finally>
	</try>
</control> 

block 要素

<block> 要素は <try> 手順の子要素であり、<try> 手順によって実行される主要な手順を指定します。 この要素には、<try> 手順を含んでいるブロックのスコープ内で許可される 1 つ以上の手順が含まれます。

catch 要素

<catch> 要素は <try> 手順の子要素であり、<block> 要素の手順を実行している際に典型的なエラーが発生する場合に実行する手順を指定します。 この要素には、<try> 手順を含んでいるブロックのスコープ内で許可される任意の数の手順を含めることができます。

<catch> 要素には、<block> 要素の典型的なエラーを抑制するという機能と、典型的なエラー回復作業を定義するという機能があります。 この要素は空にすることができます。空にすると、この要素は典型的なエラーの抑制だけを行います。

finally 要素

<try> 手順の子要素であり、<try> または <catch> 手順内で典型的なエラーが以前に発生したかどうかにかかわらず実行する手順を指定します。典型的なエラーには、プランの中断とプランのタイムアウトがあります (これらのエラーが発生した場合、<finally> 要素の手順はすべてまとめてスキップされる)。 この要素には、<try> 手順を含んでいるブロックのスコープ内で許可される任意の数の手順を含めることができます。

<finally> 要素は、ほかの典型的なエラー状況を考慮することなくクリーンアップを開始する必要がある場合に、主にリソースのクリーンアップと解放を行う手順を指定する目的で使用されます。

urlTest 手順

<urlTest> は、特定の URL のコンテンツが予期されたパターンに一致するかどうかを検証するために使用される手順です。 妥当なパターンに一致しない場合、手順は失敗し、実行が停止します。

urlTest 手順の属性

名前 

型 

必須 

構成可能 

説明 

delaySecs 

positiveInteger 

はい 

不可 

URL コンテンツのテストを実施する前に待機する時間 (秒数)  

timeoutSecs 

positiveInteger 

はい 

不可 

URL コンテンツの受け取りを待機する時間 (秒数)。この時間を過ぎると失敗する。 この時間は、遅延時間が経過したあとからカウントされる  

URL 

文字列 

はい 

可能 

コンテンツのテストが行われる URL。 現在サポートされているのは HTTP プロトコルだけ 

pattern 

文字列 

はい 

可能 

テストされる URL のコンテンツに一致すると予測される glob スタイルのパターン  

複合プラン専用の手順

この節では、複合プラン内でだけ使用できる手順を示します。 プラン内に含まれる手順は、プラン変数およびプランパラメタの参照を含むことができます。

execSubplan 手順

<execSubplan> 手順は、ほかのプランを実行するために使用される手順です。 <execSubplan> 手順は、compositeSteps> 要素の子としてしか指定できません。

execSubplan 手順属性

名前 

型 

必須 

構成可能 

説明 

planName 

entityName 

はい 

不可 

実行するプランの名前。 この手順を実行する際には、この名前を持つ、対応する最上位の <exectuionPlan> が存在しなければならない。 この名前でインラインサブプランを参照することはできない  

 

planPath 

pathReference 

いいえ 

不可 

実行するプランのパス。 指定しないと、包含するプランのパスが使用される 

planVersion 

Version 

いいえ 

不可 

実行するプランのバージョン。 指定しないと、指定されたプランの最新バージョンが使用される  

execSubplan 手順の子要素

名前 

数 

説明 

argList 

0 または 1 

呼び出されたプランに渡す引数の一覧。 呼び出されたプランの <paramList> セクション内の、デフォルト値が宣言されていないパラメタごとに、この <argList> によって宣言された対応する引数が存在しなければならない  

inlineSubplan 手順

<inlineSubplan> 手順は、連続した複数の手順を実行するために使用される手順です。 この手順は、<compositeSteps> 要素の子としてしか指定できません。

<inlineSubplan> 手順は <execSubplan> 手順に類似していますが、<execSubplan> 手順は実行する外部プランの名前を指定するのに対し、<inlineSubplan> 手順は子要素として実行するプランを直接包含します。 インラインサブプランと最上位プランの一番の違いは、インラインサブプランは別個の名前付きエンティティとして保存されず、<execSubplan> 手順によって外部から参照が行えないのに対し、最上位プランは別個の名前付きエンティティであり、<execSubplan> 手順からの参照が可能であることです。 インラインサブプランは、サブプランコンテンツが簡潔で呼び出し側プランのコンテキストとロジックに直接結合されている場合に便利です。このような場合以外は、スタンドアロンプランとして使用しても無意味です。 これらのケースでは、自己包含した 1 つのユニットに全手順を含めるとメンテナンスが容易になるほか、プランを読みやすくなります。

最上位プランと異なり、インラインサブプランはパラメタを宣言することはできません。 インラインサブプランは、包含するすべてのプランのパラメタと変数を暗黙に継承します。 インラインサブプランがそれ自身にローカルな変数を別途宣言することは可能であり、これにより包含するプランの変数とパラメタを隠蔽できます。 サブプラン変数と包含するプランの変数が同じ名前を持つと、サブプラン変数が包含するプランの変数を隠蔽します。 このようなケースでは、その手順で使用できるのは一番内側のサブプランによって宣言された変数の値だけです。

inlineSubplan 手順属性

名前 

型 

必須 

構成可能 

説明 

planName 

entityName 

はい 

不可 

インラインサブプランの特定に使用される名前。 この名前は主に表示目的で使用され、ほかのプラン (インラインまたは最上位) の名前と区別する必要はない  

 

説明 

文字列 

いいえ 

不可 

インラインサブプランの説明。ドキュメント化するのに便利 

inlineSubplan 要素の子要素

<inlineSubplan> 要素は、オプションの <varList> と、それに続く追加子要素 1 つで構成されます。この子要素は、インラインサブプランが単純プランであるか複合プランであるかに基づき、<simpleSteps> または <compositeSteps> です。

名前 

数 

説明 

<varList> 

0 または 1 

インラインサブプラン内で使用するプラン変数の一覧 

simpleSteps 

0 または 1 

管理手順の一覧を含む。 この要素または compositeSteps 要素のどちらかが存在しなければならないが、両方存在してはならない  

compositeSteps 

0 または 1 

複合手順の一覧を含む。 この要素または simpleSteps 要素のどちらかがが存在しなければならないが、両方存在してはならない 

単純プラン専用手順

この節では、単純プラン内でだけ使用できる手順を示します。


注 –

プラン内に含まれる手順は、そのプランによって宣言された変数のほか、すべての包含プランの隠蔽されていないあらゆる変数とパラメタを参照できます。


install 手順

<installStep> は、コンポーネントのリソースを対象ホストにインストールするために使用される手順です。 これにより、関連付けられたコンポーネントの指定された <installSteps> 要素の手順が実行されます。 この手順は、<simpleSteps> 要素の子としてしか指定できません。

install 手順属性

名前 

型 

必須 

構成可能 

説明 

blockName 

entityName 

はい 

不可 

対象コンポーネント内で実行されるインストールブロックの名前  

 

install 手順の子要素

名前 

数 

説明 

argList 

0 または 1 

<installSteps> ブロックに渡す引数の一覧 

repository component targeter 

インストールするコンポーネントを特定する 

uninstall 手順

<uninstallStep> は、対象ホスト上に現在インストールされているコンポーネントのリソースをアンインストールするために使用される手順です。 これにより、関連付けられたコンポーネントの指定された <uninstallSteps> 要素の手順が実行されます。 この手順は、<simpleSteps> 要素の子としてしか指定できません。

uninstall 手順属性

名前 

型 

必須 

構成可能 

説明 

blockName 

entityName 

はい 

不可 

対象コンポーネント内で実行するアンインストールブロックの名前  

uninstall 手順の子要素

名前 

数 

説明 

argList 

0 または 1 

<uninstallSteps> ブロックに渡す引数の一覧 

installed component targeter 

アンインストールするコンポーネントを特定する