如何通过salt-api将文件放在salt master上

时间:2017-03-22 13:18:19

标签: salt salt-stack salt-creation

我想通过salt-api将文件放在salt-master上。我已经使用rest cherrypy配置了salt-api并为它配置了自定义挂钩。我想探索一下用例,我们可以先将文件传输给salt-master,然后再将它传递给minions。我能够实现第二部分,但无法将数据文件发布到API。

1 个答案:

答案 0 :(得分:0)

以下是使用file.write执行模块执行此操作的一种方法。

首先登录并将令牌保存到cookie文件中(我必须将eauth更改为ldap,由于某种原因自动没有工作):

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'

请注意,命令中使用的间距将影响线条在文件中的显示方式,上面的示例给出了最美观的结果。