RHNSatelliteのAPIとインターフェイスするPythonスクリプトを作成しようとしています。以下のコードは、指定されたサーバー(var id)に対してリモートコマンドが即座に実行されるようにスケジュールします。問題は、Satelliteサーバーが指定してからちょうど2時間後にコマンドをスケジュールすることです。これがどこで起こっているのかわかりません。SatelliteサーバーとクライアントはすべてRHEL6です。これが私のコードです:
#!/bin/python
import xmlrpclib
from datetime import date, datetime, time, timedelta
from sys import argv
import socket
import os
SATELLITE_URL = "https://URL"
SATELLITE_LOGIN = "username"
SATELLITE_PASSWORD = "password"
client = xmlrpclib.Server(SATELLITE_URL, verbose=0)
key = client.auth.login(SATELLITE_LOGIN, SATELLITE_PASSWORD)
id = [] #Satellite server ID
script = "#!/bin/sh \n yum update -y"
def schedule_script():
earliest_occurrence = xmlrpclib.DateTime()
print earliest_occurrence
client.system.scheduleScriptRun(key, id, "root", "root", 300, script, earliest_occurrence)
schedule_script()
client.auth.logout(key)
変数「earliest_occurrence」を出力すると、現在の時刻が出力されます。サテライトサーバーで「日付」を実行すると、正しい時刻が出力されます。
どんな助けでも大歓迎です。ありがとう!