Ich bin neu bei der Verwendung von Marionette, und haben einen Master-und Agent-Server eingerichtet. Ich habe Schwierigkeiten, herauszufinden, wie man ein Python-Skript auf dem Agentenserver ausführt.Ausführen eines Python-Skripts auf Marionette
Ich habe die Schnellstartanleitung befolgt und nach einer Antwort gesucht, aber ich kann keine klare Erklärung finden.
Derzeit meine site.pp hat:
node default {
class { 'helloworld':}
class { 'helloworld::motd':}
include python
class { 'pythontest':}
}
die init.pp in Manifest-Ordner des pythontest hat:
class pythontest {
exec {'python etc/puppetlabs/code/environments/production/modules/pythontest/print.py':
require => File['etc/puppetlabs/code/environments/production/modules/pythontest/print.py']
}
}
Beide sind mit Ubuntu 15.04
Bisher Hallo Welt wird angezeigt und das Python-Modul wird installiert (https://forge.puppet.com/stankevich/python).
ich den Fehler:
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
Ich glaube, ich kann nicht einfach exec setzen: Python Pfadnamen, aber einige Google-Suchen finden einige Leute mit dieser Methode.
Nun, ich bin völlig neu für Figuren- und versuchen, um ein Python - Skript auf dem Agenten auszuführen. Gibt es einen besseren Weg? Ich dachte mir, du kopierst das Skript und dann rennst du es. Oder sollte ich es irgendwo anders speichern? – kckaiwei
Schau dir das an, wie du das bekommen sollst Code auf den Puppet Master selbst. Puppet selbst sollte die Dateien normalerweise nicht unter/etc/puppetlabs verwalten https://docs.puppet.com/pe/latest/cmgmt_managi ng_code.html –
Hmm, hab es. Ja, einige Tutorials, denen ich gefolgt bin, haben Git benutzt, um es zu ziehen. Hier sind es Python-Pakete, die mit diesem Skript getestet werden müssen. Wäre es immer noch besser, mit git zu gehen, oder okay, dem Agenten nur zu sagen, dass er pip install aufrufen soll? Ich werde in den Code-Manager schauen, sehen, was besser wäre zu verwenden. Vielen Dank! – kckaiwei