1

別のミニオンでスクリプトを実行する必要があります。最良の解決策は Peer Publishing のようですが、私が見つけた唯一のドキュメントは、CLI を介してそれを行う方法を示しているだけです。

モジュールで次を定義するにはどうすればよいですか?

salt-call system.example.com publish.publish '*' cmd.run './script_to_run'
4

2 に答える 2

4

salt.client.Caller() API が必要です。

#!/usr/bin/env python
import salt.client
salt_call = salt.client.Caller()
salt_call.function('publish.publish', 'web001',
                   'cmd.run', 'logger "publish.publish success"')

上記は、salt ユーザー (通常は root) として実行する必要があります。

次に、web001 に移動し、メッセージが /var/log/syslog にあることを確認します。私のために働いた。

于 2013-12-20T03:06:21.693 に答える