)]}'
{"inc/ini-config":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"816417e1b44d0bca41aa4dff570eb53321da62b4","unresolved":false,"context_lines":[{"line_number":269,"context_line":"    set +o xtrace"},{"line_number":270,"context_line":"    local file\u003d$1"},{"line_number":271,"context_line":""},{"line_number":272,"context_line":"    values\u003d$(sed -ne \"s/^\\[\\(.*\\)\\]$/\\1/p\" \"$file\")"},{"line_number":273,"context_line":"    echo ${values}"},{"line_number":274,"context_line":"    $xtrace"},{"line_number":275,"context_line":"}"}],"source_content_type":"application/x-shellscript","patch_set":3,"id":"9a8ffd7b_7a3984d6","line":272,"updated":"2015-11-27 03:21:36.000000000","message":"should be a local, but why need it at all?","commit_id":"31f4b326ba9ef93a15d4efdf79cec017efb3f758"}],"lib/ironic":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"be22e6329fcec162cc89b060349725904c3c4945","unresolved":false,"context_lines":[{"line_number":614,"context_line":""},{"line_number":615,"context_line":"    for node_name in ${ironic_nodes}; do"},{"line_number":616,"context_line":"        # Common parameters for VM and HW nodes"},{"line_number":617,"context_line":"        local mac_address\u003d\"$(iniget $ironic_nodes_file $node_name mac_address)\""},{"line_number":618,"context_line":"        local cpus\u003d\"$(iniget $ironic_nodes_file $node_name cpus)\""},{"line_number":619,"context_line":"        local memory_mb\u003d\"$(iniget $ironic_nodes_file $node_name memory_mb)\""},{"line_number":620,"context_line":"        local local_gb\u003d\"$(iniget $ironic_nodes_file $node_name local_gb)\""}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9a8ffd7b_70ac058c","line":617,"updated":"2015-11-30 04:44:31.000000000","message":"please move these out so we\u0027re not hiding their return code (i guess this fools bashate\u0027s local foo\u003d$(blah) checking)","commit_id":"81a0ed3adda041322867a8c07962b54cf46a4625"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"be22e6329fcec162cc89b060349725904c3c4945","unresolved":false,"context_lines":[{"line_number":708,"context_line":"        local min_adjusted_disk"},{"line_number":709,"context_line":"        adjusted_disk\u003d$(($local_gb - $ephemeral_disk))"},{"line_number":710,"context_line":""},{"line_number":711,"context_line":"        (( min_memory_mb \u003d memory_mb \u003c ${min_memory_mb:\u003dmemory_mb} ? memory_mb : min_memory_mb ))"},{"line_number":712,"context_line":"        (( min_cpus \u003d cpus \u003c ${min_cpus:\u003dcpus} ? cpus : min_cpus ))"},{"line_number":713,"context_line":"        (( min_adjusted_disk \u003d local_gb \u003c ${min_adjusted_disk:\u003dlocal_gb} ? local_gb : min_adjusted_disk ))"},{"line_number":714,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9a8ffd7b_30075d83","line":711,"updated":"2015-11-30 04:44:31.000000000","message":"please don\u0027t use bare (( , because it only returns \"0\" if the expression works out to be non-zero.  it\u0027s caught us before (although these don\u0027t look like they\u0027ll work out to zero, we\u0027d rather avoid it)","commit_id":"81a0ed3adda041322867a8c07962b54cf46a4625"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"c6a4adda703d96b30810aec0a6175054b789bfd3","unresolved":false,"context_lines":[{"line_number":622,"context_line":"    while read hardware_info; do"},{"line_number":623,"context_line":"        if ! is_ironic_hardware; then"},{"line_number":624,"context_line":"            local mac_address\u003d$hardware_info"},{"line_number":625,"context_line":"        elif [[ -z \"${IRONIC_DEPLOY_DRIVER##*_ipmitool}\" ]]; then"},{"line_number":626,"context_line":"            local ipmi_address"},{"line_number":627,"context_line":"            ipmi_address\u003d$(echo $hardware_info |awk  \u0027{print $1}\u0027)"},{"line_number":628,"context_line":"            local mac_address"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_8c647149","side":"PARENT","line":625,"updated":"2015-12-07 08:01:26.000000000","message":"You remove this conditional which checked that the Ironic deploy driver was ipmitool. Is there a reason you removed this check?","commit_id":"63052a62823cd9c1799d2c354cb358b836874b50"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"639144e269c2865b3632756ff1f10c484c7919f1","unresolved":false,"context_lines":[{"line_number":622,"context_line":"    while read hardware_info; do"},{"line_number":623,"context_line":"        if ! is_ironic_hardware; then"},{"line_number":624,"context_line":"            local mac_address\u003d$hardware_info"},{"line_number":625,"context_line":"        elif [[ -z \"${IRONIC_DEPLOY_DRIVER##*_ipmitool}\" ]]; then"},{"line_number":626,"context_line":"            local ipmi_address"},{"line_number":627,"context_line":"            ipmi_address\u003d$(echo $hardware_info |awk  \u0027{print $1}\u0027)"},{"line_number":628,"context_line":"            local mac_address"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_8dd46b47","side":"PARENT","line":625,"in_reply_to":"7a740942_8c647149","updated":"2015-12-07 12:59:11.000000000","message":"This check is not necessary. Operator knows that currently devstack code supports automatic enrolment only of IPMI nodes. So if node was added to $IRONIC_HW_NODES_FILE it means that this node should be registered as IPMI.","commit_id":"63052a62823cd9c1799d2c354cb358b836874b50"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"c6a4adda703d96b30810aec0a6175054b789bfd3","unresolved":false,"context_lines":[{"line_number":474,"context_line":"    local num_vms"},{"line_number":475,"context_line":"    num_vms\u003d$(($IRONIC_VM_COUNT - 1))"},{"line_number":476,"context_line":"    for idx in $(seq 0 $num_vms); do"},{"line_number":477,"context_line":"        echo \"baremetal${IRONIC_VM_NETWORK_BRIDGE}-${idx}\""},{"line_number":478,"context_line":"    done"},{"line_number":479,"context_line":"}"},{"line_number":480,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_4c8769d7","line":477,"updated":"2015-12-07 08:01:26.000000000","message":"Any reason for this change?","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"639144e269c2865b3632756ff1f10c484c7919f1","unresolved":false,"context_lines":[{"line_number":474,"context_line":"    local num_vms"},{"line_number":475,"context_line":"    num_vms\u003d$(($IRONIC_VM_COUNT - 1))"},{"line_number":476,"context_line":"    for idx in $(seq 0 $num_vms); do"},{"line_number":477,"context_line":"        echo \"baremetal${IRONIC_VM_NETWORK_BRIDGE}-${idx}\""},{"line_number":478,"context_line":"    done"},{"line_number":479,"context_line":"}"},{"line_number":480,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_923b2a9c","line":477,"in_reply_to":"7a740942_4c8769d7","updated":"2015-12-07 12:59:11.000000000","message":"Done","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"5eb467f2b8400ecdbbd0c08fc2255e7218668a29","unresolved":false,"context_lines":[{"line_number":474,"context_line":"    local num_vms"},{"line_number":475,"context_line":"    num_vms\u003d$(($IRONIC_VM_COUNT - 1))"},{"line_number":476,"context_line":"    for idx in $(seq 0 $num_vms); do"},{"line_number":477,"context_line":"        echo \"baremetal${IRONIC_VM_NETWORK_BRIDGE}-${idx}\""},{"line_number":478,"context_line":"    done"},{"line_number":479,"context_line":"}"},{"line_number":480,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_6f80fbf7","line":477,"in_reply_to":"7a740942_4c8769d7","updated":"2015-12-07 16:27:37.000000000","message":"ironic node is added with the same name as VM. Unfortunatly ironic doesn\u0027t allow to use \u0027_\u0027 in the node name. That is why I changed _ with -","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"c6a4adda703d96b30810aec0a6175054b789bfd3","unresolved":false,"context_lines":[{"line_number":613,"context_line":"    local ironic_nodes"},{"line_number":614,"context_line":"    ironic_nodes\u003d$(iniget_sections \"${ironic_nodes_file}\")"},{"line_number":615,"context_line":""},{"line_number":616,"context_line":"    for node_name in ${ironic_nodes}; do"},{"line_number":617,"context_line":"        local mac_address"},{"line_number":618,"context_line":"        local cpus"},{"line_number":619,"context_line":"        local memory_mb"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_0c93a1a4","line":616,"updated":"2015-12-07 08:01:26.000000000","message":"I don\u0027t believe the { } are necessary in the variable name above?","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"639144e269c2865b3632756ff1f10c484c7919f1","unresolved":false,"context_lines":[{"line_number":613,"context_line":"    local ironic_nodes"},{"line_number":614,"context_line":"    ironic_nodes\u003d$(iniget_sections \"${ironic_nodes_file}\")"},{"line_number":615,"context_line":""},{"line_number":616,"context_line":"    for node_name in ${ironic_nodes}; do"},{"line_number":617,"context_line":"        local mac_address"},{"line_number":618,"context_line":"        local cpus"},{"line_number":619,"context_line":"        local memory_mb"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_92a56ab6","line":616,"in_reply_to":"7a740942_0c93a1a4","updated":"2015-12-07 12:59:11.000000000","message":"Done","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"c6a4adda703d96b30810aec0a6175054b789bfd3","unresolved":false,"context_lines":[{"line_number":629,"context_line":"        cpu_arch\u003d$(iniget $ironic_nodes_file $node_name cpu_arch)"},{"line_number":630,"context_line":"        ephemeral_disk\u003d$(iniget $ironic_nodes_file $node_name ephemeral_disk)"},{"line_number":631,"context_line":""},{"line_number":632,"context_line":"       # VM specific parameters"},{"line_number":633,"context_line":"        if ! is_ironic_hardware; then"},{"line_number":634,"context_line":"            local ssh_virt_type"},{"line_number":635,"context_line":"            local ssh_address"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_cc5ef911","line":632,"updated":"2015-12-07 08:01:26.000000000","message":"nit: above comment isn\u0027t aligned properly.","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"639144e269c2865b3632756ff1f10c484c7919f1","unresolved":false,"context_lines":[{"line_number":629,"context_line":"        cpu_arch\u003d$(iniget $ironic_nodes_file $node_name cpu_arch)"},{"line_number":630,"context_line":"        ephemeral_disk\u003d$(iniget $ironic_nodes_file $node_name ephemeral_disk)"},{"line_number":631,"context_line":""},{"line_number":632,"context_line":"       # VM specific parameters"},{"line_number":633,"context_line":"        if ! is_ironic_hardware; then"},{"line_number":634,"context_line":"            local ssh_virt_type"},{"line_number":635,"context_line":"            local ssh_address"}],"source_content_type":"application/x-shellscript","patch_set":8,"id":"7a740942_92becad2","line":632,"in_reply_to":"7a740942_cc5ef911","updated":"2015-12-07 12:59:11.000000000","message":"Done","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"}],"tools/ironic/scripts/create-node":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"c6a4adda703d96b30810aec0a6175054b789bfd3","unresolved":false,"context_lines":[{"line_number":20,"context_line":"    i386) ARCH\u003d\u0027i686\u0027 ;;"},{"line_number":21,"context_line":"    amd64) ARCH\u003d\u0027x86_64\u0027 ;;"},{"line_number":22,"context_line":"    *) echo \"Unsupported arch $4!\" ; exit 1 ;;"},{"line_number":23,"context_line":"esac"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"BRIDGE\u003d$6"},{"line_number":26,"context_line":"EMULATOR\u003d$7"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"7a740942_6c7a65f3","side":"PARENT","line":23,"updated":"2015-12-07 08:01:26.000000000","message":"Any reason to change this code? I don\u0027t see this change as being relevant to this patch\u0027s purpose?","commit_id":"63052a62823cd9c1799d2c354cb358b836874b50"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"639144e269c2865b3632756ff1f10c484c7919f1","unresolved":false,"context_lines":[{"line_number":20,"context_line":"    i386) ARCH\u003d\u0027i686\u0027 ;;"},{"line_number":21,"context_line":"    amd64) ARCH\u003d\u0027x86_64\u0027 ;;"},{"line_number":22,"context_line":"    *) echo \"Unsupported arch $4!\" ; exit 1 ;;"},{"line_number":23,"context_line":"esac"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"BRIDGE\u003d$6"},{"line_number":26,"context_line":"EMULATOR\u003d$7"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"7a740942_6ddedf12","side":"PARENT","line":23,"in_reply_to":"7a740942_6c7a65f3","updated":"2015-12-07 12:59:11.000000000","message":"This parameter is hardcoded to amd64. https://github.com/openstack-dev/devstack/blob/master/lib/ironic#L562. I\u0027ve introduce new variable IRONIC_VM_SPECS_CPU_ARCH that allows to launch devstack with ironic VMs on other arch than x86_64","commit_id":"63052a62823cd9c1799d2c354cb358b836874b50"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"c6a4adda703d96b30810aec0a6175054b789bfd3","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"# Send node info to NODES_FILE"},{"line_number":75,"context_line":"mac_address\u003d$(virsh dumpxml $NAME | grep \"mac address\" | head -1 | cut -d\\\u0027 -f2)"},{"line_number":76,"context_line":"switch_id\u003d$(ifconfig $BRIDGE | egrep -o \"HWaddr [A-Za-z0-9:]+\"|sed \"s/HWaddr\\ //\")"},{"line_number":77,"context_line":"echo \"[$NAME]\" \u003e\u003e $NODES_FILE"},{"line_number":78,"context_line":"echo \"mac_address\u003d$mac_address\" \u003e\u003e $NODES_FILE"},{"line_number":79,"context_line":"echo \"switch_info\u003d$BRIDGE\" \u003e\u003e $NODES_FILE"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"7a740942_cc4599b3","line":76,"updated":"2015-12-07 08:01:26.000000000","message":"How about calling this variable \"bridge_mac_address\" to be more clear about what it contains.","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"639144e269c2865b3632756ff1f10c484c7919f1","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"# Send node info to NODES_FILE"},{"line_number":75,"context_line":"mac_address\u003d$(virsh dumpxml $NAME | grep \"mac address\" | head -1 | cut -d\\\u0027 -f2)"},{"line_number":76,"context_line":"switch_id\u003d$(ifconfig $BRIDGE | egrep -o \"HWaddr [A-Za-z0-9:]+\"|sed \"s/HWaddr\\ //\")"},{"line_number":77,"context_line":"echo \"[$NAME]\" \u003e\u003e $NODES_FILE"},{"line_number":78,"context_line":"echo \"mac_address\u003d$mac_address\" \u003e\u003e $NODES_FILE"},{"line_number":79,"context_line":"echo \"switch_info\u003d$BRIDGE\" \u003e\u003e $NODES_FILE"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"7a740942_0dff1b35","line":76,"in_reply_to":"7a740942_cc4599b3","updated":"2015-12-07 12:59:11.000000000","message":"The name is set according to https://review.openstack.org/#/c/228496/12/doc/source/deploy/install-guide.rst. It is better to keep variable name the same for better reading.","commit_id":"0bd603af9431ea7d0650ffb6c878f115e333ec05"}]}
