27.5. Ant Bundles の作成
- Ant レシピファイルの名前
deploy.xml
- 関連するアプリケーションファイル。これらのアプリケーションファイルは、あらゆるものになりますが、一般的には 2 つのカテゴリーに分類されます。
- アーカイブファイル(JAR または ZIP ファイル)
- バンドルのデプロイ時にユーザーが値を定義するトークンが含まれる raw テキスト設定ファイル
27.5.1. サポート対象の Ant バージョン
ソフトウェア | version |
---|---|
ant | 1.8.0 |
Ant-Contrib | 1.0b3 |
27.5.2. 追加の Ant References
ant 情報リソース
- Apache Ant Documentation のメインページ
- Ant ビルドファイルのドキュメンテーション
- Liquibase データベーススキーマタスク
- ant-Contrib ドキュメント
27.5.3. Ant Recipe の内訳
deploy.xml
ます。
例27.1 Simple Ant Recipe
deploy.xml
ファイルをスクリプトとして識別し、provisioning Ant 要素を参照します。
<project name="test-bundle" default="main" xmlns:rhq="antlib:org.rhq.bundle">
<rhq:bundle name="Example App" version="2.4" description="an example bundle">
port
トークンでは 「Templatized 設定ファイルの使用」、<rhq:input-property> 要素はレシピで識別します。name
引数は token の input_field 値で、description
引数は UI で使用されるフィールドの説明と、値が必要であるかどうか、許可される構文、および指定するデフォルト値を設定します。(これはトークン自体を使用するファイルを一覧表示せず、トークン自体のみを使用します。)
<rhq:input-property name="listener.port" description="This is where the product will listen for incoming messages" required="true" defaultValue="8080" type="integer"/>
<rhq:deployment-unit name="appserver" preinstallTarget="preinstall" postinstallTarget="postinstall" compliance="filesAndDirectories">
/home/.rhqdeployments/
です/backup
。
name
は バンドル内の設定ファイルの 名前で、destinationFile はデプロイ後のファイルの相対パスおよびファイル名になります。
<rhq:file name="test-v2.properties" destinationFile="conf/test.properties" replace="true"/>
- 名前でアーカイブファイルを特定します。
- アーカイブの処理方法を定義します。簡単に説明すると、アーカイブをコピー先にコピーしてそのままにするか、アーカイブをアーカイブとしてそのままにするか、またはデプロイ後にアーカイブを抽出するかどうかを設定します。これはアーカイブの展開 と 呼ばれます。アーカイブが展開される場合は、必要に応じて、postinstall タスクを呼び出してファイルを移動するか、または編集できます。
- 永続する必要のあるトークンが含まれるアーカイブ内のファイルを特定します。これは子要素です <rhq:fileset>。これにより、ワイルドカードを使用してサブディレクトリーにファイルの種類やファイルを追加したり、処理するファイルを明示的に記述したりできます。
<rhq:archive name="MyApp.zip" exploded="true"> <rhq:replace> <rhq:fileset> <include name="**/*.properties"/> </rhq:fileset> </rhq:replace> </rhq:archive>
logs/
ディレクトリー内の *.log
ファイルはすべて保存されます。
<rhq:ignore> <rhq:fileset> <include name="logs/*.log"/> </rhq:fileset> </rhq:ignore> </rhq:deployment-unit> </rhq:bundle>
<target name="main" /> <target name="preinstall"> <echo>Deploying Test Bundle v2.4 to ${rhq.deploy.dir}...</echo> <property name="preinstallTargetExecuted" value="true"/> <rhq:audit status="SUCCESS" action="Preinstall Notice" info="Preinstalling to ${rhq.deploy.dir}" message="Another optional message"> Some additional, optional details regarding the deployment of ${rhq.deploy.dir} </rhq:audit> </target> <target name="postinstall"> <echo>Done deploying Test Bundle v2.4 to ${rhq.deploy.dir}.</echo> <property name="postinstallTargetExecuted" value="true"/> </target> </project>
27.5.4. Ant Task の使用
deploy.xml
ファイルです。Ant バンドルディストリビューションファイルは、Ant タスクやターゲットを含むより複雑な Ant 設定をサポートします。
27.5.4.1. サポート対象の Ant Task
deploy.xml
ファイル内のターゲットを <antcall> 呼び出し、再度呼び出しを行う <antcall> タスクを再度呼び出す deploy.xml
ファイルに対してループします。これにより無限ループが作成されます。
- 包括的な Ant-Contrib リソースへ 「追加の Ant References」 のリンクは、を参照してください。
27.5.4.2. デフォルト、インストール前、およびインストール後のターゲットの使用
<target name="main" />
27.5.4.3. Ant ターゲットの呼び出し
- Ant レシピ
deploy.xml
では、Ant ターゲットを識別する <rhq:deployment-unit> 要素を追加します。<rhq:deployment-unit name="jar" postinstallTarget="myExampleCall">
- 次に、ターゲットを定義します。
<target name="myExampleCall"> <ant antfile="another.xml" target="doSomething"> <property name="param1" value="111"></property> </ant> </target>
another.xml
ファイルと同じディレクトリーに別のdeploy.xml
ファイルを作成します。このファイルには Ant タスクが含まれます。<project name="another" default="main"> <target name="doSomething"> <echo>inside doSomething. param1=${param1}</echo> </target> </project>
27.5.5. Templatized 設定ファイルの使用
input_field=@@property@@
port=@@listener.port@@
<rhq:input-property name="listener.port" ... />
図27.3 プロビジョニング中のポートトークン
token | description |
---|---|
rhq.deploy.dir | バンドルがインストールされるディレクトリーの場所。 |
rhq.deploy.id | 特定のバンドルデプロイメントに割り当てられる一意の ID。 |
rhq.deploy.name | バンドルデプロイメントの名前。 |
@@rhq.system.hostname@@
トークン名 | 取得元... | Java API |
---|---|---|
rhq.system.hostname | Java API | SystemInfo.getHostname() |
rhq.system.os.name | Java API | SystemInfo.getOperatingSystemName() |
rhq.system.os.version | Java API | SystemInfo.getOperatingSystemVersion() |
rhq.system.os.type | Java API | SystemInfo.getOperatingSystemType().toString() |
rhq.system.architecture | Java API | SystemInfo.getSystemArchitecture() |
rhq.system.cpu.count | Java API | SystemInfo.getNumberOfCpus() |
rhq.system.interfaces.java.address | Java API | InetAddress.getByName(SystemInfo.getHostname()).getHostAddress() |
rhq.system.interfaces.network_adapter_name.mac | Java API | NetworkAdapterInfo.getMacAddress() |
rhq.system.interfaces.network_adapter_name.type | Java API | NetworkAdapterInfo.getType() |
rhq.system.interfaces.network_adapter_name.flags | Java API | NetworkAdapterInfo.getAllFlags() |
rhq.system.interfaces.network_adapter_name.address | Java API | NetworkAdapterInfo.getUnicastAddresses().get(0).getHostAddress() |
rhq.system.interfaces.network_adapter_name.multicast.address | Java API | NetworkAdapterInfo.getMulticastAddresses().get(0).getHostAddress() |
rhq.system.sysprop.java.io.tmpdir | Java システムプロパティー | |
rhq.system.sysprop.file.separator | Java システムプロパティー | |
rhq.system.sysprop.line.separator | Java システムプロパティー | |
rhq.system.sysprop.path.separator | Java システムプロパティー | |
rhq.system.sysprop.java.home | Java システムプロパティー | |
rhq.system.sysprop.java.version | Java システムプロパティー | |
rhq.system.sysprop.user.timezone | Java システムプロパティー | |
rhq.system.sysprop.user.region | Java システムプロパティー | |
rhq.system.sysprop.user.country | Java システムプロパティー | |
rhq.system.sysprop.user.language | Java システムプロパティー |
27.5.6. JBoss ON プロパティーおよび Ant プロパティーの処理
27.5.7. Ant Recipes の制限および考慮事項
27.5.7.1. サポートされない Ant Task
- <antcall> (代わりに、<ant> を使用して、Ant ターゲットを含むバンドルの個別の XML ファイルを参照するのに使用します)。
- <macrodef> マクロ定義
27.5.7.2. シンボリックリンク
<untar src="abc.tar.gz" compression="gzip" dest="somedirectory"/>
27.5.7.3. 警告: 管理対象(ターゲット)のディレクトリーおよび上書き/保存ファイル
- 現行ディレクトリーのファイルもバンドルに含まれます。この場合、バンドルファイルは常に現在のファイルを上書きします。(これに 1 つの例外があります。バンドルのファイルが更新されず、ローカルファイルと同じバージョンであるものの、ローカルファイルが変更されている場合。この場合、ローカルファイルは保持されます。)
- 現在のディレクトリーのファイルはバンドルに存在しません。この場合、バンドルは現在のディレクトリーのファイルを削除します。
コンプライアンス
デプロイするアプリケーションに関する情報はすべて、バンドルレシピの <rhq:deployment-unit> 要素で定義されます。<rhq:deployment-unit> 要素の compliance 属性は、プロビジョニングプロセスが deployment ディレクトリー内の既存のファイルを処理する方法を設定します。
/home/.rhqdeployments/
です/backup
。
<rhq:ignore>
バンドルのデプロイメント後も保持する必要のあるバンドルとは別に、アプリケーションによって使用または作成されるファイルが存在する可能性があります。これには、ログファイル、インスタンス固有の設定ファイル、イメージなどのユーザー提供のコンテンツなどが含まれます。これらのファイルはプロビジョニングプロセス中に無視でき、ファイルを削除するのではなく保存されます。
<rhq:ignore> <rhq:fileset> <include name="logs/*.log"/> </rhq:fileset> </rhq:ignore>
デプロイメントのクリーニング
compliance および <rhq:ignore> はいずれもレシピで設定されます。バンドルが実際にプロビジョニングされる時点で、クリーンなデプロイメント を実行するオプションがあります。clean デプロイメントオプションは、デプロイメントディレクトリーのすべてのものを削除し、レシピの compliance および <rhq:ignore> 設定にかかわらず、バンドルをクリーンディレクトリーにプロビジョニングします。
27.5.8. JBoss ON Ant Recipe 要素のリファレンス
27.5.8.1. rhq:bundle
attribute | description | Optional または Required |
---|---|---|
Name | バンドルに指定された名前。 | 必須 |
version | この特定のバンドルのバージョン文字列。バンドルには同じ名前を付けることはできますが、その名前の各バンドルには固有のバージョン文字列を指定する必要があります。これらのバージョン文字列は通常、1.0 またはなどのバージョン管理の OSGi スタイルに従い 1.2.FINALます。 | 必須 |
description | この特定のバンドルバージョンの分かりやすい説明。 | 任意 |
例27.2 rhq:bundle
<rhq:bundle name="example" version="1.0" description="an example bundle">
27.5.8.2. rhq:input-property
attribute | description | Optional または Required |
---|---|---|
Name | ユーザー定義プロパティーの名前。レシピ内では、このプロパティーを ${property_name の形式でこの名前で参照でき}ます。 | 必須 |
description | プロパティーの読み取り可能な説明。これは、バンドルのデプロイ時に JBoss ON バンドル UI に表示されるテキスト文字列です。 | 必須 |
type |
ユーザー定義の値で使用できる構文を設定します。以下のオプションは複数あります。
| 必須 |
必須 | 設定にプロパティーが必要であるか、または任意かを設定します。デフォルト値はで false、プロパティーは任意です。この引数を指定しない場合は、プロパティーが任意であることを前提とします。 | 任意 |
defaultValue | バンドルのデプロイ時にユーザーが値を定義しない場合に、使用するプロパティーの値を指定します。 | 任意 |
例27.3 rhq:input-property
<rhq:input-property name="listener.port" description="This is where the product will listen for incoming messages" required="true" defaultValue="8080" type="integer"/>
27.5.8.3. rhq:deployment-unit
attribute | description | Optional または Required |
---|---|---|
Name | アプリケーションの名前。 | 必須 |
コンプライアンス |
JBoss ON がバンドルがデプロイされているトップルートディレクトリー(デプロイメントディレクトリー)のすべてのファイルを管理すべきかどうかを設定します。filesAndDirectories の場合、トップデプロイメントディレクトリー(バンドルに含まれ ない ファイル)にある関連ファイルはすべて無視され、今後のバンドル更新のデプロイ時に上書きまたは削除されません。デフォルトは full です。これは、プロビジョニングプロセスがすべてのファイルおよびディレクトリーを管理し、バンドルにないものを削除または上書きすることを意味します。
root ディレクトリー内の既存のコンテンツは削除前にバックアップされるため、後で復元できます。バックアップディレクトリーは resourceID
/home/.rhqdeployments/ です/backup 。
| 任意 |
preinstallTarget | デプロイメントユニットのインストール前に呼び出される Ant ターゲット。 | 任意 |
postinstallTarget | デプロイメントユニットのインストール後に呼び出される Ant ターゲット。 | 任意 |
例27.4 rhq:deployment-unit
<rhq:deployment-unit name="appserver" preinstallTarget="preinstall" postinstallTarget="postinstall">
27.5.8.4. rhq:archive
attribute | description | Optional または Required |
---|---|---|
Name |
バンドルに追加するアーカイブファイルのファイル名。
重要
アーカイブファイルがバンドルディストリビューションの ZIP ファイル内の Ant レシピファイルでパッケージ化されている場合は、ZIP ファイルのアーカイブファイルの場所への 相対パス を含める name 必要があります。
| 必須 |
Exploqued | アーカイブのコンテンツがバンドル宛先ディレクトリー(true)に抽出および保存されるかどうか、または name 属性(false)に指定されるファイルと同じ相対ディレクトリーに保存するかどうかを設定します。ファイルが展開される場合、デプロイメントディレクトリーから展開されます。インストール後のターゲットは、展開後にファイルを移動するために使用できます。 | 任意 |
destinationDir | このアーカイブまたは展開形式の結果がコピーされるディレクトリー。これが相対パスである場合、バンドルのデプロイ時にユーザーが指定するデプロイメントディレクトリーと相対的です。これが絶対パスである場合、ファイルがコピーされるファイルシステムの場所になります。この属性は、コピー先のファイルのディレクトリーを設定します。実際のファイル名は name 属性に設定されます。 | 任意 |
例27.5 rhq:archive
<rhq:archive name="file.zip"> <rhq:replace> <rhq:fileset> <include name="**/*.properties"/> </rhq:fileset> </rhq:replace> </rhq:archive>
27.5.8.5. rhq:url-archive
rhq:archive
点が異なります。
attribute | description | Optional または Required |
---|---|---|
url |
アーカイブファイルの場所に URL を指定します。アーカイブがデプロイメントディレクトリーにダウンロードされ、インストールされます。
注記
バンドルが正常にデプロイされるようにするには、このバンドルがデプロイされるすべてのエージェントマシンから URL にアクセスできる必要があります。エージェントが URL にアクセスできない場合、アーカイブをプルダウンできず、これをマシンにデプロイすることができません。
| 必須 |
Exploqued | true の場合、アーカイブのコンテンツは展開され、バンドル宛先ディレクトリーに保存されます。false の場合、zip ファイルは圧縮され、最上位の宛先ディレクトリーに保存されます。
注記
ファイルが展開される場合、デプロイメントディレクトリーから展開されます。インストール後のターゲットは、展開後にファイルを移動するために使用できます。
| 任意 |
destinationDir | このアーカイブまたは展開形式の結果がコピーされるディレクトリー。これが相対パスである場合、バンドルのデプロイ時にユーザーが指定するデプロイメントディレクトリーと相対的です。これが絶対パスである場合、ファイルがコピーされるファイルシステムの場所になります。この属性は、コピー先のファイルのディレクトリーを設定します。実際のファイル名は name 属性に設定されます。 | 任意 |
例27.6 rhq:url-archive
<rhq:url-archive url="http://server.example.com/apps/files/archive.zip"> <rhq:replace> <rhq:fileset> <include name="**/*.properties"/> </rhq:fileset> </rhq:replace> </rhq:url-archive>
27.5.8.6. rhq:file
attribute | description | Optional または Required |
---|---|---|
Name |
未編集設定ファイルの名前。
重要
設定ファイルがバンドルディストリビューションの ZIP ファイル内の Ant レシピファイルでパッケージ化されている場合は、ZIP ファイル内のファイルの場所への 相対パス を含める name 必要があります。
| 必須 |
destinationFile |
宛先リソースのファイルの完全なパスおよびファイル名。相対パスは、最終的なデプロイメントディレクトリー(バンドルのデプロイ時に
rhq.deploy.dir パラメーターで定義)への相対パスである必要があります。ディレクトリーとファイル名の両方が指定されていれば、絶対パスを使用することもできます。
注記 destinationDir 属性が使用されると、destinationFile 属性は使用 できません。
| 必須(destinationDir を使用しない場合) |
destinationDir |
このファイルがコピーされるディレクトリー。これが相対パスである場合、バンドルのデプロイ時にユーザーが指定するデプロイメントディレクトリーと相対的です。これが絶対パスである場合、ファイルがコピーされるファイルシステムの場所になります。
この属性は、コピー先のファイルの ディレクトリー を設定します。実際のファイル名は
name 属性に設定されます。
destinationFile 属性が使用されると、destinationDir 属性は使用 できません。
| 必須(destinationFile を使用しない場合) |
replace | ファイルがテンプレート化され、トークンの値を取得するために追加の処理が必要であるかどうかを示します。 | 必須 |
例27.7 rhq:file
<rhq:file name="test-v2.properties" destinationFile="subdir/test.properties" replace="true"/>
destinationDir
destinationFile
属性も使用しない場合、raw ファイルはバンドルディストリビューションの場所として deployment ディレクトリー配下の同じ場所に置かれます。
27.5.8.7. rhq:url-file
rhq:file
、にあるように、トークンの値を持つアプリケーションの設定ファイルを特定して処理するための情報が含まれます。このオプションは、バンドルアーカイブに含めるのではなく、指定の URL からダウンロードされるリモートファイルを指定します。
attribute | description | Optional または Required |
---|---|---|
url |
テンプレートファイルに URL を指定します。このファイルは、デプロイメントディレクトリーにダウンロードされ、インストールされます。
注記
バンドルが正常にデプロイされるようにするには、このバンドルがデプロイされるすべてのエージェントマシンから URL にアクセスできる必要があります。エージェントが URL にアクセスできない場合、アーカイブをプルダウンできず、これをマシンにデプロイすることができません。
| 必須 |
destinationFile |
宛先リソースのファイルの完全なパスおよびファイル名。相対パスは、最終的なデプロイメントディレクトリー(バンドルのデプロイ時に
rhq.deploy.dir パラメーターで定義)への相対パスである必要があります。ディレクトリーとファイル名の両方が指定されていれば、絶対パスを使用することもできます。
注記 destinationDir 属性が使用されると、destinationFile 属性は使用 できません。
この属性には、パス名とファイル名の両方を指定する必要があります。
| 必須(destinationDir を使用しない場合) |
destinationDir |
このファイルがコピーされるディレクトリー。これが相対パスである場合、バンドルのデプロイ時にユーザーが指定するデプロイメントディレクトリーと相対的です。これが絶対パスである場合、ファイルがコピーされるファイルシステムの場所になります。
この属性は、コピー先のファイルの ディレクトリー を設定します。実際のファイル名は
name 属性に設定されます。
destinationFile 属性が使用されると、destinationDir 属性は使用 できません。
| 必須(destinationFile を使用しない場合) |
replace | ファイルがテンプレート化され、トークンの値を取得するために追加の処理が必要であるかどうかを示します。 | 必須 |
例27.8 rhq:url-file
<rhq:url-file url="http://server.example.com/apps/files/test.conf" destinationFile="subdir/test.properties" replace="true"/>
destinationDir
destinationFile
属性も使用しない場合、raw ファイルはバンドルディストリビューションの場所として deployment ディレクトリー配下の同じ場所に置かれます。
27.5.8.8. rhq:property
attribute | description | Optional または Required |
---|---|---|
relativeToDeployDir
|
file 属性も使用され、相対パスである場合にのみ該当します。
デフォルトは false です。
true の場合、ファイルはバンドルのデプロイメントが実行される作業ディレクトリーの代わりにバンドルのデプロイディレクトリーに対して解決されます。
|
任意
|
27.5.8.9. rhq:audit
rhq:audit
設定は追加の処理手順とその結果に関する情報をサーバーに送信します。
attribute | description | Optional または Required |
---|---|---|
status | 処理のステータス。使用できる値は SUCCESS、WARN、および FAILURE です。デフォルトは SUCCESS です。 | 任意 |
action | 処理ステップの名前。 | 必須 |
info | アクションのターゲット名や影響を受けるファイル名など、アクションの実行内容の短い概要。 | 任意 |
message | アクションに関する追加情報を提供する簡単なテキスト文字列。 | 任意 |
例27.9 rhq:audit
<rhq:audit status="SUCCESS" action="Preinstall Notice" info="Preinstalling to ${rhq.deploy.dir}" message="Another optional message"> Some additional, optional details regarding the deployment of ${rhq.deploy.dir} </rhq:audit>
27.5.8.10. rhq:replace
例27.10 例
<rhq:archive name="file.zip"> <rhq:replace> <rhq:fileset> <include name="**/*.properties"/> </rhq:fileset> </rhq:replace> </rhq:archive>
27.5.8.11. rhq:ignore
/opt/myapp
、バンドル B にデプロイされます /opt/myapp/webapp1
)。
例27.11 rhq:ignore
<rhq:ignore> <rhq:fileset> <include name="logs/*.log"/> </rhq:fileset> </rhq:ignore>
27.5.8.12. rhq:fileset
子要素 | description |
---|---|
<include name=filename /> | ファイルのファイル名。この場合 <rhq:replace>、これはアーカイブ(JAR または ZIP)ファイル内のファイルで、テンプレート化され、トークンの値が含まれる必要があります。これは <rhq:ignore>、アプリケーションのデプロイメントディレクトリーにあるファイルで、バンドルのアップグレード時に無視され、保持されるはずです。 |
例27.12 rhq:fileset
<rhq:replace> <rhq:fileset> <include name="**/*.properties"/> </rhq:fileset> </rhq:replace>
27.5.8.13. rhq:system-service
attribute | description | Optional または Required |
---|---|---|
Name | スクリプトの名前。 | 必須 |
scriptFile | スクリプトのファイル名スクリプトファイルがバンドルディストリビューションの ZIP ファイル内の Ant レシピファイルでパッケージ化されている場合は、ZIP ファイルのファイルの場所への 相対パス を含める scriptFile 必要があります。 | 必須 |
configFile | スクリプトによって使用される設定またはプロパティーファイルの名前。設定ファイルがバンドルディストリビューションの ZIP ファイル内の Ant レシピファイルでパッケージ化されている場合は、ZIP ファイルのファイルの場所への 相対パス を含める configFile 必要があります。 | 任意 |
overwriteScript | 既存の init ファイルを上書きしてアプリケーションをシステムサービスとして設定するかどうかを設定します。 | 任意 |
startLevels | アプリケーションサービスの実行レベルを設定します。 | 任意 |
startPriority | アプリケーションサービスの起動順序または優先度を設定します。 | 任意 |
stopPriority | アプリケーションサービスの停止順序または優先度を設定します。 | 任意 |
例27.13 rhq:system-service
<rhq:system-service name="example-bundle-init" scriptFile="example-init-script" configFile="example-init-config" overwriteScript="true" startLevels="3,4,5" startPriority="80" stopPriority="20"/>
27.5.8.14. rhq:handover
attribute | description | Optional または Required |
---|---|---|
action | ターゲットリソースコンポーネントが実行するアクションの名前。 | 必須 |
FailOnError | ターゲットリソースコンポーネントが失敗を報告すると ANT レシピビルドが失敗するかどうか。true または false。デフォルトは true です。 | 任意 |
- <rhq:file>
- <rhq:url-file>
- <rhq:archive>
- <rhq:url-archive>
例27.14 rhq:handover
<rhq:file name="prepareDatasource.cli" replace="true"> <rhq:handover action="execute-script" failonerror="false"/> </rhq:file> <rhq:archive name="website.war"> <rhq:handover action="deployment"> <rhq:handover-param name="runtimeName" value="${myapp.runtime.name}"/> <rhq:handover-param name="serverGroup" value="${server.group}"/> </rhq:handover> </rhq:archive>
prepareDatasource.cli
ファイルの内容は、website.war
アーカイブコンテンツの前に常にターゲットリソースコンポーネントに渡されます。
27.5.8.15. rhq:handover-param
attribute | description | Optional または Required |
---|---|---|
Name | パラメーターの名前 | 必須 |
値 | 値の名前。 | 必須 |
rhq:handover-param
子タグを持つことができます。
例27.15 rhq:handover-param
<rhq:file name="prepareDatasource.cli" replace="true"> <rhq:handover action="execute-script" failonerror="false"/> </rhq:file> <rhq:archive name="website.war"> <rhq:handover action="deployment"> <rhq:handover-param name="runtimeName" value="${myapp.runtime.name}"/> <rhq:handover-param name="serverGroup" value="${server.group}"/> </rhq:handover> </rhq:archive>