我想通过 salt-api 在 salt-master 上放置一个文件。我已经使用 rest cherrypy 配置了 salt-api 并为它配置了一个自定义钩子。我想探索我们可以首先将文件传输到 salt-master 然后将其分发给 minions 的用例。我能够实现第二部分,但无法将数据文件发布到 API。
问问题
334 次
1 回答
0
这是使用 file.write 执行模块的一种方法。
首先登录并将令牌保存到 cookie 文件中(我不得不将 eauth 更改为 ldap,auto 由于某种原因不起作用):
curl -sSk http://localhost:8000/login \
-c ~/cookies.txt \
-H 'Accept: application/x-yaml' \
-d username=USERNAME\
-d password=PASSWORD \
-d eauth=auto
现在运行一个作业来在 salt-master 上创建一个文件(假设你的 salt-master 也在运行一个 salt-minion):
curl -sSk http://localhost:8000 \
-b ~/cookies.txt \
-H 'Accept: application/x-yaml' \
-d client=local \
-d tgt='saltmaster' \
-d fun=file.write \
-d arg='/tmp/somefile.txt' \
-d arg='This is some example text
with newlines
A
B
C'
请注意,命令中使用的间距会影响行在文件中的显示方式,上面的示例给出了最美观的结果。
于 2017-05-24T11:51:57.147 回答