想在Rundeck中使用rundeckrun python模块创建一个作业,我在他们的文档中搜索,但找不到它。
是否有其他选项可以在 Rundeck 中使用 rundeckrun 创建作业
感谢您的关注。
这最近发布在 rundeckrun 存储库中:#17 (可能是你:@Naren)。正如我在 Github Issue 的评论中提到的,Rundeck API 不提供创建作业的高级方法,因此 rundeckrun 也没有......还没有。 :) 但是,Rundeck API 确实提供了一种导入作业定义的方法,并且 rundeckrun 提供了围绕该端点的轻量级包装器。您可以操作/创建作业定义并将其导入。事实上,这正是 tests/__init__.py
中所做的。设置逻辑:
test_job_id = uuid.uuid4()
test_job_name = 'TestJobTest'
test_job_proj = 'TestProjectTest'
test_job_def_tmpl = """<joblist>
<job>
<id>{0}</id>
<loglevel>INFO</loglevel>
<sequence keepgoing='false' strategy='node-first'>
<command>
<node-step-plugin type='localexec'>
<configuration>
<entry key='command' value='echo "Hello World! (from:${{option.from}})"' />
</configuration>
</node-step-plugin>
</command>
<command>
<node-step-plugin type='localexec'>
<configuration>
<entry key='command' value='sleep ${{option.sleep}}' />
</configuration>
</node-step-plugin>
</command>
</sequence>
<description></description>
<name>{1}</name>
<context>
<project>{2}</project>
<options>
<option name='from' value='Tester' />
<option name='sleep' value='0' />
</options>
</context>
<uuid>{0}</uuid>
</job>
</joblist>"""
test_job_def = test_job_def_tmpl.format(test_job_id, test_job_name, test_job_proj)
然后the creation of the job ...
def setup():
rundeck_api.jobs_import(test_job_def, uuidOption='preserve')
我是一名优秀的程序员,十分优秀!