前のトピック: assignGroupToTarget — グループのターゲットへの割り当て次のトピック: createGroup—グループの作成


コマンドで指定された属性は、生成されるすべてのジョブのデフォルトとなります。 プロシージャ グループの場合、ソフトウェア グループでどのプロシージャが実行されるかについては明確ですが、これは確定していません。 ソフトウェア グループ製品のデフォルトとして、そのジョブに対する製品のデフォルト インストール ルーチンがコマンドによって選択されます。 これらのデフォルトはすべて、「procedures」ファイルで追加指定することにより上書きできます。

「procedures」ファイルが指定されているとします。 プロシージャ グループの各エントリについて、プロシージャまたは製品が指定の「procedures」ファイルにあるかどうかが確認されます。 指定がない場合、コマンドのデフォルトを使用してジョブが生成されます。指定された場合は、最初に一致する「procedures」ファイルのエントリ指定によってデフォルトが上書きされ、これらの変更された属性を使用してジョブが生成されます。 ジョブは、グループ内でソートされているプロシージャの順番で生成されます。

たとえば、ドメイン マネージャの場合は、以下のようなプロシージャ グループおよびコマンドを想定します。

pg:
........プロシージャ:........configure_001
................製品........test_001
................バージョン........1.0
........プロシージャ:........activate_002
................製品........test_002
................バージョン........1.1

cadsmcmd swlibrary action=assignGroupToTarget name=pg computer=tar01 after=exacttime prompUser allowCancel Parameters="-xon xf -rs" procedures=c:¥temp¥procFile.txt

さらに進んで、c:¥temp¥procFile.txt に以下の内容が含まれていると想定します。

Item=test_002 version=1.1 procedure=activate_002 task=activate after=boottime allowCancel=n GlobalTime=y Parameters="" 

2 つのジョブが生成されます。 最初のジョブは configure_001 に対するジョブで、コマンドの属性、つまり、after=exacttime, promptUser, cancelAllow および Parameters="-xon xf -rs" は、デフォルトとして使用されます。 2 番目のジョブは activate_002 に対して生成され、この場合はコマンドからのデフォルトも使用されます。ただし、デフォルトの一部は、関連する「procedures」ファイルのエントリによって上書されます。 この結果、ジョブの属性は after=boottime、promptUser および GlobalTime となり、allowCancel は設定されず Parameters は空になります。

ソフトウェア グループの場合、製品が「procedures」ファイルのエントリに一致するときにのみ確認されます。 検出された最初のエントリが使用されます。 一致しているエントリで指定されたプロシージャおよび指定されたパラメータによりデフォルトが上書きされ、これらの変更された属性を使用してジョブが生成されます。

たとえば、ドメイン マネージャの場合、以下のようなソフトウェア グループおよびコマンドになります。

swg:
........製品:........test_011
................バージョン........2.1
................デフォルト インストール プロシージャ........inst_011
........製品:........test_012
................バージョン........2.2
................デフォルト インストール プロシージャ........inst_012

cadsmcmd swlibrary action=assignGroupToTarget name=swg computer=tar01 after=exacttime prompUser allowCancel Parameters="-xon xf -rs" preaction=logoff procedures=c:¥temp¥procFile.txt

さらに進んで、c:¥temp¥procFile.txt に以下の内容が含まれていると想定します。

Item=test_012 version=2.2 procedure=activate_012 task=activate after=boottime allowCancel=n GlobalTime=y Parameters="-cleanUp" 
Item=test_011 version=2.0 procedure=activate_011 task=activate allowCancel=n GlobalTime=y Parameters="-format" 

2 つのジョブが生成されます。 最初のジョブは、バージョン 2.1 の製品 test_011 製品およびデフォルト プロシージャ inst_011 を使用するインストール ジョブ用です。 ジョブは、「プロシージャ」ファイルに一致するエントリがないため、たとえ製品 test_011 がファイル内で参照されていても別のバージョンであるため、ジョブはコマンドのデフォルト設定を使用して生成されます。 したがって、ジョブは属性 after=exacttime, promptUser, allowCancel および Parameters="-xon xf -rs" を使用して生成されます。

2 番目のジョブはバージョン 2.2 の製品 test_012 に対して生成されます。 ここでは「procedures」ファイルの中に一致するエントリがあるため、コマンドはエントリの属性で更新され、そのコマンドによりデフォルトが指定されます。作成されたジョブは起動プロシージャ activate_012 で使用され、属性は after=boottime, promptUser, GlobalTime, preaction=logoff および Parameters="-cleanUp" となりますが、allowCancel は設定されません。

