Collect and cache metadata, run hooks on changes.
Project description
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. A file will be written to the cache dir, os_config_files.json, which will be a json list of the file paths to the current copy of each metadata source. This list will also be set as a colon separated list in the environment variable OS_CONFIG_FILES for the command that is run. 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
```
The previous version of the metadata from a source (if available) is present at $FILENAME.last.
When run without a command, the metadata sources are printed as a json document.
# Quick Start
sudo pip install -U git+git://git.openstack.org/openstack/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.
=================
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. A file will be written to the cache dir, os_config_files.json, which will be a json list of the file paths to the current copy of each metadata source. This list will also be set as a colon separated list in the environment variable OS_CONFIG_FILES for the command that is run. 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
```
The previous version of the metadata from a source (if available) is present at $FILENAME.last.
When run without a command, the metadata sources are printed as a json document.
# Quick Start
sudo pip install -U git+git://git.openstack.org/openstack/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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
os-collect-config-0.1.2.tar.gz
(42.9 kB
view hashes)