python客户端rundeck api

rundeckrun的Python项目详细描述


先读取
如果您是rundeckrun的新手,并且正在与更新版本的rundeck进行交互(>;=2.1.3), 您应该考虑使用command line tools included with Rundeck(至少因为rundeck版本2.0.4)。RundeckRun公司 对于版本11之前的rundeck api(rundeck<;=2.1.3)应该工作得很好。目前还没有 支持大于11的rundeck api版本,没有其他原因项目维护人员不支持 有足够的时间去做必要的改变。拉请求欢迎!

用python编写的与rundeck交互的客户端库 应用程序编程接口。它使用了可怕的requests 图书馆。

文档位于Read the Docs

免责声明:测试套件并不全面,但大多数功能已经过测试,应该可以工作。 应该至少在Python2.7和Python3.3上工作。

安装

需要

$ pip install rundeckrun

使用

>>> fromrundeck.clientimportRundeck>>> rd=Rundeck('rundeck.server.com',api_token='SECRET_API_TOKEN')>>> rd.list_projects()[{
    'description': None,
    'name': 'TestProject',
    'resources': {'providerURL': 'http://localhost:8000/resources.xml'},
}]
>>> rd.list_jobs('TestProject')[{'description': 'Hello World!',
  'group': None,
  'id': 'a6e1e0f7-ad32-4b93-ba2c-9387be06a146',
  'name': 'HelloWorld',
  'project': 'TestProject'}]
>>> rd.run_job('a6e1e0f7-ad32-4b93-ba2c-9387be06a146',argString={'from':'RundeckRun'}){'argstring': '-from RundeckRun',
 'date-started': datetime.datetime(2013, 7, 11, 18, 4, 24),
 'description': 'Plugin[localexec, nodeStep: true]',
 'href': 'http://rundeck.server.com/execution/follow/123',
 'id': '123',
 'job': None,
 'status': 'running',
 'user': 'rundeckrun'}

运行测试

注意

您可能需要创建一个virtualenv 为了这个。

运行测试需要运行rundeck服务器(rundeck独立jar运行良好)和 所述rundeck服务器的api令牌。

您至少需要设置api token环境变量RUNDECK_API_TOKEN,但是 是否需要注意其他环境变量。列表如下,可以在 测试/初始化文件。它们应该是相当自解释的(好的,rundeck_协议可能 不是一目了然的…在那里使用“http”或“https”)。

RUNDECK_API_TOKEN
RUNDECK_SERVER
RUNDECK_PORT
RUNDECK_PROTOCOL

下一个克隆回购协议。

git clone https://github.com/marklap/rundeckrun

注意

激活您的virtualenv

然后安装需求和开发需求。

pip install -r requirements.txt
pip install -r requirements_dev.txt

最后,执行鼻子测试。

nosetests

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaHTTP。请求侦听器   java Selenium webdriver遍历行并仅检索某些列   JavaSpring批处理在启动运行方法之前启动SimpleZoblancher运行方法   maven如何使用Maven2从javadoc生成java源代码?   java为什么我的Unicodont(Slick2D)不画画?   java取消对未使用对象的引用是否会提高冗长方法的性能?   java可执行Jar的画布比使用Eclipse Runner的小   为什么我的for循环在Android studio中与eclipse(java)产生不同的结果   java代码段字节数组到端口号   java在DynamoDB范围键中插入项   java 安卓。看法WindowManager$BadTokenException:无法添加窗口,您的活动正在运行吗?   java我想要两个列表视图同时滚动   java测试数据分离   java Saxon:每次重新部署后都需要重新启动Glassfish