ソフトウェア グループは階層構造を持つ、つまり、ソフトウェア グループに別のソフトウェア グループまたはプロシージャ グループが含まれている場合があります。 コマンドは、再帰的に動作します。つまり、コマンドによりサブグループが評価され、そのエントリに対してジョブが生成されます。 階層グループ構造を使用すると、ユーザは、この階層の中では製品およびプロシージャが一意であることを考慮する必要があります。 たとえば、以下の構造について検討します。

swg:(ソフトウェア グループ)
........製品:........test_001
................バージョン........2.1
................デフォルト インストール プロシージャ........inst_001
........製品:........test_022
................バージョン........1.1/00
................デフォルト インストール プロシージャ........inst_022
swg_1:(ソフトウェア グループ)
........製品........test_010
................バージョン........1.0
................デフォルト インストール プロシージャ........inst_010
........製品:........test_001
................バージョン........2.1
................デフォルト インストール プロシージャ........inst_001
pg_11:(プロシージャ グループ)
........プロシージャ:........configure_001
................製品........test_001
................バージョン........2.1
........プロシージャ:........activate_022
................製品........test_022
................バージョン........1.1/00
pg_1:(プロシージャ グループ)
........プロシージャ:........configure_022
................製品........test_022
................バージョン........1.1/00
........プロシージャ:........activate_022
................製品........test_022
................バージョン........1.1/00

このグループに対してコマンドを起動すると、警告が表示されて一部の製品およびプロシージャが無視されます。 このコマンドでは、swg_1 内のバージョン 2.1 の製品 test_001 はすでに swg で指定されているため保持され、同様に pg_11 の 1.1/00 の製品 test_022 の プロシージャ activate_022 はすでに pg_1 で指定されているため保持されます。 「プロシージャ」ファイルがコマンドによってコーディングされている場合、エントリが一致するかどうか最初にプロシージャ グループが検査されます。 すべて完了した後、階層のソフトウェア グループが「procedure」ファイルの残りのエントリ、つまり、プロシージャ グループ内ですでに使用されていないエントリに対して確認されます。

たとえば、前述の swg 構造およびドメイン マネージャ上の以下のコマンドについて検討します。

cadsmcmd swlibrary action=assignGroupToTarget name=swg computer=tar01 after=exacttime promptUser allowCancel Parameters="-xon xf -rs" procedures=c:¥temp¥procFile.txt

さらに進んで、c:¥temp¥procFile.txt に以下の内容が含まれていると想定します。

Item=test_001 version=2.1 procedure=configure_001 task=configure allowCancel=n Parameters="-init" preaction=reboot
Item=test_001 version=2.1 procedure=install_min task=install allowCancel=n Parameters="-x -y -z" preaction=logoff postaction=reboot
Item=test_022 version=1.1/00 procedure=configure_022 task=configure preaction=logoff Repeat noCalendar
Item=test_022 version=1.1/00 procedure=activate_022 task=activate preaction=logoff Repeat noCalendar

これは、以下の属性をもつジョブを生成します。

test_001 2.1: install_min
task=install
after=exacttime
promptUser
Parameters="-x -y -z" 
preaction=log0ff
postaction=reboot
test_022 1.0/00:inst_002
task=install
after=exacttime
promptUser
allowCancel
Parameters="-xon xf -rs" 
test_022 1.0/00:configure_022 
task=configure
after=exacttime
preaction=logoff
promptUser
allowCancel
Repeat
noCalendar
Parameters="-xon xf -rs" 
test_022 1.0/00:activate_022 
task=activate
after=exacttime
preaction=logoff
promptUser
allowCancel
Repeat
noCalendar
Parameters="-xon xf -rs" 
test_010 1.0:inst_010
task=install
after=exacttime
promptUser
allowCancel
Parameters="-xon xf -rs" 
test_001 1.0/00:configure_001
task=configure
after=exacttime
promptUser
Parameters="-init" 
preaction=reboot

swg_1 のバージョン 2.1 の test_001 と、 および in pg_11 のバージョン 1.1/00 の test_022 の activate_022 は無視されます。

プロシージャ ファイルのエントリは、以下の形式になります。

