私は人形を使用するのが初めてで、マスターとエージェントのサーバーをセットアップしました。私は、エージェントサーバー上でPythonスクリプトを実行する方法を理解するのが難しいです。人形のpythonスクリプトの実行
私はクイックスタートガイドに従っており、回答を探していますが、明確な説明がありません。
現在、私のsite.ppがありますpythontestのマニフェストフォルダに
node default {
class { 'helloworld':}
class { 'helloworld::motd':}
include python
class { 'pythontest':}
}
init.ppがあります
class pythontest {
exec {'python etc/puppetlabs/code/environments/production/modules/pythontest/print.py':
require => File['etc/puppetlabs/code/environments/production/modules/pythontest/print.py']
}
}
の両方がこれまで
のUbuntu 15.04を実行している、こんにちは、世界をが表示され、Pythonモジュールがインストールされます(https://forge.puppet.com/stankevich/python)。
私はエラーを取得する:私はちょうどexecを置くことができない
Error: Failed to apply catalog: Validation of Exec[etc/puppetlabs/code/environments/production/modules/pythontest/print.py] failed: 'etc/puppetlabs/code/environments/production/modules/pythontest/print.py' is not qualified and no path was specified. Please qualify the command or specify a path. at etc/puppetlabs/code/environments/production/pythontest/manifests/init.pp:2
思う:pythonのパス名が、いくつかのGoogle検索は、そのメソッドを使用して、いくつかの人を見つけました。
まあ、私はパペットする全く新たなんだとしようエージェント上でPythonスクリプトを実行するより良い方法はありますか?スクリプトをコピーして実行するとか、実行してもらうか、それとも別の場所に保存するのですか? – kckaiwei
これを見て、コードをPuppet Masterに置いてください。Puppet自体は通常、/ etc/puppetlabsにあるファイルを管理するべきではありません。https://docs.puppet.com/pe/latest/cmgmt_managi ng_code.html –
うん、それを手に入れた。うん、私が従ってきたチュートリアルの中には、Gitを使ってそれを引っ張ってきたものがあります。ここでは、このスクリプトを使用してテストする必要のあるpythonパッケージです。 gitと一緒に行く方が良いでしょうか、あるいはpipにpipをインストールするようにエージェントに指示するだけでいいですか? コードマネージャを調べて、使用する方が良いかどうかを確認します。ありがとう! – kckaiwei