genvid.toolbox.NomadTool¶
-
class
genvid.toolbox.
NomadTool
(use_wan=False, **kwargs)¶ ベースクラス:
genvid.toolbox.consul.ConsulTool
Nomad のジョブを処理するための class。
バージョン 1.19.0 で変更: use_wan パラメータで、サービスアドレスを TaggedAddress 「wan」 に置き換えます。デフォルトでは、内部登録アドレスを使用します。
-
get_nomad_client_addr
(*, timeout=0.0) → tuple¶ Consul から nomad-client サービスアドレスとポートを取得する。
発見した最初のサービスを返す。
パラメータ: timeout – サービスのタイムアウト。
-
get_nomad_client_url
(*, timeout=0.0) → str¶ Nomad クライアント URL の Query Consul
パラメータ: timeout – サービスが値を返すまでのタイムアウト。 戻り値: nomad-client のURL。
-
get_nomad_ip
() → str¶ Nomad IP アドレスを取得する。
-
nomad
¶ python-nomad パッケージからの Nomad クライアント。
-
run_nomad
(action: str, *args, **kwargs)¶ 指定のアクションと、その他の引数で、Nomad を実行する。
このメソッドは、
get_nomad_client_url()
からの正しいアドレスを Nomad に確実に渡す。パラメータ: action – 実行するアクション (『run』、』plan』、』stop』 など)。
-
static
check_alloc
(alloc, allocid=None, task=None, group=None, job=None, index=None, state=None)¶ 割り当てが指定した条件に一致するかどうかチェックする。
以下のものがマッチします。
allocid: 割り当て ID がこのプレフィックスで始まる。
task: タスクは、割り当ての一部。
group: グループは、割り当ての一部。
job: ジョブは、割り当てジョブ ID。
index: 割り当てのインデックス。
- state: タスクが指定されている場合、タスクがこのステータスになっているかをチェックする。
- タスクが指定されていない場合、このステータスのタスクが存在するかをチェックする。
-
get_last_alloc
(**kwargs)¶ すべての条件を満たす直前の割り当てを取得する。
-
show_alloc_log
(follow=False, tail=False, lines=10, logfilename=None, stdout=False, **kwargs)¶ すべての条件を満たす最新のアロケーションを所得し、ログを表示する。
条件は
check_alloc()
と同じ。その他のパラメータは次の通りです。- follow: ファイルの最後に到達しても停止せず、
- 追加コンテンツを待機する。
tail: テキストの最後の lines を表示する。
- lines: tail で、表示するライン数を調整する (デフォルトは
- 10)。
- logfilename: 表示するファイル名。デフォルトは
- stderr を表示する。
- stdout: logfile を指定しない場合、以下の代わりに、stdout を表示:
- stderr を表示する。
-
run_nomad_fs
(*args, **kwargs) → int¶ 引数で nomad fs を実行し、戻りコードを返す。
-
add_logs_commands
()¶ ログコマンドをパーサーに追加する。
ログ
add_commands()
から実行し、ログコマンドをパーサーに追加する。
-
run_logs_command
(command, options)¶ コマンドがログコマンドかどうかを検出し、実行する。
run_command()
から呼び出し、ログコマンドを処理する。add_logs_commands()
により、ジョブコマンドが追加される。戻り値:
- handled, result: コマンドを処理したかどうかを示す、ブール値のトプル。
- 処理した場合は結果を返す。
-
-
class
nomad.
NomadTool
¶