python - 使用 Rundeckrun 创建作业?

标签 python python-module rundeck

想在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')

关于python - 使用 Rundeckrun 创建作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26399490/

相关文章:

json - 如何将选项传递给Rundeck作业Webhook URL

Jenkins Rundeck 插件身份验证

python - 根据另一列删除数据框中的一列

python - 日期时间.日期时间.now() + 1

python - 如何通过Python接收Elasticsearch集群的Write IOPS信息?

python - PyUsb 无法识别我的 USB 设备,而我的 PC 可以

Python3 为 PyPi 准备包,不包括子模块

python - 在 RobotFramework 中使用 Run Process 关键字的语法

python - 我应该在 __main__.py 中使用什么形式的导入,然后我应该如何运行该项目?

bash - puppet 退出代码 2,同时期望 0 with rundeck