)]}'
{"lib/quantum":[{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"399ba518d2ccf20739a590b8d5befdf28b3d79df","unresolved":false,"context_lines":[{"line_number":373,"context_line":"# Start running processes, including screen"},{"line_number":374,"context_line":"function start_quantum_agents() {"},{"line_number":375,"context_line":"    # Start up the quantum agents if enabled"},{"line_number":376,"context_line":"    if [[ $AGENT_BINARY !\u003d \u0027\u0027 ]]; then"},{"line_number":377,"context_line":"        screen_it q-agt \"cd $QUANTUM_DIR \u0026\u0026 python $AGENT_BINARY --config-file $QUANTUM_CONF --config-file /$Q_PLUGIN_CONF_FILE\""},{"line_number":378,"context_line":"    fi"},{"line_number":379,"context_line":"    screen_it q-dhcp \"cd $QUANTUM_DIR \u0026\u0026 python $AGENT_DHCP_BINARY --config-file $QUANTUM_CONF --config-file\u003d$Q_DHCP_CONF_FILE\""}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAAOH%2F%2F19g%3D","line":376,"updated":"2013-03-25 13:21:24.000000000","message":"What is the purpose of this addition test? Isn\u0027t it captured by the \u0026\u0026 python $AGENT_BINARY line that follows or do I misunderstand (I\u0027m no shell expert)?","commit_id":"f39c389fb28520e2b28cb4ff724a4c3b11a40530"},{"author":{"_account_id":6685,"name":"Baodong (Robert) Li","email":"baoli@cisco.com","username":"baoli"},"change_message_id":"e931c6e118e8688d77f06ba75f3bf2f54a6e480e","unresolved":false,"context_lines":[{"line_number":373,"context_line":"# Start running processes, including screen"},{"line_number":374,"context_line":"function start_quantum_agents() {"},{"line_number":375,"context_line":"    # Start up the quantum agents if enabled"},{"line_number":376,"context_line":"    if [[ $AGENT_BINARY !\u003d \u0027\u0027 ]]; then"},{"line_number":377,"context_line":"        screen_it q-agt \"cd $QUANTUM_DIR \u0026\u0026 python $AGENT_BINARY --config-file $QUANTUM_CONF --config-file /$Q_PLUGIN_CONF_FILE\""},{"line_number":378,"context_line":"    fi"},{"line_number":379,"context_line":"    screen_it q-dhcp \"cd $QUANTUM_DIR \u0026\u0026 python $AGENT_DHCP_BINARY --config-file $QUANTUM_CONF --config-file\u003d$Q_DHCP_CONF_FILE\""}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAAOH%2F%2F13s%3D","line":376,"in_reply_to":"AAAAOH%2F%2F174%3D","updated":"2013-03-25 14:24:30.000000000","message":"It sounds like a good idea to create a separate bug for it.","commit_id":"f39c389fb28520e2b28cb4ff724a4c3b11a40530"},{"author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"change_message_id":"54fd19e74f37a6018b229110ab64204008a9adb1","unresolved":false,"context_lines":[{"line_number":373,"context_line":"# Start running processes, including screen"},{"line_number":374,"context_line":"function start_quantum_agents() {"},{"line_number":375,"context_line":"    # Start up the quantum agents if enabled"},{"line_number":376,"context_line":"    if [[ $AGENT_BINARY !\u003d \u0027\u0027 ]]; then"},{"line_number":377,"context_line":"        screen_it q-agt \"cd $QUANTUM_DIR \u0026\u0026 python $AGENT_BINARY --config-file $QUANTUM_CONF --config-file /$Q_PLUGIN_CONF_FILE\""},{"line_number":378,"context_line":"    fi"},{"line_number":379,"context_line":"    screen_it q-dhcp \"cd $QUANTUM_DIR \u0026\u0026 python $AGENT_DHCP_BINARY --config-file $QUANTUM_CONF --config-file\u003d$Q_DHCP_CONF_FILE\""}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAAOH%2F%2F174%3D","line":376,"in_reply_to":"AAAAOH%2F%2F19g%3D","updated":"2013-03-25 13:32:33.000000000","message":"This will conditionally run the agent only for plugins which have a plugin agent on the host. But perhaps this is better done under it\u0027s own bug? Not sure.","commit_id":"f39c389fb28520e2b28cb4ff724a4c3b11a40530"},{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"399ba518d2ccf20739a590b8d5befdf28b3d79df","unresolved":false,"context_lines":[{"line_number":432,"context_line":""},{"line_number":433,"context_line":"    # If additional config files exist, copy them over to ``QUANTUM_CONF_DIR``"},{"line_number":434,"context_line":"    if [[ ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]} \u003e 0 \u0026\u0026 $Q_PLUGIN_ADDITIONAL_CONF_PATH \u003d\u003d \u0027\u0027 ]]; then"},{"line_number":435,"context_line":"        die $LINENO \"Quantum additional plugin config not set.. exiting\""},{"line_number":436,"context_line":"    fi"},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"    mkdir -p /$Q_PLUGIN_ADDITIONAL_CONF_PATH"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAAOH%2F%2F198%3D","line":435,"updated":"2013-03-25 13:21:24.000000000","message":"Guess I\u0027m a bit confused here...\n\nIf there are additional plugins, but no plugin area, we exit? Below that, we then create the area, if it doesn\u0027t exist and proceed to copy the config files over.\n\nDon\u0027t we want to just continue, vs exiting?\nIf exiting, should the line indicate that there is no plugin path set?","commit_id":"f39c389fb28520e2b28cb4ff724a4c3b11a40530"},{"author":{"_account_id":6685,"name":"Baodong (Robert) Li","email":"baoli@cisco.com","username":"baoli"},"change_message_id":"e931c6e118e8688d77f06ba75f3bf2f54a6e480e","unresolved":false,"context_lines":[{"line_number":432,"context_line":""},{"line_number":433,"context_line":"    # If additional config files exist, copy them over to ``QUANTUM_CONF_DIR``"},{"line_number":434,"context_line":"    if [[ ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]} \u003e 0 \u0026\u0026 $Q_PLUGIN_ADDITIONAL_CONF_PATH \u003d\u003d \u0027\u0027 ]]; then"},{"line_number":435,"context_line":"        die $LINENO \"Quantum additional plugin config not set.. exiting\""},{"line_number":436,"context_line":"    fi"},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"    mkdir -p /$Q_PLUGIN_ADDITIONAL_CONF_PATH"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAAOH%2F%2F14E%3D","line":435,"in_reply_to":"AAAAOH%2F%2F198%3D","updated":"2013-03-25 14:24:30.000000000","message":"the \u0027area\u0027 (or the path name) must be provided in order to create it in below.","commit_id":"f39c389fb28520e2b28cb4ff724a4c3b11a40530"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"a7bba5f89cad6b55cc9fba4383a768e33c47f45a","unresolved":false,"context_lines":[{"line_number":373,"context_line":"    local CFG_FILE_OPTIONS\u003d\"--config-file $QUANTUM_CONF --config-file /$Q_PLUGIN_CONF_FILE\""},{"line_number":374,"context_line":"    for (( f\u003d0; $f \u003c ${#Q_PLUGIN_ADDITIONAL_CONF_FILES[@]}; f+\u003d1 )); do"},{"line_number":375,"context_line":"         CFG_FILE_OPTIONS\u003d\"$CFG_FILE_OPTIONS --config-file /${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]}\""},{"line_number":376,"context_line":"    done"},{"line_number":377,"context_line":"    # Start the Quantum service"},{"line_number":378,"context_line":"    screen_it q-svc \"cd $QUANTUM_DIR \u0026\u0026 python $QUANTUM_DIR/bin/quantum-server $CFG_FILE_OPTIONS\""},{"line_number":379,"context_line":"    echo \"Waiting for Quantum to start...\""}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2FsA%3D","line":376,"updated":"2013-04-03 08:01:26.000000000","message":"L.374-376 can be written more simple as follows:\n\nfor f in \"${Q_PLUGIN_ADDITIONAL_CONF_FILES[@]}\"; do\n  CFG_FILE_OPTIONS+\u003d\" --config-file /$f\"\ndone","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":6685,"name":"Baodong (Robert) Li","email":"baoli@cisco.com","username":"baoli"},"change_message_id":"04bedd63c091fe292ef29b9471d55c3772043bd6","unresolved":false,"context_lines":[{"line_number":373,"context_line":"    local CFG_FILE_OPTIONS\u003d\"--config-file $QUANTUM_CONF --config-file /$Q_PLUGIN_CONF_FILE\""},{"line_number":374,"context_line":"    for (( f\u003d0; $f \u003c ${#Q_PLUGIN_ADDITIONAL_CONF_FILES[@]}; f+\u003d1 )); do"},{"line_number":375,"context_line":"         CFG_FILE_OPTIONS\u003d\"$CFG_FILE_OPTIONS --config-file /${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]}\""},{"line_number":376,"context_line":"    done"},{"line_number":377,"context_line":"    # Start the Quantum service"},{"line_number":378,"context_line":"    screen_it q-svc \"cd $QUANTUM_DIR \u0026\u0026 python $QUANTUM_DIR/bin/quantum-server $CFG_FILE_OPTIONS\""},{"line_number":379,"context_line":"    echo \"Waiting for Quantum to start...\""}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2FIc%3D","line":376,"in_reply_to":"AAAAOX%2F%2F%2FsA%3D","updated":"2013-04-03 15:14:06.000000000","message":"Good suggestion! will make the change accordingly","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"a7bba5f89cad6b55cc9fba4383a768e33c47f45a","unresolved":false,"context_lines":[{"line_number":422,"context_line":"    cp $QUANTUM_DIR/etc/quantum.conf $QUANTUM_CONF"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"    # Define an array to store additional config files"},{"line_number":425,"context_line":"    declare -a Q_PLUGIN_ADDITIONAL_CONF_FILENAMES"},{"line_number":426,"context_line":""},{"line_number":427,"context_line":"    # set plugin-specific variables"},{"line_number":428,"context_line":"    # Q_PLUGIN_CONF_PATH, Q_PLUGIN_CONF_FILENAME, Q_DB_NAME, Q_PLUGIN_CLASS"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2FrQ%3D","line":425,"updated":"2013-04-03 08:01:26.000000000","message":"(It is related to the comment below.)\nI prefer to merging Q_PLUGIN_ADDITIONAL_CONF_FILES and Q_PLUGIN_ADDITIONAL_CONF_FILENAMES into one array.\n\n\"declare -a \" is not necessarily required if we assign array with Q_PLUGIN_ADDITIONAL_CONF_FILENAMES\u003d(dir1/path1 dir2/path2). It would be helpful if some example is available (around L.98?).\n\nAnd, how about changing \"additional\" to \"extra\"? There is no strong reason but \"extra\" is shorter.","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":6685,"name":"Baodong (Robert) Li","email":"baoli@cisco.com","username":"baoli"},"change_message_id":"04bedd63c091fe292ef29b9471d55c3772043bd6","unresolved":false,"context_lines":[{"line_number":422,"context_line":"    cp $QUANTUM_DIR/etc/quantum.conf $QUANTUM_CONF"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"    # Define an array to store additional config files"},{"line_number":425,"context_line":"    declare -a Q_PLUGIN_ADDITIONAL_CONF_FILENAMES"},{"line_number":426,"context_line":""},{"line_number":427,"context_line":"    # set plugin-specific variables"},{"line_number":428,"context_line":"    # Q_PLUGIN_CONF_PATH, Q_PLUGIN_CONF_FILENAME, Q_DB_NAME, Q_PLUGIN_CLASS"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2FIU%3D","line":425,"in_reply_to":"AAAAOX%2F%2F%2FrQ%3D","updated":"2013-04-03 15:14:06.000000000","message":"will do.","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"a7bba5f89cad6b55cc9fba4383a768e33c47f45a","unresolved":false,"context_lines":[{"line_number":440,"context_line":"    iniset /$Q_PLUGIN_CONF_FILE DATABASE sql_connection `database_connection_url $Q_DB_NAME`"},{"line_number":441,"context_line":"    iniset $QUANTUM_CONF DEFAULT state_path $DATA_DIR/quantum"},{"line_number":442,"context_line":""},{"line_number":443,"context_line":"    # If additional config files exist, copy them over to ``QUANTUM_CONF_DIR``"},{"line_number":444,"context_line":"    if [[ ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]} \u003e 0 \u0026\u0026 $Q_PLUGIN_ADDITIONAL_CONF_PATH \u003d\u003d \u0027\u0027 ]]; then"},{"line_number":445,"context_line":"        die $LINENO \"Quantum additional plugin config not set.. exiting\""},{"line_number":446,"context_line":"    fi"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2FrY%3D","line":443,"updated":"2013-04-03 08:01:26.000000000","message":"This comment seems no longer to be correct.","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":6685,"name":"Baodong (Robert) Li","email":"baoli@cisco.com","username":"baoli"},"change_message_id":"04bedd63c091fe292ef29b9471d55c3772043bd6","unresolved":false,"context_lines":[{"line_number":440,"context_line":"    iniset /$Q_PLUGIN_CONF_FILE DATABASE sql_connection `database_connection_url $Q_DB_NAME`"},{"line_number":441,"context_line":"    iniset $QUANTUM_CONF DEFAULT state_path $DATA_DIR/quantum"},{"line_number":442,"context_line":""},{"line_number":443,"context_line":"    # If additional config files exist, copy them over to ``QUANTUM_CONF_DIR``"},{"line_number":444,"context_line":"    if [[ ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]} \u003e 0 \u0026\u0026 $Q_PLUGIN_ADDITIONAL_CONF_PATH \u003d\u003d \u0027\u0027 ]]; then"},{"line_number":445,"context_line":"        die $LINENO \"Quantum additional plugin config not set.. exiting\""},{"line_number":446,"context_line":"    fi"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2FIQ%3D","line":443,"in_reply_to":"AAAAOX%2F%2F%2FrY%3D","updated":"2013-04-03 15:14:06.000000000","message":"Yea, it\u0027s a bit inaccurate. I will move it down to the right place","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"a7bba5f89cad6b55cc9fba4383a768e33c47f45a","unresolved":false,"context_lines":[{"line_number":450,"context_line":"    for (( f\u003d0; $f \u003c ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]}; f+\u003d1 )); do"},{"line_number":451,"context_line":"        Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]\u003d$Q_PLUGIN_ADDITIONAL_CONF_PATH/${Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[$f]}"},{"line_number":452,"context_line":"        cp $QUANTUM_DIR/${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]} /${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]}"},{"line_number":453,"context_line":"    done"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"    _quantum_setup_rootwrap"},{"line_number":456,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2Frs%3D","line":453,"updated":"2013-04-03 08:01:26.000000000","message":"I think this logic from L.443 to 453 can be done in quantum_plugin_configure_common, i.e. create required directories and copy additional plugin config files.\n\nThe current logic support only one directory for additional config files (L.448). If we copy files in quantum_plugin_configure_common, each plugin can deploy any config files in any directory as it wants. And by adding paths of their config files to Q_PLUGIN_ADDITIONAL_CONF_FILES in the plugin function, a plugin can launch quantum-server with multiple config-file options.","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":6685,"name":"Baodong (Robert) Li","email":"baoli@cisco.com","username":"baoli"},"change_message_id":"51756f0ed826c71a35f74f958e2ed00fbdf777bc","unresolved":false,"context_lines":[{"line_number":450,"context_line":"    for (( f\u003d0; $f \u003c ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]}; f+\u003d1 )); do"},{"line_number":451,"context_line":"        Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]\u003d$Q_PLUGIN_ADDITIONAL_CONF_PATH/${Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[$f]}"},{"line_number":452,"context_line":"        cp $QUANTUM_DIR/${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]} /${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]}"},{"line_number":453,"context_line":"    done"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"    _quantum_setup_rootwrap"},{"line_number":456,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2Bxc%3D","line":453,"in_reply_to":"AAAAOX%2F%2F%2B%2B8%3D","updated":"2013-04-03 17:59:32.000000000","message":"sounds reasonable for multiple plugins. This change is meant to work with a single core plugin with multiple config files. \n\nMaybe the change to support multiple plugins can be made in the future when the requirement becomes clear? \n\nBut do let me know if you still want to push this to the plugin script.","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"21e6a0d923f3277198702430957edc3afd5430e0","unresolved":false,"context_lines":[{"line_number":450,"context_line":"    for (( f\u003d0; $f \u003c ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]}; f+\u003d1 )); do"},{"line_number":451,"context_line":"        Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]\u003d$Q_PLUGIN_ADDITIONAL_CONF_PATH/${Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[$f]}"},{"line_number":452,"context_line":"        cp $QUANTUM_DIR/${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]} /${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]}"},{"line_number":453,"context_line":"    done"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"    _quantum_setup_rootwrap"},{"line_number":456,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F9f0%3D","line":453,"in_reply_to":"AAAAOX%2F%2F%2Bxc%3D","updated":"2013-04-04 14:19:33.000000000","message":"Ok, I understand the background of the patch. First time I read the patch, I think this patch just supports multiple --config-file options for quantum-server and I am afraid  this limits the flexibility.","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"827c55d7cdcd2f0195d585b858f3fd9392da39f7","unresolved":false,"context_lines":[{"line_number":450,"context_line":"    for (( f\u003d0; $f \u003c ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]}; f+\u003d1 )); do"},{"line_number":451,"context_line":"        Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]\u003d$Q_PLUGIN_ADDITIONAL_CONF_PATH/${Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[$f]}"},{"line_number":452,"context_line":"        cp $QUANTUM_DIR/${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]} /${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]}"},{"line_number":453,"context_line":"    done"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"    _quantum_setup_rootwrap"},{"line_number":456,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2B%2B8%3D","line":453,"in_reply_to":"AAAAOX%2F%2F%2FIA%3D","updated":"2013-04-03 16:08:09.000000000","message":"I know your logic is following the way to setup the plugin config file and what devstack Cisco plugin support tries to do.\n\nIn future the quantum server may take more driver specific config files from multiple plugins: e.g. hardware driver config (such as Arista driver) with OVS plugin and several service plugin config files. I am not sure one additional conf path can cover such case. This is the background of my comment. Make sense?","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"},{"author":{"_account_id":6685,"name":"Baodong (Robert) Li","email":"baoli@cisco.com","username":"baoli"},"change_message_id":"04bedd63c091fe292ef29b9471d55c3772043bd6","unresolved":false,"context_lines":[{"line_number":450,"context_line":"    for (( f\u003d0; $f \u003c ${#Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[@]}; f+\u003d1 )); do"},{"line_number":451,"context_line":"        Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]\u003d$Q_PLUGIN_ADDITIONAL_CONF_PATH/${Q_PLUGIN_ADDITIONAL_CONF_FILENAMES[$f]}"},{"line_number":452,"context_line":"        cp $QUANTUM_DIR/${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]} /${Q_PLUGIN_ADDITIONAL_CONF_FILES[$f]}"},{"line_number":453,"context_line":"    done"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"    _quantum_setup_rootwrap"},{"line_number":456,"context_line":"}"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAOX%2F%2F%2FIA%3D","line":453,"in_reply_to":"AAAAOX%2F%2F%2Frs%3D","updated":"2013-04-03 15:14:06.000000000","message":"it\u0027s following the logic used to set up the main plugin config file. In addition, this logic is common to all plugins. Not sure if we have any practical use case for the plugin to choose where to place their config files. Let me know if you disagree.","commit_id":"d856bd972b2555bb9e113cd02f24add425f65618"}]}
