From ca3cafbb65655bf0de40e8a44b608932694a5594 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Wed, 6 Jan 2010 12:39:47 -0500 Subject: add cloud-init-run-module and ec2init/execute.py cloud-init-run-module handles some boilerplate code for running items on a 'frequency'. It has the following usefulness - a config module can be put into ec2init dir and implement a 'run' method that takes a list of arguments and the path to a config file - it handles invoking module.run() only at a given frequency This is similar to karmic's ec2init's "run_once_ever" or run_once_per_ami execute.py is an example module that executes the arguments given to it An example usage in an upstart job would be with a 'exec' line like: exec cloud-init-run-module once_per_ami clean-core execute rm /var/run/core The above would then run the command 'rm /var/run/core' only once --- setup.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'setup.py') diff --git a/setup.py b/setup.py index aaa7cbeb..0f86cb54 100755 --- a/setup.py +++ b/setup.py @@ -36,7 +36,9 @@ setup(name='EC2-init', 'ec2-set-hostname.py', 'ec2-wait-for-meta-data-service.py', 'ec2-init.py', - 'ec2-is-compat-env'], + 'ec2-is-compat-env', + 'cloud-init-run-module.py' + ], data_files=[('/etc/ec2-init', ['ec2-config.cfg']), ('/etc/ec2-init/templates', glob('templates/*')), ('/etc/init', ['ec2init.conf']), -- cgit v1.2.3