item=item 
version=version 
procedure=procedure task={install|configure|activate|uninstall}
[deliverytime="YYYY-MM-DD hh:mm" ] 
[attime="YYYY-MM-DD hh:mm" ]
[after={exacttime|boottime}] [calendarname=deliverycalendar]
[preaction={none|reboot|logoff}]
[postaction={none|reboot|logoff|rebootAtEnd|logoffAtEnd}]
[promptUser={y|n}] 
[allowCancel={y|n}] 
[execTimedOut={y|n}] 
[prompt=days.hours]
[offline={y|n}] 
[RunAtShutdown={y|n}] 
[PreventLogon={y|n}] 
[GlobalTime={y|n}] 
[nocalendar={y|n}]
[ResolveQuery={y|n}] 
[Parameters=userparameter]
[repeat={y|n}] 
[stagingserver={y|n}]
[JobTimeout=d.h]

item

このエントリが関連付けられているグループ項目の名前

version

このエントリが関連付けられているグループ項目のバージョン

procedure

実行する項目プロシージャを指定します

task

プロシージャ タイプを指定します。 有効なタイプは以下のとおりです。

install

プロシージャで項目をインストールします。

configure

プロシージャで項目を設定します。

activate

プロシージャで項目を起動します。

uninstall

プロシージャで項目をアンインストールします。

このパラメータをコーディングしないと、install を指定したものとみなされます。

item、version、procedure、task の各パラメータは、各行の最初のパラメータとしてコーディングする必要があります。また、上記の構文定義に示したのと同じ順序でコーディングする必要があります。 そのほかのパラメータは、任意の順序でコーディングできます。

他のパラメータの意味は、前述のコマンド パラメータに対応しています。 y をコーディングするとパラメータが設定され、そうでない場合は設定されません。 設定されなかったパラメータについては、それぞれのコマンドのパラメータ設定からデフォルトが取得されます。

グループ q_grp で指定されるターゲットに配信する必要のあるソフトウェア グループ swg_1 について検討します。 swg_1 には以下の内容および構造があります。

cadsmcmd swlibrary action=listswg name=swg_1
CA IT Client Manager r12
ITCM Command Line Version 12.8.0.xxxx
Copyright © 2013 CA. All rights reserved.
トレース モード: オフ

マネージャ "default manager" にユーザ "<default user>" として接続しています...OK。
マネージャ: mymanager
ドメイン: mydomain
ドメイン タイプ: Domain
サポート: CO CCNF USD OSIM AM

-------------------------------------------------------------------------------
プロシージャ グループ "swg_1" のメンバをリストします" 
-------------------------------------------------------------------------------
InstallActivateConfigureUninstall 1 <Generic>, <Regular>, 3(0), schbe05, 
ユーザ パラメータとして返される必要のある終了コードを渡します。
TransferComplexDirectoryStructure 1 <Generic>, <Regular>, 329(0), QA Mch schir03, 
複雑なディレクトリ構造の SD Package です。

SDCMD<A000000>: OK

使用されるジョブ コンテナの要件は以下のとおりであると想定します。

すべてのジョブに対して生成されるデフォルトは、以下のとおりです。

各ジョブおよび項目の個々の要件は、以下のとおりです。

関連するジョブを配信および実行するには、コマンド assignGroupToTarget を使用します。 いくつかのジョブに個別要件があるため、そのような個々の要件を記述するにはプロシージャ ファイルが必要です。 このプロシージャ ファイルの内容は、以下のとおりです。

item=tstbase version=1.0 procedure=remdir task=configure postaction=reboot
item=tstbase version=1.0 procedure=setdir task=configure postaction=reboot
item=tstbase version=1.0 procedure=inst task=install preaction=logoff preventLogon

以下のコマンドでは、デフォルト名のジョブ コンテナ作成、必要なジョブへの格納、および実行のためスケジュールを行います。

cadsmcmd swlibrary action=assignGroupToTarget name=swg_1 compgrp=q_grp transaction rollback deliveryTime="2005-06-30 13:00" atTime="2005-07-05 01:00" after=exacttime resolveQuery procedures=c:¥temp¥proc.usd
CA IT Client Manager r12
ITCM Command Line Version 12.8.0.xxxx
Copyright © 2013 CA. All rights reserved.

マネージャ "wwwww01b" にユーザ "<デフォルト ユーザ>" として接続しています...OK。

q_grp [04/11/02 10:44:10.093] という名前のコンテナが作成されました。
グループ swg_1 の評価
グループ swg_1/pg_1 の評価
プロシージャ ファイル c:¥temp¥proc.usd の評価
ジョブ "tstbase 1.0:inst" を生成します: OK。
ジョブ "DMS Editor 6.01.0000:Local Install" を生成します: OK。
ジョブ "stbase 1.0:remdir" を生成します: OK。
ジョブ "tstbase 1.0:setdir" を生成します: OK。
ジョブ "tstkpk01 1.0:inst" を生成します: OK。

