1
rundeck apiを調べてジョブのリストを返しています。私は手動でUIを介して2つのジョブを作成しました。しかし、私はそのapiを通して0の仕事を得ることになった。私はその過程で何が起こっているのか把握するのに苦労しています。Pythonを使用してRundeck APIでジョブを取得できない
import urllib2
import logging
import ssl
RUNDECK_TOKEN = 'My_API_Token'
class Rundeck():
def get_full_url(self):
return 'https://rdurl:8443/rundeckpro/api/14/project/Sandbox/jobs?authtoken=' + RUNDECK_TOKEN
def make_api_call(self):
context = ssl._create_unverified_context()
opener = urllib2.build_opener(urllib2.HTTPSHandler(context=context))
request = urllib2.Request(self.get_full_url())
try:
return opener.open(request, timeout=30)
except urllib2.HTTPError as err:
if err.code == 409:
return 'Running'
except Exception as e:
logging.error('Exception : %s', e)
return False
if __name__ == '__main__':
jobs = Rundeck()
print jobs.get_full_url()
print jobs.make_api_call().read()
出力は次のとおりです:助けのために
<jobs count='0' />
おかげ
は、以下の私のコード例です。
ユーザは、ACL内のすべてのアクセスを有しています。私はまた、ブラウザでhttps:// rdurl:8443/rundeckpro/api/14/project/Sandbox/jobs?authtoken = My_TOKENを使用して、ログイン後にすべてのジョブを見ることができるという問題を発見しました。 –