)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"cc4c48a46605c7106bed806d3873f46e9d64ecac","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add floating ip with process create instance"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch resolves problem adding floating ip,"},{"line_number":10,"context_line":"that emerged with keystone API v3"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I2a19cc8e5cc60ef076cfea335c7704cceaa561b0"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"1a6eadb0_81665d27","line":9,"updated":"2016-12-20 16:48:41.000000000","message":"It is allowed 72 chars per single line.\nAlso please be more specific here ie:\n* grant nova user with new role\n* create a server with fixed-ip","commit_id":"bd4f3ad4f073e7b9c1003ff14e342e1cf3a6769a"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"84f40d7582704f1e59f43ba23178ada6e4bc6248","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add floating ip with process create instance"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch resolves problem adding floating ip"},{"line_number":10,"context_line":"and adds role for grenade user"},{"line_number":11,"context_line":"that emerged with keystone API v3"},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"ba5201f7_7d894eca","line":9,"updated":"2016-12-30 12:27:49.000000000","message":"It is allowed 72 characters per line in commit message.\n\nhttps://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"4822fc8035fdbf38280fb58521ea9acaa41c71f1"}],"projects/60_nova/resources.sh":[{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"cc4c48a46605c7106bed806d3873f46e9d64ecac","unresolved":false,"context_lines":[{"line_number":83,"context_line":"        local net\u003d\"--nic net-id\u003d$net_id\""},{"line_number":84,"context_line":"    fi"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"   # openstack server create --image $DEFAULT_IMAGE_NAME \\"},{"line_number":87,"context_line":"   #     --flavor $DEFAULT_INSTANCE_TYPE \\"},{"line_number":88,"context_line":"   #     --security-group $NOVA_USER \\"},{"line_number":89,"context_line":"   #     $net \\"}],"source_content_type":"text/x-sh","patch_set":4,"id":"1a6eadb0_6195c1e2","line":86,"updated":"2016-12-20 16:48:41.000000000","message":"Please remove this completely.","commit_id":"bd4f3ad4f073e7b9c1003ff14e342e1cf3a6769a"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"cc4c48a46605c7106bed806d3873f46e9d64ecac","unresolved":false,"context_lines":[{"line_number":102,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":103,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":104,"context_line":"    #openstack server add floating ip $NOVA_SERVER $ip"},{"line_number":105,"context_line":"    #port_id\u003d$(openstack port list | grep $ip | awk \u0027{print $2}\u0027)"},{"line_number":106,"context_line":"    net_id\u003d$(openstack floating ip show $ip -f value -c \"floating_network_id\")    "},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""}],"source_content_type":"text/x-sh","patch_set":4,"id":"1a6eadb0_c1a2154b","line":105,"updated":"2016-12-20 16:48:41.000000000","message":"do not comment, just remove.","commit_id":"bd4f3ad4f073e7b9c1003ff14e342e1cf3a6769a"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"cc4c48a46605c7106bed806d3873f46e9d64ecac","unresolved":false,"context_lines":[{"line_number":106,"context_line":"    net_id\u003d$(openstack floating ip show $ip -f value -c \"floating_network_id\")    "},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"\t"},{"line_number":110,"context_line":"openstack server create --image $DEFAULT_IMAGE_NAME \\"},{"line_number":111,"context_line":"        --flavor $DEFAULT_INSTANCE_TYPE \\"},{"line_number":112,"context_line":"        --security-group $NOVA_USER \\"}],"source_content_type":"text/x-sh","patch_set":4,"id":"1a6eadb0_c1b9357b","line":109,"range":{"start_line":109,"start_character":0,"end_line":109,"end_character":1},"updated":"2016-12-20 16:48:41.000000000","message":"please remove tabs","commit_id":"bd4f3ad4f073e7b9c1003ff14e342e1cf3a6769a"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"84f40d7582704f1e59f43ba23178ada6e4bc6248","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    fi"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # Add the member role to the new project and user"},{"line_number":58,"context_line":"    # User in keystone v3 does not owned for any project "},{"line_number":59,"context_line":"    # and we need assign some role for him"},{"line_number":60,"context_line":"    openstack role add --project $NOVA_PROJECT --user $NOVA_USER Member"},{"line_number":61,"context_line":""}],"source_content_type":"text/x-sh","patch_set":11,"id":"ba5201f7_bd93b6f9","line":58,"updated":"2016-12-30 12:27:49.000000000","message":"whitespace\ns/any project/any project by default/","commit_id":"4822fc8035fdbf38280fb58521ea9acaa41c71f1"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"84f40d7582704f1e59f43ba23178ada6e4bc6248","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # Add the member role to the new project and user"},{"line_number":58,"context_line":"    # User in keystone v3 does not owned for any project "},{"line_number":59,"context_line":"    # and we need assign some role for him"},{"line_number":60,"context_line":"    openstack role add --project $NOVA_PROJECT --user $NOVA_USER Member"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    resource_save nova user_id $id"}],"source_content_type":"text/x-sh","patch_set":11,"id":"ba5201f7_dd907aef","line":59,"range":{"start_line":59,"start_character":25,"end_line":59,"end_character":29},"updated":"2016-12-30 12:27:49.000000000","message":"why some, in line above you assigning Member role.","commit_id":"4822fc8035fdbf38280fb58521ea9acaa41c71f1"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"84f40d7582704f1e59f43ba23178ada6e4bc6248","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    fi"},{"line_number":104,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":"    #openstack server add floating ip $NOVA_SERVER $ip"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":109,"context_line":"    port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"}],"source_content_type":"text/x-sh","patch_set":11,"id":"ba5201f7_dd7ebaad","line":106,"updated":"2016-12-30 12:27:49.000000000","message":"please remove this line","commit_id":"4822fc8035fdbf38280fb58521ea9acaa41c71f1"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"84f40d7582704f1e59f43ba23178ada6e4bc6248","unresolved":false,"context_lines":[{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":"    #openstack server add floating ip $NOVA_SERVER $ip"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":109,"context_line":"    port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":110,"context_line":"    "},{"line_number":111,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t assosiate ip, becouse use nova client"}],"source_content_type":"text/x-sh","patch_set":11,"id":"ba5201f7_3d442673","line":108,"updated":"2016-12-30 12:27:49.000000000","message":"please make nova_ip and port_id variables local","commit_id":"4822fc8035fdbf38280fb58521ea9acaa41c71f1"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"84f40d7582704f1e59f43ba23178ada6e4bc6248","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":109,"context_line":"    port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":110,"context_line":"    "},{"line_number":111,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t assosiate ip, becouse use nova client"},{"line_number":112,"context_line":"    neutron floatingip-associate $id $port_id"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"    uuid\u003d$(openstack server show $NOVA_SERVER -f value -c id)"}],"source_content_type":"text/x-sh","patch_set":11,"id":"ba5201f7_bd581658","line":111,"updated":"2016-12-30 12:27:49.000000000","message":"In Newton release Nova deprecate assigning floating-ip to server via novaclient, neutronclient should be used instead. Would be good to add a link to commit where it was done.","commit_id":"4822fc8035fdbf38280fb58521ea9acaa41c71f1"},{"author":{"_account_id":22724,"name":"Galyna Zholtkevych","email":"galynazholtkevych1991@gmail.com","username":"gzholtkevych"},"change_message_id":"51896a30736a237e835ad39101b0ad92bb348487","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    fi"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # Add the member role to the new project and user"},{"line_number":58,"context_line":"    # User in keystone v3 does not owned for any project"},{"line_number":59,"context_line":"    # and we need assign Member role for him"},{"line_number":60,"context_line":"    openstack role add --project $NOVA_PROJECT --user $NOVA_USER Member"},{"line_number":61,"context_line":""}],"source_content_type":"text/x-sh","patch_set":13,"id":"7a3c09a3_a2678ab5","line":58,"range":{"start_line":58,"start_character":26,"end_line":58,"end_character":56},"updated":"2017-01-17 11:29:16.000000000","message":"s/does not owned for/does not own\ns/any project/any project by default\nBecause if a user specifies the project, it is not default behaviour","commit_id":"4a9f80b6f98e59d0bad9e4eef39ff4256af51d50"},{"author":{"_account_id":23330,"name":"Oksana Voshchana","email":"anascko@gmail.com","username":"Oksana"},"change_message_id":"c3b1065551d63e02fc0cff6cf92922807f56b376","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    fi"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # Add the member role to the new project and user"},{"line_number":58,"context_line":"    # User in keystone v3 does not owned for any project"},{"line_number":59,"context_line":"    # and we need assign Member role for him"},{"line_number":60,"context_line":"    openstack role add --project $NOVA_PROJECT --user $NOVA_USER Member"},{"line_number":61,"context_line":""}],"source_content_type":"text/x-sh","patch_set":13,"id":"7a3c09a3_42e6db15","line":58,"range":{"start_line":58,"start_character":26,"end_line":58,"end_character":56},"in_reply_to":"7a3c09a3_a2678ab5","updated":"2017-01-17 14:42:51.000000000","message":"Thanks Galyna, \nI think better to leave as is\nThere are no default project case. We create user without any specific attributes. A role associate user with projects or domains","commit_id":"4a9f80b6f98e59d0bad9e4eef39ff4256af51d50"},{"author":{"_account_id":22724,"name":"Galyna Zholtkevych","email":"galynazholtkevych1991@gmail.com","username":"gzholtkevych"},"change_message_id":"51896a30736a237e835ad39101b0ad92bb348487","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t assosiate ip, becouse use nova client"},{"line_number":111,"context_line":"    # According to http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html "},{"line_number":112,"context_line":"    # via nova command \"add-floating-ip\" is deprecated"},{"line_number":113,"context_line":"    neutron floatingip-associate $id $port_id"},{"line_number":114,"context_line":""}],"source_content_type":"text/x-sh","patch_set":13,"id":"7a3c09a3_fd277ac7","line":111,"range":{"start_line":111,"start_character":19,"end_line":111,"end_character":92},"updated":"2017-01-17 11:29:16.000000000","message":"Better use more precise reference. It will be simpler to search for it in docs\nIn this case, use http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html#upgrade-notes","commit_id":"4a9f80b6f98e59d0bad9e4eef39ff4256af51d50"},{"author":{"_account_id":23330,"name":"Oksana Voshchana","email":"anascko@gmail.com","username":"Oksana"},"change_message_id":"c3b1065551d63e02fc0cff6cf92922807f56b376","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t assosiate ip, becouse use nova client"},{"line_number":111,"context_line":"    # According to http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html "},{"line_number":112,"context_line":"    # via nova command \"add-floating-ip\" is deprecated"},{"line_number":113,"context_line":"    neutron floatingip-associate $id $port_id"},{"line_number":114,"context_line":""}],"source_content_type":"text/x-sh","patch_set":13,"id":"7a3c09a3_c27f2bde","line":111,"range":{"start_line":111,"start_character":19,"end_line":111,"end_character":92},"in_reply_to":"7a3c09a3_fd277ac7","updated":"2017-01-17 14:42:51.000000000","message":"Thanks Galyna,\nYes it will be better","commit_id":"4a9f80b6f98e59d0bad9e4eef39ff4256af51d50"},{"author":{"_account_id":14614,"name":"Kyrylo Romanenko","display_name":"K.Romanenko","email":"romanenko-kv@hotmail.com","username":"kromanenko"},"change_message_id":"5877a508f0269107939875b209d79b5221318623","unresolved":false,"context_lines":[{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t assosiate ip, becouse use nova client"},{"line_number":111,"context_line":"    # According to http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html#upgrade-notes "},{"line_number":112,"context_line":"    # via nova command \"add-floating-ip\" is deprecated"},{"line_number":113,"context_line":"    neutron floatingip-associate $id $port_id"}],"source_content_type":"text/x-sh","patch_set":15,"id":"7a3c09a3_f396bb3c","line":110,"range":{"start_line":110,"start_character":50,"end_line":110,"end_character":59},"updated":"2017-01-17 15:33:03.000000000","message":"associate","commit_id":"426ebef9d7b47ec2ff747c228401c37843e9a0d5"},{"author":{"_account_id":14614,"name":"Kyrylo Romanenko","display_name":"K.Romanenko","email":"romanenko-kv@hotmail.com","username":"kromanenko"},"change_message_id":"5877a508f0269107939875b209d79b5221318623","unresolved":false,"context_lines":[{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t assosiate ip, becouse use nova client"},{"line_number":111,"context_line":"    # According to http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html#upgrade-notes "},{"line_number":112,"context_line":"    # via nova command \"add-floating-ip\" is deprecated"},{"line_number":113,"context_line":"    neutron floatingip-associate $id $port_id"}],"source_content_type":"text/x-sh","patch_set":15,"id":"7a3c09a3_73abab75","line":110,"range":{"start_line":110,"start_character":64,"end_line":110,"end_character":71},"updated":"2017-01-17 15:33:03.000000000","message":"because","commit_id":"426ebef9d7b47ec2ff747c228401c37843e9a0d5"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"c6721d809844d37448b89ded13d6d304fc78cb9b","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    fi"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # Add the member role to the new project and user"},{"line_number":58,"context_line":"    # User in keystone v3 does not own for any project"},{"line_number":59,"context_line":"    # and we need assign Member role for him"},{"line_number":60,"context_line":"    openstack role add --project $NOVA_PROJECT --user $NOVA_USER Member"},{"line_number":61,"context_line":""}],"source_content_type":"text/x-sh","patch_set":16,"id":"5a3905b3_45ff4e01","line":58,"range":{"start_line":58,"start_character":35,"end_line":58,"end_character":42},"updated":"2017-01-19 15:21:34.000000000","message":"belong to?","commit_id":"c796cf956b1b4f02854f6f185334a87b30f4cbdf"},{"author":{"_account_id":23330,"name":"Oksana Voshchana","email":"anascko@gmail.com","username":"Oksana"},"change_message_id":"0afeef4e7f001bb2eedfa76b4a847d9bacd2e545","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    fi"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # Add the member role to the new project and user"},{"line_number":58,"context_line":"    # User in keystone v3 does not own for any project"},{"line_number":59,"context_line":"    # and we need assign Member role for him"},{"line_number":60,"context_line":"    openstack role add --project $NOVA_PROJECT --user $NOVA_USER Member"},{"line_number":61,"context_line":""}],"source_content_type":"text/x-sh","patch_set":16,"id":"5a3905b3_70f885e6","line":58,"range":{"start_line":58,"start_character":35,"end_line":58,"end_character":42},"in_reply_to":"5a3905b3_45ff4e01","updated":"2017-01-19 16:30:29.000000000","message":"Done","commit_id":"c796cf956b1b4f02854f6f185334a87b30f4cbdf"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"c6721d809844d37448b89ded13d6d304fc78cb9b","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5a3905b3_859f7602","line":107,"range":{"start_line":107,"start_character":79,"end_line":107,"end_character":95},"updated":"2017-01-19 15:21:34.000000000","message":"if the network has multiple subnets, server show will output smth like\n\n private\u003d10.0.0.10, fdfd:1f3c:9ae7::a\n\nand you\u0027ll be grepping by\n\n 10.0.0.10, fdfd:1f3c:9ae7::a\n\nwhile port list output has the following format:\n\n ip_address\u003d\u0027172.24.4.8\u0027, subnet_id\u003d\u00275fc4367f-a204-4f8b-93b7-aa014b5db556\u0027\n ip_address\u003d\u00272001:db8::1\u0027, subnet_id\u003d\u00274ed2d2d2-be93-4441-b88b-7fe611a2621a\u0027\n\nI think you need only the first address to properly grep in this case.\n\nSeems like at the moment, grenade creates only one subnet in that network, so this works, but making it more generic would be good.","commit_id":"c796cf956b1b4f02854f6f185334a87b30f4cbdf"},{"author":{"_account_id":23330,"name":"Oksana Voshchana","email":"anascko@gmail.com","username":"Oksana"},"change_message_id":"0afeef4e7f001bb2eedfa76b4a847d9bacd2e545","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"}],"source_content_type":"text/x-sh","patch_set":16,"id":"5a3905b3_9d0c2a44","line":107,"range":{"start_line":107,"start_character":79,"end_line":107,"end_character":95},"in_reply_to":"5a3905b3_859f7602","updated":"2017-01-19 16:30:29.000000000","message":"Thanks, Vladyslav\nYou are right about amount of IP in request","commit_id":"c796cf956b1b4f02854f6f185334a87b30f4cbdf"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"c6721d809844d37448b89ded13d6d304fc78cb9b","unresolved":false,"context_lines":[{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"},{"line_number":111,"context_line":"    # According to http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html#upgrade-notes "}],"source_content_type":"text/x-sh","patch_set":16,"id":"5a3905b3_807cc473","line":108,"range":{"start_line":108,"start_character":20,"end_line":108,"end_character":39},"updated":"2017-01-19 15:21:34.000000000","message":"Might be worth adding \"--server $NOVA_SERVER\" as we already know the server, but, not that critical :)","commit_id":"c796cf956b1b4f02854f6f185334a87b30f4cbdf"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"7dd655bb3953eec220eef2117dbac0c8569c7698","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # Add the member role to the new project and user"},{"line_number":58,"context_line":"    # User in keystone v3 does not belong to any project"},{"line_number":59,"context_line":"    # and we need assign Member role for him"},{"line_number":60,"context_line":"    openstack role add --project $NOVA_PROJECT --user $NOVA_USER Member"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    resource_save nova user_id $id"}],"source_content_type":"text/x-sh","patch_set":17,"id":"5a3905b3_44874761","line":59,"range":{"start_line":59,"start_character":41,"end_line":59,"end_character":44},"updated":"2017-01-19 18:00:49.000000000","message":"s/him/it/\n\n# and we need to assign a Member role to it","commit_id":"db26bf62640cb18b0d5e22f2a2bdfe0b25cab23c"},{"author":{"_account_id":23330,"name":"Oksana Voshchana","email":"anascko@gmail.com","username":"Oksana"},"change_message_id":"6f147101809f427331cdcab17fb7dfe785702db1","unresolved":false,"context_lines":[{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # Add the member role to the new project and user"},{"line_number":58,"context_line":"    # User in keystone v3 does not belong to any project"},{"line_number":59,"context_line":"    # and we need assign Member role for him"},{"line_number":60,"context_line":"    openstack role add --project $NOVA_PROJECT --user $NOVA_USER Member"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    resource_save nova user_id $id"}],"source_content_type":"text/x-sh","patch_set":17,"id":"5a3905b3_3bd4a3bb","line":59,"range":{"start_line":59,"start_character":41,"end_line":59,"end_character":44},"in_reply_to":"5a3905b3_44874761","updated":"2017-01-23 09:19:14.000000000","message":"Thanks, John\nI fixed it","commit_id":"db26bf62640cb18b0d5e22f2a2bdfe0b25cab23c"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"7dd655bb3953eec220eef2117dbac0c8569c7698","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"}],"source_content_type":"text/x-sh","patch_set":17,"id":"5a3905b3_1f2bcaec","line":107,"updated":"2017-01-19 18:00:49.000000000","message":"I don\u0027t know if my kind of output will occur\n\n $ openstack server show jlvillal-devstack-1 -f value -c addresses\n jlvillal-net-1\u003d192.168.222.109; GATEWAY_NET_V6\u003d10.21.27.227, 2001:4800:1ae1:18:f816:3eff:fefb:8995\n\n $ openstack server show jlvillal-devstack-1 -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027\n 192.168.222.109;","commit_id":"db26bf62640cb18b0d5e22f2a2bdfe0b25cab23c"},{"author":{"_account_id":23330,"name":"Oksana Voshchana","email":"anascko@gmail.com","username":"Oksana"},"change_message_id":"6f147101809f427331cdcab17fb7dfe785702db1","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"}],"source_content_type":"text/x-sh","patch_set":17,"id":"5a3905b3_3b474378","line":107,"in_reply_to":"5a3905b3_1e07421d","updated":"2017-01-23 09:19:14.000000000","message":"Thanks Vasyl,\nI added it","commit_id":"db26bf62640cb18b0d5e22f2a2bdfe0b25cab23c"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"2ec8995ccbaeca144befb667f53d9dbd01ca5723","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"}],"source_content_type":"text/x-sh","patch_set":17,"id":"5a3905b3_9e3b32eb","line":107,"in_reply_to":"5a3905b3_1f2bcaec","updated":"2017-01-19 22:10:57.000000000","message":"; not harm since we using IP for ping command and ping 192.168.222.109; or openstack port list | grep 192.168.222.109;  looks like normal bash construction. But it definitely it should be fixed.","commit_id":"db26bf62640cb18b0d5e22f2a2bdfe0b25cab23c"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"8820157b90363b24a1c5a51979ca6f026d48e55a","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":105,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"}],"source_content_type":"text/x-sh","patch_set":17,"id":"5a3905b3_1e07421d","line":107,"in_reply_to":"5a3905b3_9e3b32eb","updated":"2017-01-19 22:13:22.000000000","message":"Please reuse get_server_ip function https://github.com/openstack-dev/devstack/blob/b952253d3f0ed74ce12c4b941c7fbc0f5ac6105a/functions#L447","commit_id":"db26bf62640cb18b0d5e22f2a2bdfe0b25cab23c"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"7dd655bb3953eec220eef2117dbac0c8569c7698","unresolved":false,"context_lines":[{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"},{"line_number":111,"context_line":"    # According to http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html#upgrade-notes "},{"line_number":112,"context_line":"    # via nova command \"add-floating-ip\" is deprecated"},{"line_number":113,"context_line":"    neutron floatingip-associate $id $port_id"}],"source_content_type":"text/x-sh","patch_set":17,"id":"5a3905b3_9f26da14","line":110,"range":{"start_line":110,"start_character":64,"end_line":110,"end_character":71},"updated":"2017-01-19 18:00:49.000000000","message":"so use the nova client","commit_id":"db26bf62640cb18b0d5e22f2a2bdfe0b25cab23c"},{"author":{"_account_id":23330,"name":"Oksana Voshchana","email":"anascko@gmail.com","username":"Oksana"},"change_message_id":"6f147101809f427331cdcab17fb7dfe785702db1","unresolved":false,"context_lines":[{"line_number":107,"context_line":"    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":108,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":109,"context_line":"    "},{"line_number":110,"context_line":"    # Add ip through neutron. Openstack cli can\u0027t associate ip, because use nova client"},{"line_number":111,"context_line":"    # According to http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html#upgrade-notes "},{"line_number":112,"context_line":"    # via nova command \"add-floating-ip\" is deprecated"},{"line_number":113,"context_line":"    neutron floatingip-associate $id $port_id"}],"source_content_type":"text/x-sh","patch_set":17,"id":"5a3905b3_56430642","line":110,"range":{"start_line":110,"start_character":64,"end_line":110,"end_character":71},"in_reply_to":"5a3905b3_9f26da14","updated":"2017-01-23 09:19:14.000000000","message":"Maybe, my previous comment was incorrect\nIt must use neutron-cli","commit_id":"db26bf62640cb18b0d5e22f2a2bdfe0b25cab23c"},{"author":{"_account_id":14614,"name":"Kyrylo Romanenko","display_name":"K.Romanenko","email":"romanenko-kv@hotmail.com","username":"kromanenko"},"change_message_id":"2257693f742777935770d4ae091e84458fe0d2c3","unresolved":false,"context_lines":[{"line_number":105,"context_line":"    resource_save nova nova_server_ip $ip"},{"line_number":106,"context_line":"    resource_save nova nova_server_float $id"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"#    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":109,"context_line":"    uuid\u003d$(openstack server show $NOVA_SERVER -f value -c id)     "},{"line_number":110,"context_line":""},{"line_number":111,"context_line":""}],"source_content_type":"text/x-sh","patch_set":20,"id":"5a3905b3_ef9a4b6d","line":108,"range":{"start_line":108,"start_character":0,"end_line":108,"end_character":6},"updated":"2017-01-23 12:16:05.000000000","message":"Format it like other commented strings please.","commit_id":"a45704b05cbe7ba0db3367a559a393d6809d96f6"},{"author":{"_account_id":14614,"name":"Kyrylo Romanenko","display_name":"K.Romanenko","email":"romanenko-kv@hotmail.com","username":"kromanenko"},"change_message_id":"2257693f742777935770d4ae091e84458fe0d2c3","unresolved":false,"context_lines":[{"line_number":107,"context_line":""},{"line_number":108,"context_line":"#    local nova_ip\u003d$(openstack server show $NOVA_SERVER -f value -c addresses | awk \u0027{print $1}\u0027 | sed -r \u0027s/^.*\u003d//\u0027)"},{"line_number":109,"context_line":"    uuid\u003d$(openstack server show $NOVA_SERVER -f value -c id)     "},{"line_number":110,"context_line":""},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"    nova_ip\u003d$(get_instance_ip $uuid neutron_grenade)"},{"line_number":113,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"}],"source_content_type":"text/x-sh","patch_set":20,"id":"5a3905b3_8f7e2717","line":110,"updated":"2017-01-23 12:16:05.000000000","message":"It looks that one line is excessive.","commit_id":"a45704b05cbe7ba0db3367a559a393d6809d96f6"},{"author":{"_account_id":14614,"name":"Kyrylo Romanenko","display_name":"K.Romanenko","email":"romanenko-kv@hotmail.com","username":"kromanenko"},"change_message_id":"2257693f742777935770d4ae091e84458fe0d2c3","unresolved":false,"context_lines":[{"line_number":111,"context_line":""},{"line_number":112,"context_line":"    nova_ip\u003d$(get_instance_ip $uuid neutron_grenade)"},{"line_number":113,"context_line":"    local port_id\u003d$(openstack port list | grep $nova_ip | awk \u0027{print $2}\u0027)"},{"line_number":114,"context_line":"    "},{"line_number":115,"context_line":"    # Add ip through neutron-cli. Openstack cli can\u0027t associate ip, because it uses nova client"},{"line_number":116,"context_line":"    # According to http://docs.openstack.org/releasenotes/python-novaclient/unreleased.html#upgrade-notes "},{"line_number":117,"context_line":"    # via nova command \"add-floating-ip\" is deprecated"}],"source_content_type":"text/x-sh","patch_set":20,"id":"5a3905b3_2f8ff32a","line":114,"range":{"start_line":114,"start_character":0,"end_line":114,"end_character":4},"updated":"2017-01-23 12:16:05.000000000","message":"Remove those unused spaces.","commit_id":"a45704b05cbe7ba0db3367a559a393d6809d96f6"},{"author":{"_account_id":14614,"name":"Kyrylo Romanenko","display_name":"K.Romanenko","email":"romanenko-kv@hotmail.com","username":"kromanenko"},"change_message_id":"2257693f742777935770d4ae091e84458fe0d2c3","unresolved":false,"context_lines":[{"line_number":117,"context_line":"    # via nova command \"add-floating-ip\" is deprecated"},{"line_number":118,"context_line":"    neutron floatingip-associate $id $port_id"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"   # uuid\u003d$(openstack server show $NOVA_SERVER -f value -c id)"},{"line_number":121,"context_line":"    resource_save nova nova_server_uuid $uuid"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    # ping check on the way up to ensure we\u0027re really running"}],"source_content_type":"text/x-sh","patch_set":20,"id":"5a3905b3_6f9c9b5d","line":120,"updated":"2017-01-23 12:16:05.000000000","message":"Add one space here.","commit_id":"a45704b05cbe7ba0db3367a559a393d6809d96f6"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"7fe05f565105ae818c3ccae683794737031c0256","unresolved":false,"context_lines":[{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    uuid\u003d$(openstack server show $NOVA_SERVER -f value -c id)"},{"line_number":109,"context_line":"    resource_save nova nova_server_uuid $uuid"},{"line_number":110,"context_line":"    "},{"line_number":111,"context_line":"    local net_name\u003d$(openstack network list | grep $net_id | get_field 2)"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"    local nova_ip\u003d$(get_instance_ip $uuid $net_name)"}],"source_content_type":"text/x-sh","patch_set":24,"id":"5a3905b3_b6621c3c","line":110,"updated":"2017-01-24 14:52:06.000000000","message":"whitespace","commit_id":"9eb69a6592e352ac6fe52c067924c0e2ada9d0e6"},{"author":{"_account_id":23330,"name":"Oksana Voshchana","email":"anascko@gmail.com","username":"Oksana"},"change_message_id":"51e0aad48740510ca950b04e819994be4bcaade5","unresolved":false,"context_lines":[{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    uuid\u003d$(openstack server show $NOVA_SERVER -f value -c id)"},{"line_number":109,"context_line":"    resource_save nova nova_server_uuid $uuid"},{"line_number":110,"context_line":"    "},{"line_number":111,"context_line":"    local net_name\u003d$(openstack network list | grep $net_id | get_field 2)"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"    local nova_ip\u003d$(get_instance_ip $uuid $net_name)"}],"source_content_type":"text/x-sh","patch_set":24,"id":"5a3905b3_3f527867","line":110,"in_reply_to":"5a3905b3_b6621c3c","updated":"2017-01-24 16:42:39.000000000","message":"Done","commit_id":"9eb69a6592e352ac6fe52c067924c0e2ada9d0e6"}]}
