プロセスのデプロイメント属性


プロセスのデプロイメント属性

IncrediBuildでのタスク実行において、明示的にタスクがリモートで実行するように指定されていない場合、IncrediBuild はデフォルトでローカルにてタスクを実行します。Ib_profile.xml ファイルには、IncrediBuild がタスクを実行する方法を設定する際に必要な 3 つの属性があります。

local_only:ローカル マシンのみでタスクを実行します。ローカル マシン上の複数のコアでタスクが並列に処理されますが、リモートマシンでの処理は行いません。この設定は通常あまり並列化を必要としない処理で使用されます(リモートマシンよりもローカル マシンの方が一般的に高速に処理を行えるため、ローカルマシンのコアだけで十分な場合)。タスクが ib_profile.xml 内にてどの属性にも指定されていない場合、処理は「local_only」として扱われ、リモート マシンに分散されることは稀です。linkタスク等、タスクをローカルマシンでのみ実行したい場合は、タスク名(プロセス名)をib_profile.xmlファイル内に追加して「local_only」に設定する必要があります。

allow_remote:ローカルマシンもしくはリモートマシンの CPU コアを使用してタスクを実行します。この設定は通常ハイレベルでの並列化を実現するために使用されます。タスクを他の Agent(リモートマシン)に分散するには、タスク名(プロセス名)をib_profile.xmlファイル内に追加し、「allow_remote」に設定する必要があります。

Intercepted:この属性は、IncrediBuildに特定のプロセスに "allow_remote"としての属性が設定されているタスクを含んでいるかどうかを調べるように指示します。Ib_profile.xml に「allow_remote」と設定されているタスクが含まれる場合、このタスクの実行を導くビルド プロセス ツリー内のすべてのタスク(プロセス名)に「intercepted」属性が設定されている必要があります。たとえば、ビルド実行に際して「mybuilder」というスクリプト ファイルを実行してビルドを開始する場合、このスクリプトファイルが「mymake」を実行し、「mymake」がコンパイル タスク(mycompiler)を実行するようなプロセスツリーにおいて、コンパイルタスク(mycompiler)を分散実行させたい場合は、「mybuilder」と「mymake」を Intercepted、「mycompiler」を allow_remote として設定する必要があります。


マシンで使用可能なアイドル状態の CPU リソースがある場合、IncrediBuild のビルドコマンドを同じ Agent で同時に実行できます。