)]}'
{"lib/ceilometer":[{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"e7178a120001a78a385f72e9808cc8f13da22550","unresolved":false,"context_lines":[{"line_number":136,"context_line":"        mongo ceilometer --eval \"db.dropDatabase();\""},{"line_number":137,"context_line":"    elif [ \"$CEILOMETER_BACKEND\" \u003d \u0027es\u0027 ] ; then"},{"line_number":138,"context_line":"        ${TOP_DIR}/pkg/elasticsearch.sh stop"},{"line_number":139,"context_line":"        ${TOP_DIR}/pkg/elasticsearch.sh uninstall"},{"line_number":140,"context_line":"    fi"},{"line_number":141,"context_line":"    if [ \"$CEILOMETER_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":142,"context_line":"        _cleanup_ceilometer_apache_wsgi"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"da86d52c_bf11425f","line":139,"updated":"2015-02-16 15:49:01.000000000","message":"removed uninstall as it seemed super aggressive","commit_id":"2697bd12e6695074b65bb10985941663a3a0050e"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"959458249c298a55eb20a80d4264297145733564","unresolved":false,"context_lines":[{"line_number":265,"context_line":""},{"line_number":266,"context_line":"function configure_es {"},{"line_number":267,"context_line":"    ${TOP_DIR}/pkg/elasticsearch.sh download"},{"line_number":268,"context_line":"    ${TOP_DIR}/pkg/elasticsearch.sh install"},{"line_number":269,"context_line":"    ${TOP_DIR}/pkg/elasticsearch.sh start"},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"    # give es time to start-up"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"da86d52c_d314374f","line":268,"updated":"2015-02-16 14:26:43.000000000","message":"I believe these first 2 should be in install_\n\nThe last one should be in configure_\n\nAlso, we should come up with a way to poll for readiness, install of the sleep","commit_id":"2697bd12e6695074b65bb10985941663a3a0050e"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"e7178a120001a78a385f72e9808cc8f13da22550","unresolved":false,"context_lines":[{"line_number":265,"context_line":""},{"line_number":266,"context_line":"function configure_es {"},{"line_number":267,"context_line":"    ${TOP_DIR}/pkg/elasticsearch.sh download"},{"line_number":268,"context_line":"    ${TOP_DIR}/pkg/elasticsearch.sh install"},{"line_number":269,"context_line":"    ${TOP_DIR}/pkg/elasticsearch.sh start"},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"    # give es time to start-up"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"da86d52c_df46f67a","line":268,"in_reply_to":"da86d52c_d314374f","updated":"2015-02-16 15:49:01.000000000","message":"Done","commit_id":"2697bd12e6695074b65bb10985941663a3a0050e"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"55407309b7fb99f871eee8ee5397837f2a3cb24c","unresolved":false,"context_lines":[{"line_number":255,"context_line":"    # give mongodb time to start-up"},{"line_number":256,"context_line":"    sleep 5"},{"line_number":257,"context_line":"}"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"# init_ceilometer() - Initialize etc."},{"line_number":260,"context_line":"function init_ceilometer {"},{"line_number":261,"context_line":"    # Create cache dir"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"da86d52c_315b3d87","side":"PARENT","line":258,"updated":"2015-02-19 16:03:34.000000000","message":"I would just as soon see these inlined, or at the very least renamed, those function names are too generic.\n\ninstall should occur during the rest of the install phase and start should occur with the rest of the service start.","commit_id":"2e9d32baf274fc0bd7edc5fd3b9df3f3fa01e2bd"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"3b2b869f4e973338a292e4cf32128b6fb2318056","unresolved":false,"context_lines":[{"line_number":255,"context_line":"    # give mongodb time to start-up"},{"line_number":256,"context_line":"    sleep 5"},{"line_number":257,"context_line":"}"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"# init_ceilometer() - Initialize etc."},{"line_number":260,"context_line":"function init_ceilometer {"},{"line_number":261,"context_line":"    # Create cache dir"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"ba7be1f8_e2336af4","side":"PARENT","line":258,"updated":"2015-02-20 01:01:16.000000000","message":"done","commit_id":"2e9d32baf274fc0bd7edc5fd3b9df3f3fa01e2bd"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"55407309b7fb99f871eee8ee5397837f2a3cb24c","unresolved":false,"context_lines":[{"line_number":271,"context_line":""},{"line_number":272,"context_line":"function configure_es {"},{"line_number":273,"context_line":"    ${TOP_DIR}/pkg/elasticsearch.sh start"},{"line_number":274,"context_line":"    # poll elasticsearch to see if it\u0027s started"},{"line_number":275,"context_line":"    for i in {1..30}; do"},{"line_number":276,"context_line":"        if [ $(curl -sL -w \"%{http_code}\" \"localhost:9200\" -o /dev/null) -eq 200 ]; then"},{"line_number":277,"context_line":"            return"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"da86d52c_d1c82124","line":274,"updated":"2015-02-19 16:03:34.000000000","message":"If this start poll is really needed it should be moved into pkg/elasticsearch.sh","commit_id":"582c2bde65ea4e630a16bab9e8a7e1821080c5c2"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"3b2b869f4e973338a292e4cf32128b6fb2318056","unresolved":false,"context_lines":[{"line_number":271,"context_line":""},{"line_number":272,"context_line":"function configure_es {"},{"line_number":273,"context_line":"    ${TOP_DIR}/pkg/elasticsearch.sh start"},{"line_number":274,"context_line":"    # poll elasticsearch to see if it\u0027s started"},{"line_number":275,"context_line":"    for i in {1..30}; do"},{"line_number":276,"context_line":"        if [ $(curl -sL -w \"%{http_code}\" \"localhost:9200\" -o /dev/null) -eq 200 ]; then"},{"line_number":277,"context_line":"            return"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"ba7be1f8_c23666e7","line":274,"in_reply_to":"da86d52c_d1c82124","updated":"2015-02-20 01:01:16.000000000","message":"done","commit_id":"582c2bde65ea4e630a16bab9e8a7e1821080c5c2"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"63b7d59d4884e71477b10c2e40a0247d53462ba2","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    if [ \"$CEILOMETER_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":137,"context_line":"        mongo ceilometer --eval \"db.dropDatabase();\""},{"line_number":138,"context_line":"    elif [ \"$CEILOMETER_BACKEND\" \u003d \u0027es\u0027 ] ; then"},{"line_number":139,"context_line":"        curl -XDELETE \"localhost:9200/events_*\""},{"line_number":140,"context_line":"    fi"},{"line_number":141,"context_line":"    if [ \"$CEILOMETER_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":142,"context_line":"        _cleanup_ceilometer_apache_wsgi"}],"source_content_type":"application/x-shellscript","patch_set":7,"id":"ba7be1f8_6ffda26e","line":139,"updated":"2015-02-26 22:46:21.000000000","message":"does this port need to be configurable?","commit_id":"77307ddf27d9b4fd5581c31147d38df3505ad5c0"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"9aa0780a1bb89e169e508e8ed226677c825d9ada","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    if [ \"$CEILOMETER_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":137,"context_line":"        mongo ceilometer --eval \"db.dropDatabase();\""},{"line_number":138,"context_line":"    elif [ \"$CEILOMETER_BACKEND\" \u003d \u0027es\u0027 ] ; then"},{"line_number":139,"context_line":"        curl -XDELETE \"localhost:9200/events_*\""},{"line_number":140,"context_line":"    fi"},{"line_number":141,"context_line":"    if [ \"$CEILOMETER_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":142,"context_line":"        _cleanup_ceilometer_apache_wsgi"}],"source_content_type":"application/x-shellscript","patch_set":7,"id":"ba7be1f8_45519d0d","line":139,"in_reply_to":"ba7be1f8_6ffda26e","updated":"2015-02-26 23:26:24.000000000","message":"this should be safe. 9200 is the default port and is only configurable through customising elasticserach\u0027s  conf file which we don\u0027t have access to.\n\nthis is similar to how we handle mongodb. ie use the default. see line 223","commit_id":"77307ddf27d9b4fd5581c31147d38df3505ad5c0"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"732e2c911554e1d4c4e5f50527284f32d9864054","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    if [ \"$CEILOMETER_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":137,"context_line":"        mongo ceilometer --eval \"db.dropDatabase();\""},{"line_number":138,"context_line":"    elif [ \"$CEILOMETER_BACKEND\" \u003d \u0027es\u0027 ] ; then"},{"line_number":139,"context_line":"        curl -XDELETE \"localhost:9200/events_*\""},{"line_number":140,"context_line":"    fi"},{"line_number":141,"context_line":"    if [ \"$CEILOMETER_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":142,"context_line":"        _cleanup_ceilometer_apache_wsgi"}],"source_content_type":"application/x-shellscript","patch_set":10,"id":"ba7be1f8_2dd187fb","line":139,"updated":"2015-03-02 16:19:20.000000000","message":"I thing installing the \u0027es\u0027 deployment without devstack, or installing \u0027es\u0027 to different node with devstack should be possible.\n\ncurl -XDELETE \"${ES_SERVICE_HOST:-$SERVICE_HOST}:9200/events_*","commit_id":"76e724b9f7417a666fcd1a792fbce5e825c1ed56"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"9f5d4f1472ba738d749c75e1bd48710a9bf70ac2","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    if [ \"$CEILOMETER_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":137,"context_line":"        mongo ceilometer --eval \"db.dropDatabase();\""},{"line_number":138,"context_line":"    elif [ \"$CEILOMETER_BACKEND\" \u003d \u0027es\u0027 ] ; then"},{"line_number":139,"context_line":"        curl -XDELETE \"localhost:9200/events_*\""},{"line_number":140,"context_line":"    fi"},{"line_number":141,"context_line":"    if [ \"$CEILOMETER_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":142,"context_line":"        _cleanup_ceilometer_apache_wsgi"}],"source_content_type":"application/x-shellscript","patch_set":10,"id":"ba7be1f8_f30cac96","line":139,"in_reply_to":"ba7be1f8_2dd187fb","updated":"2015-03-02 16:52:20.000000000","message":"hmm, is the suggestion to add an option to configure ES target, and if configured, devstack would skip install and startup?","commit_id":"76e724b9f7417a666fcd1a792fbce5e825c1ed56"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"ea9657d540b92c1f26f86aff9285b56ab6b5a5fe","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    if [ \"$CEILOMETER_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":137,"context_line":"        mongo ceilometer --eval \"db.dropDatabase();\""},{"line_number":138,"context_line":"    elif [ \"$CEILOMETER_BACKEND\" \u003d \u0027es\u0027 ] ; then"},{"line_number":139,"context_line":"        curl -XDELETE \"localhost:9200/events_*\""},{"line_number":140,"context_line":"    fi"},{"line_number":141,"context_line":"    if [ \"$CEILOMETER_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":142,"context_line":"        _cleanup_ceilometer_apache_wsgi"}],"source_content_type":"application/x-shellscript","patch_set":10,"id":"ba7be1f8_b62cbbad","line":139,"in_reply_to":"ba7be1f8_56a29f4b","updated":"2015-03-03 11:10:29.000000000","message":"I mean CEILOMETER_BACKEND\u003des .","commit_id":"76e724b9f7417a666fcd1a792fbce5e825c1ed56"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"39c781f0546cf493f28064716d6588ae3cb78c23","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    if [ \"$CEILOMETER_BACKEND\" \u003d \u0027mongodb\u0027 ] ; then"},{"line_number":137,"context_line":"        mongo ceilometer --eval \"db.dropDatabase();\""},{"line_number":138,"context_line":"    elif [ \"$CEILOMETER_BACKEND\" \u003d \u0027es\u0027 ] ; then"},{"line_number":139,"context_line":"        curl -XDELETE \"localhost:9200/events_*\""},{"line_number":140,"context_line":"    fi"},{"line_number":141,"context_line":"    if [ \"$CEILOMETER_USE_MOD_WSGI\" \u003d\u003d \"True\" ]; then"},{"line_number":142,"context_line":"        _cleanup_ceilometer_apache_wsgi"}],"source_content_type":"application/x-shellscript","patch_set":10,"id":"ba7be1f8_56a29f4b","line":139,"in_reply_to":"ba7be1f8_f30cac96","updated":"2015-03-03 11:06:53.000000000","message":"Maybe `es` could be handled similarly as the ENABLED_SERVICES.\n\nBasically on node A you would run devstack with ENABLED_SERVICES\u003delasticsearch, on node B you would configure ES_SERVICE_HOST\u003dnode_A; ES_SERVICE_HOST\u003des","commit_id":"76e724b9f7417a666fcd1a792fbce5e825c1ed56"}],"pkg/elasticsearch.sh":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"63b7d59d4884e71477b10c2e40a0247d53462ba2","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"function _check_elasticsearch_ready {"},{"line_number":51,"context_line":"    # poll elasticsearch to see if it\u0027s started"},{"line_number":52,"context_line":"    for i in {1..30}; do"},{"line_number":53,"context_line":"        if [ $(curl -sL -w \"%{http_code}\" \"localhost:9200\" -o /dev/null) -eq 200 ]; then"},{"line_number":54,"context_line":"            return"},{"line_number":55,"context_line":"        fi"}],"source_content_type":"text/x-sh","patch_set":7,"id":"ba7be1f8_cf9e8e54","line":52,"updated":"2015-02-26 22:46:21.000000000","message":"can you use wait_for_service\n\ni like checking the 200 code, maybe that should be done in that fn","commit_id":"77307ddf27d9b4fd5581c31147d38df3505ad5c0"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"9aa0780a1bb89e169e508e8ed226677c825d9ada","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"function _check_elasticsearch_ready {"},{"line_number":51,"context_line":"    # poll elasticsearch to see if it\u0027s started"},{"line_number":52,"context_line":"    for i in {1..30}; do"},{"line_number":53,"context_line":"        if [ $(curl -sL -w \"%{http_code}\" \"localhost:9200\" -o /dev/null) -eq 200 ]; then"},{"line_number":54,"context_line":"            return"},{"line_number":55,"context_line":"        fi"}],"source_content_type":"text/x-sh","patch_set":7,"id":"ba7be1f8_521c0178","line":52,"in_reply_to":"ba7be1f8_cf9e8e54","updated":"2015-02-26 23:26:24.000000000","message":"ok cool. i didn\u0027t know wait_for_service existed. 200 isn\u0027t actually important (i just wanted to make sure it was something valid).\n\ni think i\u0027ll leave it off of wait_for_service because i\u0027m not sure what all the services return tbh.","commit_id":"77307ddf27d9b4fd5581c31147d38df3505ad5c0"}]}
