{"id":20111734,"url":"https://github.com/openstack/os-collect-config","last_synced_at":"2025-04-06T20:13:10.319Z","repository":{"id":10120169,"uuid":"12188911","full_name":"openstack/os-collect-config","owner":"openstack","description":"Collect and cache metadata, run hooks on changes. Mirror of code maintained at opendev.org.","archived":false,"fork":false,"pushed_at":"2024-10-19T15:39:49.000Z","size":732,"stargazers_count":55,"open_issues_count":0,"forks_count":19,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-30T19:07:26.356Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://opendev.org/openstack/os-collect-config","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openstack.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-08-18T02:03:43.000Z","updated_at":"2024-10-19T15:39:52.000Z","dependencies_parsed_at":"2023-12-19T15:03:46.856Z","dependency_job_id":"2331c8c5-74ba-4349-b7e6-2685f890ac58","html_url":"https://github.com/openstack/os-collect-config","commit_stats":null,"previous_names":[],"tags_count":109,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fos-collect-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fos-collect-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fos-collect-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fos-collect-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openstack","download_url":"https://codeload.github.com/openstack/os-collect-config/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247543594,"owners_count":20955865,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T18:17:30.802Z","updated_at":"2025-04-06T20:13:10.282Z","avatar_url":"https://github.com/openstack.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"========================\nTeam and repository tags\n========================\n\n.. image:: https://governance.openstack.org/tc/badges/os-collect-config.svg\n    :target: https://governance.openstack.org/tc/reference/tags/index.html\n\n.. Change things from this point on\n\n=================\nos-collect-config\n=================\n\n-------------------------------------------------\nCollect configuration from cloud metadata sources\n-------------------------------------------------\n\nWhat does it do?\n================\n\nIt collects data from defined configuration sources and runs a defined\nhook whenever the metadata has been changed.\n\n.. image:: os-collect-config-and-friends.svg\n\n[#update_svg]_\n\nUsage\n=====\n\nYou must define what sources to collect configuration data from in\n*/etc/os-collect-config.conf*.\n\nThe format of this file is::\n\n  [DEFAULT]\n  command=os-refresh-config\n\n  [cfn]\n  metadata_url=http://192.0.2.99:8000/v1/\n  access_key_id = ABCDEFGHIJLMNOP01234567890\n  secret_access_key = 01234567890ABCDEFGHIJKLMNOP\n  path = MyResource\n  stack_name = my.stack\n\nThese sources will be polled and whenever any of them is changed,\n*default.command* will be run. A file will be written to the cache\ndir, os_config_files.json, which will be a json list of the file paths\nto the current copy of each metadata source. This list will also be\nset as a colon separated list in the environment variable\n*OS_CONFIG_FILES* for the command that is run. So in the example\nabove, *os-refresh-config* would be executed with something like this\nin *OS_CONFIG_FILES*::\n\n  /var/lib/os-collect-config/ec2.json:/var/lib/os-collect-config/cfn.json\n\nThe previous version of the metadata from a source (if available) is present at $FILENAME.last.\n\nWhen run without a command, the metadata sources are printed as a json document.\n\nQuick Start\n===========\n\nInstall::\n\n  sudo pip install -U git+https://opendev.org/openstack/os-collect-config.git\n\nRun it on an OpenStack instance with access to ec2 metadata::\n\n  os-collect-config\n\nThat should print out a json representation of the entire ec2 metadata tree.\n\n.. [#update_svg] 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.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenstack%2Fos-collect-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenstack%2Fos-collect-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenstack%2Fos-collect-config/lists"}