bfagent.conf ファイルには、Rational® Build Agent の動作に関する設定が保管されています。このファイルは、bfagent 実行可能ファイルと同じディレクトリーにあります。
- 設定
- activity_log path
- アクティビティー・ロギングをオンにします。情報は、path で指定されたファイルに追加されます。パスが存在している必要があり、またエージェントのユーザーがそのパスに対する書き込み権限を所有している必要があります。
注: パスが存在しないか、ファイルへの書き込みができない場合、エージェントはエラーを報告しません。
重要: ファイル・サイズに制限はありません。ファイルの削除は手動で行う必要があります。この設定は、
エージェントのデバッグを行うために一時的に使用することを目的としています。稼働中のエージェントの永続ログとして使用するためのものではありません。
- allow IP-address-or-range [...]
以下の場合にのみ、この設定を使用します。
- エージェントが Windows® 上で実行されている場合。
- 始動時に -s オプションが使用されていて、エージェントが UNIX® または Linux® 上でスタンドアロン・モードで実行されている場合。
この設定は、エージェントに対する接続を制限します。IP-address-or-range に一致する IP アドレスからの接続のみ許可されます。デフォルトではすべてのアドレスからの接続が許可されています。
以下の項目のいずれか、または両方を指定します。
- IP アドレス: IPv4 または IPv6 の完全修飾アドレス。例えば、IPv4 の 255.192.192.003 などです。特定の IP アドレスが許可されます。
- IP アドレス範囲: IPv4 または IPv6 の部分修飾アドレス。
IPv4 の場合、192.168、192.168.63 などが正しい例です。この制限に一致するすべての IP アドレスが許可されます。
注: inetd や xinetd などのスーパーサーバー上でエージェントを実行している場合は、別の方法でアクセスを制御してください。ファイアウォール、TCP ラッパー (hosts.allow および hosts.deny)、または xinetd の組み込みのフィルター機能を使用できます。
- bind
- この設定を使用して、エージェントの明示的なバインド・アドレスを指定できます。この設定と「port」設定を一緒に
使用することにより、-s コマンド行オプションを指定してエージェントを開始したときに、エージェントが接続を listen する方法を決定できます。bfagent.conf ファイルに指定された値により、エージェントは IPv4 ローカル・ホスト・アドレスにバインドされます。
これにより、エージェントは同じマシン上にあるコンソールからの接続だけを受け入れます。
例えば、bind 255.192.192.003 などです。
注: この設定は、システム・サービス・アーキテクチャー (inetd、xinetd、または launchd など) によって
開始されたエージェントには作用しません。
- ccviewroot root-path
- この設定は、このホストのデフォルトのビュー・ルートを指定します。
詳しくは、ClearCase® の資料に記載されている init の説明を参照してください。
内部デフォルト値は以下のとおりです。
- command_output_cache size
- この設定により、指定のサイズ (バイト単位) に達するまで、エージェントが出力をキャッシュに入れるようになります。
キャッシュ用の内部デフォルト値はありません。
キャッシュを使用すると、エージェントのパフォーマンスが大幅に向上し、ネットワークのオーバーヘッドが削減されます。
キャッシュ・サイズは、コマンドが生成する出力の量によって異なります。
最小値: 2048。設定値が 2048 より小さい場合、この値が内部で使用されます。
- cygwin
この設定は、エージェントが Windows 上にある場合にのみ使用します。
この設定により、Windows ホスト上で、Linux に似た環境である cygwin を使用してエージェントが動作するようになります。
cygwin を使用すると、数多くの Linux 用ツールがエージェントで使用できるようになります。
この設定を使用する際、cygwin_script_magic およびシェルの設定も必要になる場合があります。これらの設定を構成する方法の例を以下に示します。
cygwin
shell C:¥cygwin¥bin¥bash.exe --login -c "%s"
cygwin_script_magic #!/bin/bash
shell の設定は、cygwin のインストール場所と一致していなければなりません。
- cygwin_script_magic
この設定は、エージェントが Windows 上にある場合で cygwin が設定されているときにのみ使用します。
この設定は、ステップを実行するときに使用する #! 行を指定します。
デフォルトは #!/bin/bash です。
- default_logon_domain
- 認証要求にドメインが含まれていない場合に使用するドメインを指定します。
指定がない場合、エージェント・マシンのドメインが使用されます。
- disable_telnet
- エージェント接続のテストには Telnet を使用することをお勧めします。
- エージェントでは、Telnet の制御シーケンスの処理および正しい取り扱いに関連して、いくらかの処理オーバーヘッドが必然的に発生します。
- この設定を使用して、特殊な Telnet 文字コードに対するエージェントの処理を無効にして、わずかにパフォーマンスを向上させることができます。
製品環境において、この設定を使用することにより、パフォーマンス向上の利点を得られます。
- disable_transcode
- オペレーティング・システムが UTF-8 エンコードを使用していない場合に、エージェントが各国データを変換するために実行する処理をオフにします。エンコードの混用とデータ破壊を防ぐために、エージェントのオペレーティング・システムでは UTF-8 を使用してください。
- オペレーティング・システムが UTF-8 エンコードを使用していない場合、エージェントは、オペレーティング・システムのロケール設定に合った正しいエンコードにデータを変換する必要があります。
- ご使用のオペレーティング・システムが UTF-8 を使用していない場合、この設定を使用して、エージェントのパフォーマンスを向上させることをお勧めします。
- enable_agent_dll
- この設定により、DLL プロセスのトレース (デバッグ・ツール) が有効になります。
- env_recursion_limit number-of-recursions
- 事前構文解析における変数置換の再帰限度を設定します。
設定されていない場合の限度は 32 です。
- extensions
- この設定は、外部関数ライブラリーのパスを指定します。
関数は、ステップ内でドット・コマンドとして使用することができます。この設定が指定されていない場合は、外部ライブラリーはロードされません。
構文解析時、ステップ・コマンド内の最初のトークンは関数名として認識されます。2 番目のトークンはストリング、3 番目のトークンは整数のタイムアウト値 (秒単位) です。
要件: オペレーティング・システムでダイナミック・ローダーがサポートされていること。例えば、UNIX または Linux では、/usr/include/dlfcn.h が必要になります。これらのデフォルト値は、内部で使用されます。
- UNIX または Linux: /usr/local/bin/bfextensions.so
- Windows: c:¥program
files¥ibm¥build forge¥agent¥bfextensions.dll
- getaddrinfo_using_addrconfig
- この設定は、UNIX または Linux オペレーティング・システム上で、エージェントをスタンドアロン・サービスとして実行する場合 (bfagent -s) にのみ使用します。この設定を使用すると、getaddrinfo() を呼び出して listen インターフェースを選択する際に、エージェントが AI_ADDRCONFIG を使用するようになります。デフォルトでは、AI_ADDRCONFIG は使用されません。
この設定を使用すると、エージェントは、正しく構成されたアドレスを持たないインターフェースを無視します。エージェントは、正しく構成されたアドレスを持つインターフェースのみ listen します。
- jcl_submit_user user:encoded-password
- Job Monitor にはジョブを実行依頼するために有効な資格情報が必要です。ジョブを JES に実行依頼するユーザーのユーザー名とパスワードを指定するには、jcl_submit_user パラメーターを使用する必要があります。
エンコードされたパスワードを生成するには、bfagent -e [Password] を z/OS® シェルから実行し、エージェントが表示した値をユーザー ID とともに、この設定に貼り付けます。
- job_monitor_port
- Job Monitor はデフォルトではポート 6715 で通信します。Rational Build Agent は、他のポート番号を指定しない限り、この値をデフォルトとして使用します。
- lang lang-code
この設定は、管理コンソールで有効な言語が提供されない場合にのみ使用します。
この設定は、エージェントがメッセージおよびコマンド出力を書き込むために使用する言語を指定します。エージェントは、管理コンソールによって指定された言語を使用するため、
通常、これは明示的に設定されません。ただし、希望のロケールがコンピューターで使用できない場合は、
言語の設定が役に立つことがあります。
また、管理コンソールが言語を伝達できない場合や、
無効な言語を伝達する場合には、バックアップとしても役立ちます。
内部のデフォルト値は en です。次のような明示的設定がある場合と同様の動作になります。
- leave_tmp_file
トラブルシューティング時にのみこの設定を使用します。
この設定を使用すると、
コマンド実行後に、ステップ・コマンドを保持するために使用する一時ファイルが削除されずに
保存されるようになります。トラブルシューティング時に、
このファイルを、管理コンソールに表示されるステップと比較することができます。
注: 通常の操作にはこの設定を使用しないでください。
- locale locale-code.charset-code
この設定は、UNIX および Linux オペレーティング・システムの場合のみ使用します。Windows でのロケールの取り扱いは異なります。
この設定は、ローカライズされたアプリケーションが使用する言語
およびマルチバイト文字セットを指定します。この設定を行うには、エージェント・コンテキストの
LANG 環境変数を設定します。
コマンド出力を米国英語の UTF-8 として処理するようにエージェントをセットアップするには、オペレーティング・システムで UTF-8 のロケールを使用します。
例えば、Linux の場合は、以下の表記を使用します。
locale en_US.UTF-8
ご使用のオペレーティング・システムの UTF-8 ロケールの正しい表記を確認するには、locale -a コマンドを実行します。
この設定が指定されていない場合、
エージェントはオペレーティング・システムのロケールを使用します。この設定は便利です。オペレーティング・システムの
デフォルト・ロケールが、エージェントで使用したいロケールではない場合、この設定が特に役に立ちます。また、
エージェントの要件を満たすようにシステム・ロケールを
変更することが実用的ではない場合にも、この設定は非常に有用です。
- magic_login user:encoded-password
エージェントは通常、管理特権 (root や admin など) を使用してオペレーティング・システムにログオンします。magic_login 設定は、標準的なシステム認証の代わりとなる方法です。この設定により、単一のユーザー名およびパスワードを使用したユーザーのログインを、システムが認証できるようになります。
エージェントが root ユーザーまたは admin ユーザーとして実行される場合、この設定は無視され、通常の認証が試行されます。
エージェントは、ログインに使用されたユーザー名ではなく、そのエージェントを開始したユーザーの権限を使用して、すべてのコマンドを実行します。
この設定は、以下の状態の場合にのみ使用します。
- 管理特権を持ったエージェントの実行が不可能な場合。
例えば、 PAM が作動しない UNIX システムではこの設定を使用します。
- 管理特権を持ったエージェントの実行が許可されない場合 (セキュリティー・ポリシー上の理由)。
エージェントのログインを構成するには、以下のようにします。
- ユーザー名およびパスワードを使用するサーバー認証を作成します。
管理コンソールで、とクリックします。
- この例の場合、ユーザー名は build、パスワードは MySecretPassword です。
- エージェントを使用するサーバーを作成します。「認証」フィールドで、サーバー認証をこのサーバーと関連付けます。
- エージェントのエンコード済みパスワードを生成します。エージェントのインストール・ディレクトリーで、選択したパスワードを指定して bfagent -P を実行します。
以下のように、SMD5 でハッシュ・エンコードされたパスワードが返されます。
bfagent -P "MySecretPassword"
eca0b7f2f4fbf110f7df570c70df844e1658744a4871934a
- bfagent.conf で、希望のユーザー名およびエンコード済みパスワードを使用するように magic_login を設定します。
magic_login build:eca0b7f2f4fbf110f7df570c70df844e1658744a4871934a
- エージェントを開始します。
- サーバー接続をテストします。「サーバー」でサーバーを選択し、「サーバーのテスト (Test Server)」をクリックします。
- map drive-and-user-spec[; ...]
- この設定は、マップされたドライブを指定します。一部のシステムでは、ドライブ・マッピングが必要になることがあります。
例えば、シェルを共有ドライブから実行するという理由から、ドライブ・マッピングが必要になる場合があります。エージェントに指定されたマッピングは、管理コンソールで _MAP 環境変数に指定されたマッピングよりも先に実行されます。
2 つのドライブ・マッピングの例を次に示します。
map X:=//host1/share;Z:=//host2/share(username,password)
- map_drive_is_failure
- この設定を指定した場合、マップされていないドライブ指定が検出されると、ステップが実行前に失敗します。
この設定が指定されていない場合、ステップはドライブの障害を無視して、そのステップを実行しようとします。
その場合、障害によって重要なエラー・メッセージが生成されていないか確認します。
- no_preparse_command
- この設定は、コマンドをシェルに渡す前に、通常エージェントがコマンドに対して実行する変数展開構文解析を無効にします。
単一のプロジェクトまたはステップに対して使用可能な _NO_PREPARSE_COMMAND 環境変数も参照してください。
- no_pty
この設定は、エージェントが UNIX または Linux システム上で実行されている場合にのみ使用します。
この設定を使用して、システム・シェルがエージェントの疑似端末と相互作用する際に、
そのシェルがロックされるのを防ぐことができます。この設定は、通常 HP/UX および z/OS で使用します。このタイプのロックを防止するには、この設定の他に、以下の 2 つの方法を使用できます。
- 代替シェルを使用する。
- nologonshell 設定を使用する。
no_pty 設定は、疑似端末の割り振りを無効にします。
注: no_pty の使用は、一部のコマンドに影響を及ぼします。例えば、ls コマンドでは、出力が 3 列ではなく、1 列で返されます。
この設定を使用する場合は、実稼働環境にジョブをデプロイする前に、入念なテストを行ってください。
- nologonshell
この設定は、エージェントが UNIX または Linux 上で実行されている場合にのみ使用します。
この設定は、エージェントで実行するシェルが、ログオン・シェルではなく、通常のシェルになるようにします。
多くの場合、この設定は以下の場合に使用されます。
- ログオン・シェルが冗長出力を生成する場合。
- ログオン・シェルが望ましくない方法で環境設定を変更する場合。
- ログオン・シェルがユーザーと対話式に通信しようとする場合。
これを設定した場合、シェルがログオン・シェルではなく通常のシェルであることを要求する標準的な方法が使用されます。
これは、必ずしもすべてのプラットフォームで機能するとは限りません。このような場合は、
shellflag 設定を使用して、その動作を変更するためにフラグをシェルに渡すことができます。
これらの動作は、エージェントにとって好ましくありません。ユーザーが対話式ユーザーでないユーザーとして実行されるためです。
注: - Mac OS X 10.5 システムは、/bin/bash を使用します。/bin/bash は、nologonshell には応答しません。
shellflag -l を使用してください。
- z/OS オペレーティング・システムでは、ログオン・シェルと非ログオン・シェルの両方に対して、常に /etc/profile スクリプトを使用します。シェルの動作がエージェントでうまく機能しない場合、必要に応じてスクリプトの内容を変更したり、別のシェルを使用したりしてください。
shellflag 設定も参照してください。ログオン・スクリプトの動作の変更には、フラグを使用することができます。
- password_encrypt_module dll_path;conf_path
- エージェントで SSL を使用可能にする場合に必要になります。この設定は、DLL および構成ファイルのパスを指定します。
- dll_path は bfcrypt.dll のパスです (通常、これは ./bfcyrpt.dll です)。
- conf_path は bfpwcrypt.conf のパスです (通常、これは ./bfcrypt.conf です)。
- port port-number-or-range [...]
このオプションは、始動時に -s オプションを実行した場合に、UNIX または Linux上でスタンドアロン・モードで実行されているエージェントでのみ使用します。
この設定は、エージェントが管理コンソールとの接続を listen するために使用するポートを指定します。
- 始動時に -s オプションが使用されていて、エージェントが UNIX または Linux 上でスタンドアロン・モードで実行されている場合。
エージェントが管理コンソールとの接続を listen するために使用するポートを指定します。
注: このポートは、デフォルトで 5555 に設定されています。
UNIX または Linux の場合、この設定は /etc/services にあります。
- shell shell_name [options]
- この設定は、デフォルトのシェルを指定します。内部デフォルト値は以下のとおりです。
- Windows: shell
cmd.exe /q /c "%s" (ただし、以下の設定が使用されない場合)。
- cygwin 設定値が使用される場合は、デフォルトは shell
C:¥cygwin¥bin¥bash.exe --login -c "%s" です。
- cygwin 設定が使用されない場合、デフォルトは shell cmd.exe /u /q /c "%s" です。
- UNIX または Linux: ユーザー・アカウントに対して設定されたシェル、またはユーザー・シェルが判別できない場合は /bin/sh。
この設定ではパラメーターを指定できないことに注意してください。ただしパラメーターを受け渡す shellflag 設定は使用できます。エージェントは、ハイフンを挿入することによって、自動的にデフォルト値がログオン・シェルになるようにします。
例えば、/bin/ksh は -ksh として送信されます。
明示的に shell を設定すると、暗黙的に nologonshell が設定されます。
nologonshell を参照してください。
- System i®: shell 値を /bin/sh に設定します。
この設定は、ステップ内から指定変更することができます。#! を含む行から始まるステップによってシェルの設定が指定変更され、nologonshell 設定を使用してステップ・コマンドが実行されます。
- shell_compatible_undef_vars
- この設定は、未定義の変数を強制的に空ストリングとして表示します。
これが設定されていない場合、表示は、$VAR、${VAR}、または %VAR% 形式の変数の場合は変数名、$[VAR] の場合は空ストリングになります。
- shellarg
この設定は、エージェントが UNIX または Linux で実行されている場合にのみ使用します。
コマンドがごちゃまぜになっているように見える場合は、この設定を使用します。
Red Hat Linux Enterprise の一部のシェルで、この設定が必要です。
この設定によりシェルにコマンド・スクリプトを渡す方法が変更されます。通常、スクリプトは、次のように標準入力を使用して渡されます。
/bin/sh < /tmp/bfshellscript.sh
この設定を使用すると、次のように、スクリプトをパラメーターとして渡すことで、スクリプトが実行されるようになります。
/bin/sh /tmp/bfshellscript.sh
- shellflag flag
この設定は、エージェントが UNIX または Linux で実行されている場合にのみ使用します。
この設定は、シェルが実行されているときにフラグを追加します。
指定できるフラグは 1 つのみです。通常、この設定は、出力または不要な処理を削減するために rc スクリプト処理を無効にする場合に使用されます。
以下に例を示します。- csh および派生物: shellflag -f を使用して、rc スクリプト処理を無効にします。
- bash: shellflag –-noprofile を使用して、プロファイル・スクリプト処理を無効にします。
- ssl_ca_location path
- 認証局を含む鍵ストア・ファイルを指定します。
エージェントがサービスとして実行される場合は、絶対パスを使用します。
- ssl_cert_location path
- プライベート証明書を含む鍵ストアを指定します。
エージェントがサービスとして実行される場合は、絶対パスを使用します。
- ssl_client_authentication [true | false]
- エージェントへの接続が行われるときにクライアント認証を必要とする場合に、true に設定します。
true に設定した場合、Rational Build
Agent エンジンの証明書をエージェントの認証局の鍵ストアに追加する必要があります。
- ssl_cipher_group [grouplist | ALL]
- 使用する個々の暗号グループを指定します。ALL (すべて) に設定することができます。
- ssl_cipher_override cyphers
- 暗号グループを指定変更します。使用する暗号を指定してください。
- ssl_key_location path
- 鍵を含む鍵ストア・ファイルを指定します。エージェントがサービスとして実行される場合は、絶対パスを使用してください。
- ssl_key_password password
- 鍵のパスワードです。このプロパティーは、デフォルトでは平文で保管されます。エージェントがそれ自身の鍵または Rational Build
Agent サーバーの鍵を使用してこのパスワードを暗号化できるように設定します。
- ssl_protocol protocol
- 使用する SSL ハンドシェーク・プロトコルで、SSL、SSLv2、SSLv3、SSL_TLS、TLS、または TLSv1 のいずれかです。プロトコルは Rational Build Agent サーバーが使用するプロトコルと一致しなければなりません。
- update_path path
この設定は Rational Build Agent 実行可能プログラムへの絶対パスを指定します。これは、インストール時に自動的に設定されます。設定されるディレクトリーは、オペレーティング・システムのデフォルト・ディレクトリー、またはユーザーが指定したインストール・ディレクトリーです。
注: この設定は、Windows エージェントでは無視されます。更新パスはレジストリー・キーから取得されます。このキーはエージェントのインストール時に設定されます。