SDCMD<A000000>: OK

以下のコマンドによって、生成されたジョブ コンテナが表示されます。

cadsmcmd jobContainer action=showAttr name="q_grp [04/11/02 10:44:10.093]" 
CA IT Client Manager r12
ITCM Command Line Version 12.8.0.xxxx
Copyright © 2013 CA. All rights reserved.

マネージャ "wwwww01b" にユーザ "<デフォルト ユーザ>" として接続しています...OK。

-------------------------------------------------------------------------------
ジョブ コンテナ「q_grp [04/11/02 10:44:10.093]」の属性の表示 
-------------------------------------------------------------------------------
ジョブ コンテナ名.....................: q_grp [04/11/02 10:44:10.093]
ジョブ コンテナ プロパティ...............: 28
.........................................トランザクション
.........................................失敗した場合には以前のジョブにロールバックします
.........................................カスケード インストール
封印済み.................................: Yes
作成時間.............................: 2005-04-11 10:45
変更時間.............................: 2005-04-11 10:45
含まれているオブジェクトの数............: 5
ジョブ コンテナ ステータス....................: 待機
.........................................3 - ジョブが待機しています
.........................................0 - ジョブがアクティブになっています
.........................................2 - ジョブは OK です
.........................................0 - ジョブが失敗しました

ジョブ名...............................: tstbase 1.0:inst
..全体ステータス........................: WAITING
.........................................2 - ジョブ ターゲットが待機中です
.........................................0 - ジョブ ターゲットがアクティブです
.........................................0 - ジョブ ターゲットは OK です
.........................................0 - ジョブ ターゲットが失敗しました
..ジョブの順序番号.....................: 0
..作成時間...........................: 2005-06-30 13:00
..起動時間..........................: 2005-07-05 01:00
..ステータス メッセージ.......................: OK
..ターゲット...............................: KKKKK01B
....タスク...............................: install
....ジョブ ステータス..........................: WAITING
....タスク...............................: install
....開始時間.........................: 2005-07-05 01:00
....完了時間                         : 2005-04-11 10:45
....作成時間.........................: 2005-04-11 10:45
....送信済みデータ(パーセント)..............:
..ステータス メッセージ.....................: OK
....注文者.........................: KKKKK01
....タイプ...............................: 必須
....コメント............................:
..ターゲット..............................: KKKKK01C
....タスク...............................: install
....ジョブ ステータス..........................: WAITING
....タスク...............................: install
....開始時間.........................: 2005-07-05 01:00
....完了時間                         : 2005-04-11 10:45
....作成時間.........................: 2005-04-11 10:45
....送信済みデータ(パーセント)..............:
..ステータス メッセージ.....................: OK
....注文者.........................: KKKKK01
....タイプ...............................: 必須
....コメント............................:

ジョブ名...............................: DMS Editor 6.01.0000: ローカル インストール
..全体ステータス........................: WAITING
.........................................2 - ジョブ ターゲットが待機中です
.........................................0 - ジョブ ターゲットがアクティブです
.........................................0 - ジョブ ターゲットは OK です
.........................................0 - ジョブ ターゲットが失敗しました
..ジョブの順序番号.....................: 1
..作成時間...........................: 2005-06-30 13:00
..起動時間..........................: 2005-07-05 01:00
..ステータス メッセージ.......................: OK
..ターゲット...............................: KKKKK01B
....タスク...............................: install
....ジョブ ステータス..........................: WAITING
....タスク...............................: install
....開始時間.........................: 2005-07-05 01:00
....完了時間                         : 2005-04-11 10:45
....作成時間.........................: 2005-04-11 10:45
....送信済みデータ(パーセント)..............:
..ステータス メッセージ.....................: OK
....注文者.........................: KKKKK01
....タイプ...............................: 必須
....コメント............................:
..ターゲット..............................: KKKKK01C
....タスク...............................: install
....ジョブ ステータス..........................: WAITING
....タスク...............................: install
....開始時間.........................: 2005-07-05 01:00
....完了時間                         : 2005-04-11 10:45
....作成時間.........................: 2005-04-11 10:45
....送信済みデータ(パーセント)..............:
..ステータス メッセージ.....................: OK
....注文者.........................: KKKKK01
....タイプ...............................: 必須
....コメント............................:

