我编写这段代码是为了从S3桶中提取文件,更改文件权限并执行代码。不过,这对我不起作用。
download_file_from_s3:
file.managed:
- name: /opt/agent_installer.sh
- source: s3://bucket_name/install.sh
change_file_permission:
file.managed:
- source: /opt/install.sh
- user: root
- group: root
- mode: 0744
run_rapid7_script:
cmd.run:
- name: /opt/install.sh发布于 2022-01-26 17:35:57
我可以建议对您的代码进行一些更改。
您要将文件从S3中保存为使用file.managed的/opt/agent_installer.sh,让我们考虑一下这一点没有问题。
现在,在后续任务中我们显然需要改变的第一件事是使用这个。不是/opt/install.sh。此外,可以使用file.managed一次下载文件、更改所有权和权限。这样你的补充计划看起来就像:
download_file_from_s3:
file.managed:
- name: /opt/agent_installer.sh
- source: s3://bucket_name/install.sh
- user: root
- group: root
- mode: 0744
run_rapid7_script:
cmd.run:
- name: /opt/agent_installer.sh还有一个cmd.script状态,它可以作为source直接与S3 URL一起使用,因此根本不需要有file.managed。
因此,只有下面这样的一个状态就足够了:
run_rapid7_script:
cmd.script:
- source: s3://bucket_name/install.sh如果您确实对从S3下载文件有问题,请参阅如何正确配置该文件的文档。
https://stackoverflow.com/questions/70862584
复制相似问题