无法通过ansible从localhost运行python脚本

无法通过ansible从localhost运行python脚本,python,ansible,ansible-playbook,Python,Ansible,Ansible Playbook,我的结构如下: playbooks_only | |- read_replica_boto3.yml |- roles | |-read_replica_boto3 |-defaults |-tasks-->> main.yml |-files-->> - rds_r

我的结构如下:

playbooks_only 
    |
    |- read_replica_boto3.yml
    |- roles
         |
         |-read_replica_boto3
                 |-defaults
                 |-tasks-->> main.yml                      
                 |-files-->> - rds_read_replica_ops.py
                             - sample.yml
我需要运行rds_read_replica_ops.py,我编写了以下代码:

- name: Create a cross-region replica using boto3 script
  command:  python rds_read_replica_ops.py sample.yml
  args:
    chdir: '"{{ role_path }}"/files'
但它找不到文件并显示:

sg: cannot change to directory '/home/blah/recovery/playbooks_only/"/home/blah/recovery/playbooks_only/roles/read_replica_boto3"/files': path does not exist

FATAL: all hosts have already failed -- aborting

您在这行有一个输入错误:

    chdir: '"{{ role_path }}"/files'
不应该用引号括住变量。相反,将行更改为:

    chdir: '{{ role_path }}/files'

这应该行得通

尝试更改这一行:
chdir:“{{role\u path}}/files”
你的意思是什么?我应该放在那里的是什么?删除双引号
环绕
{{role\u path}
哦,很酷,很好,还有一个问题。我应该如何等待我的python脚本执行我不确定我是否理解你的意思,但是这个任务应该
cd
files
目录,执行该文件,然后等待它完成,但是它没有映射到default/main.y的变量ml到文件/sample.yml