ジョブ名...............................: tstbase 1.0:remdir
..全体ステータス........................: 不明(9)
.........................................0 - ジョブ ターゲットが待機中です
.........................................0 - ジョブ ターゲットがアクティブです
.........................................0 - ジョブ ターゲットは OK です
.........................................0 - ジョブ ターゲットが失敗しました
..ジョブの順序番号.....................: 2
..作成時間...........................: 2005-06-30 13:00
..起動時間..........................: 2005-07-05 01:00
..ステータス メッセージ.......................: ジョブのセットアップ警告です。 評価手順で
.........................................ターゲット インストールが見つかりませんでした。

ジョブ名...............................: tstbase 1.0:setdir
..全体ステータス........................: 不明(9)
.........................................0 - ジョブ ターゲットが待機中です
.........................................0 - ジョブ ターゲットがアクティブです
.........................................0 - ジョブ ターゲットは OK です
.........................................0 - ジョブ ターゲットが失敗しました
..ジョブの順序番号.....................: 3
..作成時間...........................: 2005-06-30 13:00
..起動時間..........................: 2005-07-05 01:00
..ステータス メッセージ.......................: ジョブのセットアップ警告です。 評価手順で
.........................................ターゲット インストールが見つかりませんでした。

ジョブ名...............................: tstkpk01 1.0:inst
..全体ステータス........................: WAITING
.........................................2 - ジョブ ターゲットが待機中です
.........................................0 - ジョブ ターゲットがアクティブです
.........................................0 - ジョブ ターゲットは OK です
.........................................0 - ジョブ ターゲットが失敗しました
..ジョブの順序番号.....................: 4
..作成時間...........................: 2005-06-30 13:00
..起動時間..........................: 2005-07-05 01:00
..ステータス メッセージ.......................: OK
..ターゲット...............................: KKKKK01B
....タスク...............................: install
....ジョブ ステータス..........................: WAITING
....タスク...............................: install
....開始時間.........................: 2005-07-05 01:00
....完了時間                         : 2005-04-11 10:45
....作成時間.........................: 2005-04-11 10:45
....送信済みデータ(パーセント)..............:
..ステータス メッセージ.....................: OK
....注文者.........................: KKKKK01
....タイプ...............................: 必須
....コメント............................:
..ターゲット..............................: KKKKK01C
....タスク...............................: install
....ジョブ ステータス..........................: WAITING
....タスク...............................: install
....開始時間.........................: 2005-07-05 01:00
....完了時間                         : 2005-04-11 10:45
....作成時間.........................: 2005-04-11 10:45
....送信済みデータ(パーセント)..............:
..ステータス メッセージ.....................: OK
....注文者.........................: KKKKK01
....タイプ...............................: 必須
....コメント............................:


SDCMD<A000000>: OK

以下のコマンドを使用すると、このコンテナの特殊ジョブの属性を表示できます。

cadsmcmd jobContainer action=showAttrJobs name=" q_grp [04/11/02 10:44:10.093]"jobName=" tstbase 1.0:inst" 
CA IT Client Manager r12
ITCM Command Line Version 12.8.0.xxxx
Copyright © 2013 CA. All rights reserved.

マネージャ "wwwww01b" にユーザ "<デフォルト ユーザ>" として接続しています...OK。

-------------------------------------------------------------------------------
コンテナ「tstbase 1.0:inst」に所属するジョブ「q_grp [04/11/02 10:44:10.093]」の属性の一覧 
-------------------------------------------------------------------------------
ジョブ名...............................: tstbase 1.0:inst
ソフトウェア...............................: tstbase 1.0
プロシージャ..............................: inst
配信日時.............................: 2005-06-30 13:00
起動日時............................: 2005-07-05 01:00
ステータス メッセージ.........................: OK
全体ステータス..........................: WAITING
.........................................2 - ジョブ ターゲットが待機中です
.........................................0 - ジョブ ターゲットがアクティブです
.........................................0 - ジョブ ターゲットは OK です
.........................................0 - ジョブ ターゲットが失敗しました
ジョブ タスク...............................: install
プレアクション..............................: ユーザのログオフ
ポストアクション.............................: アクションなし
ユーザに知らせる............................: いいえ
特性フラグ...................:
.........................................ジョブ実行中はユーザのログオンを中止
.........................................ローカル時間/正確な時間
.........................................カレンダが制御されています
.........................................クエリ グループの解決
配信カレンダ......................:
ユーザ パラメータ........................:
プロンプト期間..........................: 1 Days, 0 Hours
ジョブ タイムアウト............................: 7 Days, 0 Hours

SDCMD<A000000>: OK