将文件和规则数组转换为模板,并通过简单规则进行部署[关闭]

问题描述 投票:1回答:1
我用Python启动了此任务,但直到我认为必须有一种更简单的方法,我才走了很远。

提供根文件名和目的地列表:

roots = ['foo', 'bar', 'fooobar', 'barfoo123'] dests = [['cfg', '/config', 'yes'] ['jpg', '/picture', 'yes'] ['avi', '/video', 'no']]

理想情况下,我会在数据库或XML中使用这些指令来迭代将文件从杂乱无章的文件树(例如'../pileoffiles')复制到特定目标的过程。每个文件都是必需的(是/否)。 

仅使用上方的'foo',我们会寻找

'foo.cfg','foo.jpg','foo.avi'

[<.. pileoffiles>

/config/foo.cfg /picture/foo.jpg /video/foo.avi

如果缺少.cfg或.jpg,则会引发错误/消息。然后重复其余的根。
这对我来说真是一个难题。当然,已经解决了将文件列表替换为模板并进行迭代的问题。 Ansible看起来很有前途,但这不是我以前使用过的东西。我可以使用Python暴力破解该解决方案,但我希望有一个模板包可以完成很多繁重的工作。

我用Python启动了此任务,但直到我认为必须有一种更简单的方法,我才走了很远。给定一个根文件名和目标列表:roots = ['foo','bar','fooobar','barfoo123'] ...

python ansible jinja2 itertools shutil
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.