# This file autogenerated by monitoring-channel observer
# It contains a list of attributes to be used by ceilometer proxy web server
# syntax: key=value

[default]
auth_url={{ auth_url }}
admin_user={{ admin_user }}
admin_tenant={{ admin_tenant }}
admin_password={{ admin_password }}
ceilometer_pub_sub_url={{ ceilometer_pub_sub_url }}

[allowed_tenants]
{% if allowed_tenant_ids %}
{% for tenant_id in allowed_tenant_ids %}
{{ tenant_id }}
{% endfor %}
{% endif %}
