Collect and cache metadata, run hooks on changes.
Go to file
Clint Byrum 4cc2c41bbc Use heat-cfntools path hint for cfn.metadata_url
Heat passes this in via cloud-init to assist heat-cfntools in finding the
cfn metadata server url. This will likely be the primary location used,
and cfn.metadata_url will be an override.

Also doing some cleanup, removed unused cfn.EC2_METADATA_URL and
reordered and regrouped imports.

Change-Id: I52093bdd8a4b939ae06cf483535ed5d5a0e273d4
2013-07-19 12:34:03 -07:00
os_collect_config Use heat-cfntools path hint for cfn.metadata_url 2013-07-19 12:34:03 -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.