Collect and cache metadata, run hooks on changes.
Go to file
Monty Taylor b041fb363e Ensure that README file makes it into the tarball
setup.cfg depends on the README file for its long description, so if
it's not in the source tarball, the build will bomb out. README.rst is an
automatically grokked name of a file for python and gets included
automatically. While we're dealing with this, add a MANIFEST.in to
ensure that AUTHORS and ChangeLog get installed too.

Change-Id: Id59fa5a6fecc179a80710ba8a5dc898fb713b1cf
2013-07-07 11:56:08 -04:00
os_collect_config Enable heat_local collector. 2013-07-03 17:29:04 -07:00
.gitignore Rename to os-apply-config. 2013-06-14 15:30:14 +12:00
.gitreview Fix .gitreview file 2013-06-26 12:53:07 -07:00
.testr.conf Remove env vars we don't use. 2013-03-28 04:05:31 +01:00
.travis.yml Aligned tests with OpenStack standards. 2013-03-28 03:40:38 +01:00
LICENSE Aligned tests with OpenStack standards. 2013-03-28 03:40:38 +01:00
MANIFEST.in Ensure that README file makes it into the tarball 2013-07-07 11:56:08 -04:00
README.rst Ensure that README file makes it into the tarball 2013-07-07 11:56:08 -04:00
openstack-common.conf Importing openstack-common using update.py and openstack-common.conf 2013-06-26 17:49:26 -07:00
requirements.txt Fix problems exposed by trying against heat-api-cfn. 2013-07-03 12:44:37 -07:00
setup.cfg Ensure that README file makes it into the tarball 2013-07-07 11:56:08 -04:00
setup.py Migrate to pbr and testr. 2013-03-28 02:37:45 +01:00
test-requirements.txt Align to OpenStack Hacking rules. 2013-03-28 04:03:46 +01:00
tox.ini Importing openstack-common using update.py and openstack-common.conf 2013-06-26 17:49:26 -07:00

README.rst

os-collect-config

Collect configuration from cloud metadata sources.

# What does it do?

It collects data from defined configuration sources and runs a defined hook whenever the metadata has changed.

# Usage

You must define what sources to collect configuration data from in /etc/os-collect-config/sources.ini

The format of this file is `ini [default] command=os-refresh-config [cfn] metadata_url=http://192.0.2.99:8000/v1/ access_key_id = ABCDEFGHIJLMNOP01234567890 secret_access_key = 01234567890ABCDEFGHIJKLMNOP path = MyResource stack_name = my.stack`

These sources will be polled and whenever any of them changes, default.command will be run. OS_CONFIG_FILES will be set in the environment as a colon (":") separated list of the current copy of each metadata source. So in the example above, "os-refresh-config" would be executed with something like this in OS_CONFIG_FILES:

` /var/run/os-collect-config/ec2.json:/var/run/os-collect-config/cfn.json`

When run without a command, the metadata sources are printed as a json document.

# Quick Start

sudo pip install -U git+git://github.com/stackforge/os-collect-config.git

# run it on an OpenStack instance with access to ec2 metadata: os-collect-config ```

That should print out a json representation of the entire ec2 metadata tree.