作成日 | 2023/6/28 |
---|
はじめに
この記事では、実行条件を指定したジョブの連続実行についてご紹介いたします。
Hinemosは後続するジョブの起動の有無を先行するジョブの処理結果の値(終了状態もしくは終了値)により指定し、
1つのジョブの終了時に、複数のジョブが開始するように指定することができます。
また、待ち条件として、先行ジョブのジョブ(終了状態)、ジョブ(終了値)、時刻、セッション開始後の時間(分)、ジョブ変数、セッション横断ジョブ(終了状態)、セッション横断ジョブ(終了値)、を判定基準としてジョブを実行できます。
待ち条件に時刻やセッション開始後の時間を指定した場合、指定した時刻を過ぎていれば、待ち条件を満たしたと判定されます。
今回は、承認ジョブの実行結果によって、後続のジョブを実行します。
設定方法
承認ジョブの結果によって、後続ジョブを変える構成でジョブの設定を行っていきます。
1. リポジトリにHinemosエージェントがインストールされているノードを登録します。
2. Hinemosエージェントが起動しているか確認します。
3. ジョブを登録します。
以下が今回のジョブの構成です。
ジョブユニットの配下に以下の3つを登録します。
・承認ジョブ
・承認ジョブの承認が通った場合に実行されるコマンドジョブ
・承認ジョブの承認が通らなかった場合に実行されるコマンドジョブ
●「承認ジョブの内容(Approval)」
承認ジョブ作成時のデフォルトの内容に以下の設定を加えます。
・承認依頼分を記載
●「承認ジョブの承認が通った場合に実行されるコマンドジョブ(Approval_OK)」
コマンドジョブ作成時のデフォルトの内容に以下の設定を加えます。
・待ち条件:承認ジョブが正常終了した場合に実行
・条件を満たさなければ終了するの終了状態:正常
・条件を満たさなければ終了するの終了値:0
・コマンド:1.でリポジトリに登録したノードをスコープに設定 起動コマンド(echo OK)を設定
●「承認ジョブの承認が通らなかった場合に実行されるコマンドジョブ(Approval_NG)」
コマンドジョブ作成時のデフォルトの内容に以下の設定を加えます。・待ち条件:承認ジョブが異常終了した場合に実行
・条件を満たさなければ終了するの終了状態:正常
・条件を満たさなければ終了するの終了値:0
・コマンド:1.でリポジトリに登録したノードをスコープに設定 起動コマンド(echo NG)を設定
実行結果
ジョブを実行し、承認ジョブを承認する
先ほど設定したジョブユニット(JU01)を実行します。
ジョブユニット(JU01)を実行すると、承認パースペクティブに承認依頼が表示されるます。承認依頼をダブルクリックし、承認ボタンをクリックします。
ジョブ履歴パースペクティブのジョブ履歴[ジョブ詳細]ビューから、作成した以下のジョブがすべて正常終了していることが確認できます。
・ジョブユニット(JU01):正常
・承認ジョブ(Approval):正常
・コマンドジョブ(Approval_OK):正常
・コマンドジョブ(Approval_NG):正常
また、ジョブ履歴パースペクティブのジョブ履歴[ノード詳細]ビューから、以下のジョブで実行されたノードの終了状態がそれぞれ以下となっていることが確認できます。
・コマンドジョブ(Approval_OK):ノードの実行状態が終了
・コマンドジョブ(Approval_NG):ノードの実行状態が待機
ジョブを実行し、承認ジョブを却下する
・ジョブユニット(JU01)を実行します。
・ジョブユニット(JU01)を実行すると、承認パースペクティブに承認依頼が表示されます。承認依頼をダブルクリックし、却下ボタンをクリックします。
ジョブ履歴パースペクティブのジョブ履歴[ジョブ詳細]ビューから、作成した以下のジョブの終了状態がそれぞれ以下となっていることが確認できます。
・ジョブユニット(JU01):正常
・承認ジョブ(Approval):異常
・コマンドジョブ(Approval_OK):正常(条件未達成)
・コマンドジョブ(Approval_NG):正常
ジョブ履歴パースペクティブのジョブ履歴[ノード詳細]ビューから、以下のジョブで実行されたノードの終了状態がそれぞれ以下となっていることが確認できます。
・コマンドジョブ(Approval_OK):ノードの実行状態が待機
・コマンドジョブ(Approval_NG):ノードの実行状態が終了
おわりに
以上、簡単でしたが、実行条件を指定したジョブの連続実行のご紹介でした。ぜひ、日々の運用に活用してみてください。