本記事では、obshell-sdk-pythonを使用してタスクを操作する方法について説明します。
説明
まず、obshell-sdk-pythonクイックスタートを参照し、obshell-sdk-pythonの使用方法を確認することをお勧めします。
注意事項
obshellが正常に実行されていることを確認してください。
サンプルコード
タスクの同期的実行
タスクの非同期実行
from obshell import ClientSet, TaskExecuteFailedError
from obshell.auth import PasswordAuth
# clientインスタンスを作成します。ノードのアドレスは'10.10.10.1'、ポートは2886です。
# 所在クラスタのroot@sysパスワードは'****'です。
client = ClientSet("10.10.10.1", 2886, PasswordAuth("****"))
try:
# クラスタを初期化します。
client.v1.init_sync()
except TaskExecuteFailedError as e: # クラスタの初期化タスクが失敗した場合をキャッチします。
client.v1.operate_dag_sync(e.dag-generic_id, "ROLLBACK") # そのタスクをロールバックします。
from obshell import ClientSet, TaskExecuteFailedError
from obshell.auth import PasswordAuth
# clientインスタンスを作成します。ノードのアドレスは'10.10.10.1'、ポートは2886です。
# 所在クラスタのroot@sysパスワードは'****'です。
client = ClientSet("10.10.10.1", 2886, PasswordAuth("****"))
try:
# クラスタを初期化します。
client.v1.init_sync()
except TaskExecuteFailedError as e: # クラスタの初期化タスクが失敗したことをキャッチします。
client.v1.operate_dag(e.dag-generic_id, "ROLLBACK") # そのタスクをロールバックします。