)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"7a176c81680f3f3ec0f863902fdbf636964029df","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add devstack support"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change add the devstack support for aodh"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I7b700d191b99ae113d0764a24d399e1e83fd2a8f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"9a41bdd9_a2874ad6","line":9,"updated":"2015-07-17 12:54:38.000000000","message":"This change adds a devstack plugin to aodh?","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"d4333afbe3d59c5180e55ac96a627eec1dac902b","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add devstack support"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change add the devstack support for aodh"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I7b700d191b99ae113d0764a24d399e1e83fd2a8f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"9a41bdd9_a0b5fdd0","line":9,"in_reply_to":"9a41bdd9_a2874ad6","updated":"2015-07-17 14:58:28.000000000","message":"Done","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"}],"devstack/plugin.sh":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"1d43ecc1c91f1efbb20ae774a7ab698a616803ca","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"# _install_mongdb - Install mongodb and pyton lib."},{"line_number":36,"context_line":"function _install_aodh_mongodb {"},{"line_number":37,"context_line":"    # Server package is the same on all"},{"line_number":38,"context_line":"    local packages\u003dmongodb-server"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-sh","patch_set":6,"id":"ba3cc151_e890ee50","line":36,"updated":"2015-07-10 13:45:20.000000000","message":"I had to make some changes to the ceilometer version of this function to make sure that mongo is actually running when a later call to cleanup is made:\n\nhttps://review.openstack.org/#/c/200535/","commit_id":"9072adf22443418e0bab60747cf71aeb27b6f823"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"01af882a388d2dc2042a383658973f596a7a22dd","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"# _install_mongdb - Install mongodb and pyton lib."},{"line_number":36,"context_line":"function _install_aodh_mongodb {"},{"line_number":37,"context_line":"    # Server package is the same on all"},{"line_number":38,"context_line":"    local packages\u003dmongodb-server"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-sh","patch_set":6,"id":"ba3cc151_03c893a7","line":36,"in_reply_to":"ba3cc151_e890ee50","updated":"2015-07-10 13:57:18.000000000","message":"I\u0027m done the same namespacing here too.","commit_id":"9072adf22443418e0bab60747cf71aeb27b6f823"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"2041b5fbd31ced79005ec33cf4cc693791fbf49d","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"# Install required services for storage backends"},{"line_number":97,"context_line":"function _prepare_aodh_storage_backend {"},{"line_number":98,"context_line":"    if [ \"$CEILOMETER_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":99,"context_line":"        pip_install_gr pymongo"},{"line_number":100,"context_line":"        _install_aodh_mongodb"},{"line_number":101,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":6,"id":"ba3cc151_92c2af33","line":98,"updated":"2015-07-10 13:10:53.000000000","message":"AODH_BACKEND?","commit_id":"9072adf22443418e0bab60747cf71aeb27b6f823"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"01af882a388d2dc2042a383658973f596a7a22dd","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"# Install required services for storage backends"},{"line_number":97,"context_line":"function _prepare_aodh_storage_backend {"},{"line_number":98,"context_line":"    if [ \"$CEILOMETER_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":99,"context_line":"        pip_install_gr pymongo"},{"line_number":100,"context_line":"        _install_aodh_mongodb"},{"line_number":101,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":6,"id":"ba3cc151_63d39f60","line":98,"in_reply_to":"ba3cc151_92c2af33","updated":"2015-07-10 13:57:18.000000000","message":"Done","commit_id":"9072adf22443418e0bab60747cf71aeb27b6f823"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"0174ffe0f4fe5ff2d0a93d389f869477cd002a7a","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        packages\u003d\"${packages} mongodb\""},{"line_number":43,"context_line":"    fi"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    install_package ${packages}"},{"line_number":46,"context_line":"}"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"# _install_redis() - Install the redis server and python lib."}],"source_content_type":"text/x-sh","patch_set":9,"id":"9a41bdd9_584313af","line":45,"updated":"2015-07-16 10:10:10.000000000","message":"In my earlier comment about needing to make some changes, what I meant was that you might need to add:\n\n73    +    if is_fedora; then\n74\t+        restart_service mongod\n75\t+    else\n76\t+        restart_service mongodb\n77\t+    fi\n78\t+\n79\t+    # give time for service to restart \n80\t+    sleep 5\n\nOtherwise on a fresh machine where aodh is the only client of mongo it may never start.","commit_id":"daa2ea9f062e04eac5474624393623c193e2e4d0"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"a726e0d7f52e4c46dca9fbe5bb47582241b095e6","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        packages\u003d\"${packages} mongodb\""},{"line_number":43,"context_line":"    fi"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    install_package ${packages}"},{"line_number":46,"context_line":"}"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"# _install_redis() - Install the redis server and python lib."}],"source_content_type":"text/x-sh","patch_set":9,"id":"9a41bdd9_0e4e9396","line":45,"in_reply_to":"9a41bdd9_584313af","updated":"2015-07-16 15:23:41.000000000","message":"Done","commit_id":"daa2ea9f062e04eac5474624393623c193e2e4d0"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"61e486db984744530bd14a7a7a3eff42e65f544c","unresolved":false,"context_lines":[{"line_number":114,"context_line":"function _aodh_create_accounts {"},{"line_number":115,"context_line":"    if is_service_enabled aodh-api; then"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"        create_service_user \"aodh\" \"admin\""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        if [[ \"$KEYSTONE_CATALOG_BACKEND\" \u003d \u0027sql\u0027 ]]; then"},{"line_number":120,"context_line":"            local aodh_service\u003d$(get_or_create_service \"aodh\" \\"}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_a0952689","line":117,"updated":"2015-07-16 21:03:27.000000000","message":"why do we need admin again?","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"7a176c81680f3f3ec0f863902fdbf636964029df","unresolved":false,"context_lines":[{"line_number":114,"context_line":"function _aodh_create_accounts {"},{"line_number":115,"context_line":"    if is_service_enabled aodh-api; then"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"        create_service_user \"aodh\" \"admin\""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        if [[ \"$KEYSTONE_CATALOG_BACKEND\" \u003d \u0027sql\u0027 ]]; then"},{"line_number":120,"context_line":"            local aodh_service\u003d$(get_or_create_service \"aodh\" \\"}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_e2ba32c0","line":117,"in_reply_to":"9a41bdd9_a0952689","updated":"2015-07-17 12:54:38.000000000","message":"Isn\u0027t the admin requirement a hold over from something to do with the compute-agent and thus not required here? Might be wrong, I\u0027m pulling at a very weak memory.","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"d4333afbe3d59c5180e55ac96a627eec1dac902b","unresolved":false,"context_lines":[{"line_number":114,"context_line":"function _aodh_create_accounts {"},{"line_number":115,"context_line":"    if is_service_enabled aodh-api; then"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"        create_service_user \"aodh\" \"admin\""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        if [[ \"$KEYSTONE_CATALOG_BACKEND\" \u003d \u0027sql\u0027 ]]; then"},{"line_number":120,"context_line":"            local aodh_service\u003d$(get_or_create_service \"aodh\" \\"}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_60fdb56d","line":117,"in_reply_to":"9a41bdd9_e2ba32c0","updated":"2015-07-17 14:58:28.000000000","message":"This is needed by the aodh-alarm-evaluator that retreive the all alarms from the aodh-api.","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"61e486db984744530bd14a7a7a3eff42e65f544c","unresolved":false,"context_lines":[{"line_number":156,"context_line":"        iniset $AODH_CONF database connection $(database_connection_url aodh)"},{"line_number":157,"context_line":"        iniset $AODH_CONF DEFAULT collector_workers $API_WORKERS"},{"line_number":158,"context_line":"    elif [ \"$AODH_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":159,"context_line":"        iniset $AODH_CONF database connection mongodb://localhost:27017/aodh"},{"line_number":160,"context_line":"        cleanup_aodh"},{"line_number":161,"context_line":"    else"},{"line_number":162,"context_line":"        die $LINENO \"Unable to configure unknown AODH_BACKEND $AODH_BACKEND\""}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_60e63e46","line":159,"updated":"2015-07-16 21:03:27.000000000","message":"does this mean we are backward incompatible with mongo?","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"7a176c81680f3f3ec0f863902fdbf636964029df","unresolved":false,"context_lines":[{"line_number":156,"context_line":"        iniset $AODH_CONF database connection $(database_connection_url aodh)"},{"line_number":157,"context_line":"        iniset $AODH_CONF DEFAULT collector_workers $API_WORKERS"},{"line_number":158,"context_line":"    elif [ \"$AODH_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":159,"context_line":"        iniset $AODH_CONF database connection mongodb://localhost:27017/aodh"},{"line_number":160,"context_line":"        cleanup_aodh"},{"line_number":161,"context_line":"    else"},{"line_number":162,"context_line":"        die $LINENO \"Unable to configure unknown AODH_BACKEND $AODH_BACKEND\""}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_820b267d","line":159,"in_reply_to":"9a41bdd9_60e63e46","updated":"2015-07-17 12:54:38.000000000","message":"No, it just means that in devstack we\u0027re using a database named \"aodh\"?\n\nIf we\u0027re going to do upgrade testing between ceilometer and aodh (with grenade plugins or whatnot) then this name will need to be configurable from the environment, perhaps as AODH_BACKEND_DATABASE_NAME (or something less verbose) with a defualt of \u0027aodh\u0027 that a caller can overrride to \u0027ceilometer\u0027.","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"61e486db984744530bd14a7a7a3eff42e65f544c","unresolved":false,"context_lines":[{"line_number":184,"context_line":"    cp $AODH_DIR/etc/aodh/api_paste.ini $AODH_CONF_DIR"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"    # The compute and central agents need these credentials in order to"},{"line_number":187,"context_line":"    # call out to other services\u0027 public APIs."},{"line_number":188,"context_line":"    # The alarm evaluator needs these options to call aodh APIs"},{"line_number":189,"context_line":"    iniset $AODH_CONF service_credentials os_username aodh"},{"line_number":190,"context_line":"    iniset $AODH_CONF service_credentials os_password $SERVICE_PASSWORD"}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_a0c3e689","line":187,"updated":"2015-07-16 21:03:27.000000000","message":"remove the above reference.","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"d4333afbe3d59c5180e55ac96a627eec1dac902b","unresolved":false,"context_lines":[{"line_number":184,"context_line":"    cp $AODH_DIR/etc/aodh/api_paste.ini $AODH_CONF_DIR"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"    # The compute and central agents need these credentials in order to"},{"line_number":187,"context_line":"    # call out to other services\u0027 public APIs."},{"line_number":188,"context_line":"    # The alarm evaluator needs these options to call aodh APIs"},{"line_number":189,"context_line":"    iniset $AODH_CONF service_credentials os_username aodh"},{"line_number":190,"context_line":"    iniset $AODH_CONF service_credentials os_password $SERVICE_PASSWORD"}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_e01f85b5","line":187,"in_reply_to":"9a41bdd9_a0c3e689","updated":"2015-07-17 14:58:28.000000000","message":"Done","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"61e486db984744530bd14a7a7a3eff42e65f544c","unresolved":false,"context_lines":[{"line_number":199,"context_line":"    # Configured storage"},{"line_number":200,"context_line":"    _aodh_configure_storage_backend"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"    # NOTE: This must come after database configurate as those can"},{"line_number":203,"context_line":"    # call cleanup_aodh which will wipe the WSGI config."},{"line_number":204,"context_line":"    if [ \"$AODH_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":205,"context_line":"        iniset $AODH_CONF api pecan_debug \"False\""}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_403bfa9c","line":202,"updated":"2015-07-16 21:03:27.000000000","message":"s/configurate/configuration/","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"d4333afbe3d59c5180e55ac96a627eec1dac902b","unresolved":false,"context_lines":[{"line_number":199,"context_line":"    # Configured storage"},{"line_number":200,"context_line":"    _aodh_configure_storage_backend"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"    # NOTE: This must come after database configurate as those can"},{"line_number":203,"context_line":"    # call cleanup_aodh which will wipe the WSGI config."},{"line_number":204,"context_line":"    if [ \"$AODH_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":205,"context_line":"        iniset $AODH_CONF api pecan_debug \"False\""}],"source_content_type":"text/x-sh","patch_set":10,"id":"9a41bdd9_a0789df9","line":202,"in_reply_to":"9a41bdd9_403bfa9c","updated":"2015-07-17 14:58:28.000000000","message":"Done","commit_id":"0692dd4f451c4e79ff5e9b15f6746a8b953fa064"}]}
