运行本地自动化作业

Ansible 作业针对清单执行剧本。Ansible SDK 提供以下对象,以便直接从您的项目调用 Ansible 作业

  • AnsibleJobDef 定义作业。

  • JobExecutor 运行作业。

开始之前

  • 安装 Ansible SDK 和所需的软件。

使用 Ansible SDK 运行示例自动化作业,请执行以下操作

  1. 打开终端并切换到 examples 目录。

  2. 使用任何编辑器打开 example_subprocess_job.py 文件。

    #Imports Ansible SDK modules.
    from ansible_sdk import AnsibleJobDef
    from ansible_sdk.executors import AnsibleSubprocessJobExecutor
    
    ...
    
    #Declares the job executor to use.
    executor = AnsibleSubprocessJobExecutor()
    
    #Configures the job definition.
    jobdef = AnsibleJobDef('datadir', 'pb.yml')
    #Runs the job with the executor.
    job_status = await executor.submit_job(jobdef)
    
  3. 按如下方式运行示例程序

    $ python example_subprocess_job.py
    

example_subprocess_job.py 程序有一个 main() 函数,它执行 examples/datadir/project/pb.yml 剧本。当 Ansible SDK 将以下内容打印到标准输出时,您可以验证作业是否成功

directly awaiting the job status...
job done? True
event count: 36
all done, exiting