A timeout config value is added for each collector which uses requests to fetch data, and this value is used for any requests calls. Without a timeout a request may stall indefinitely and os-collect-config will stop polling. A timeout default of 10 seconds is chosen as the default. This is used for both the connection timeout and the read timeout. Change-Id: I4ad0065b5a85393105c6385a15653d7204b4f880 Closes-Bug: #1600652
|7 years ago|
|os_collect_config||7 years ago|
|.coveragerc||8 years ago|
|.gitignore||9 years ago|
|.gitreview||10 years ago|
|.testr.conf||10 years ago|
|LICENSE||10 years ago|
|MANIFEST.in||10 years ago|
|README.rst||9 years ago|
|os-collect-config-and-friends.odg||9 years ago|
|os-collect-config-and-friends.svg||9 years ago|
|requirements.txt||7 years ago|
|setup.cfg||10 years ago|
|setup.py||8 years ago|
|test-requirements.txt||7 years ago|
|tox.ini||7 years ago|
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 been changed.
You must define what sources to collect configuration data from in /etc/os-collect-config.conf.
The format of this file is:
[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 is changed, 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:
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.
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:
That should print out a json representation of the entire ec2 metadata tree.
Recommend using LibreOffice draw to edit os-collect-config-and-friends.odg and regenerate the svg file. Alternatively edit the svg directly, but remove the .odg file if that is done.↩︎