)]}'
{"tacker/tests/etc/samples/local-vim.yaml":[{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":2,"context_line":"username: nfv_user"},{"line_number":3,"context_line":"password: devstack"},{"line_number":4,"context_line":"project_name: nfv"},{"line_number":5,"context_line":"domain_name: Default"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"fa7ab95a_3f08472c","line":5,"range":{"start_line":5,"start_character":13,"end_line":5,"end_character":20},"updated":"2016-08-28 03:21:05.000000000","message":"what is the difference? Have you changed this file?","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":2,"context_line":"username: nfv_user"},{"line_number":3,"context_line":"password: devstack"},{"line_number":4,"context_line":"project_name: nfv"},{"line_number":5,"context_line":"domain_name: Default"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"fa7ab95a_2aad6331","line":5,"range":{"start_line":5,"start_character":13,"end_line":5,"end_character":20},"in_reply_to":"fa7ab95a_3f08472c","updated":"2016-08-29 16:31:30.000000000","message":"No. This change is same as in base file.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"4d71fa3a6e51b1d972e857c6ecec3a5c6889e637","unresolved":false,"context_lines":[{"line_number":2,"context_line":"username: nfv_user"},{"line_number":3,"context_line":"password: devstack"},{"line_number":4,"context_line":"project_name: nfv"},{"line_number":5,"context_line":"domain_name: Default"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"7a8ec9b2_29ee9822","line":5,"range":{"start_line":5,"start_character":13,"end_line":5,"end_character":20},"updated":"2016-09-14 06:58:32.000000000","message":"what change happened?","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"9affb09353bf3cd9806528bffc97fca063a8bd7a","unresolved":false,"context_lines":[{"line_number":2,"context_line":"username: nfv_user"},{"line_number":3,"context_line":"password: devstack"},{"line_number":4,"context_line":"project_name: nfv"},{"line_number":5,"context_line":"domain_name: Default"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"7a8ec9b2_69034074","line":5,"range":{"start_line":5,"start_character":13,"end_line":5,"end_character":20},"in_reply_to":"7a8ec9b2_29ee9822","updated":"2016-09-14 07:23:15.000000000","message":"There is no change here. Not sure why this is showing up.\nhttps://github.com/openstack/tacker/blob/master/tacker/tests/etc/samples/local-vim.yaml","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"}],"tacker/tests/etc/samples/sample-tosca-vnfd-static-ip.yaml":[{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"dbe79a3ed2491399d0d3c192fafcac60f865b4cc","unresolved":false,"context_lines":[{"line_number":17,"context_line":"      type: tosca.nodes.nfv.CP.Tacker"},{"line_number":18,"context_line":"      properties:"},{"line_number":19,"context_line":"        management: true"},{"line_number":20,"context_line":"        ip_address: 192.168.120.54"},{"line_number":21,"context_line":"        anti_spoofing_protection: true"},{"line_number":22,"context_line":"      requirements:"},{"line_number":23,"context_line":"        - virtualLink:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"1aa78d24_3e2db5fe","line":20,"range":{"start_line":20,"start_character":32,"end_line":20,"end_character":34},"updated":"2016-07-05 22:43:06.000000000","message":"As we add more testcases, there is a chance this address might be already allocated / colliding with an existing active test. Please consider bumping it to an higher number, say 225.","commit_id":"362ee54d86d71d095ab53e0b4c158b15732e555a"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"d83c0c86f2c672096fa3194faa1bd7e6d95ab00e","unresolved":false,"context_lines":[{"line_number":17,"context_line":"      type: tosca.nodes.nfv.CP.Tacker"},{"line_number":18,"context_line":"      properties:"},{"line_number":19,"context_line":"        management: true"},{"line_number":20,"context_line":"        ip_address: 192.168.120.54"},{"line_number":21,"context_line":"        anti_spoofing_protection: true"},{"line_number":22,"context_line":"      requirements:"},{"line_number":23,"context_line":"        - virtualLink:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"1aa78d24_ddcc6e6c","line":20,"range":{"start_line":20,"start_character":32,"end_line":20,"end_character":34},"in_reply_to":"1aa78d24_3e2db5fe","updated":"2016-07-06 05:58:52.000000000","message":"Done","commit_id":"362ee54d86d71d095ab53e0b4c158b15732e555a"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"512db711b6f836ab7e00c5b84b6463e6b6792634","unresolved":false,"context_lines":[{"line_number":9,"context_line":"      type: tosca.nodes.nfv.VDU.Tacker"},{"line_number":10,"context_line":"      properties:"},{"line_number":11,"context_line":"        image: cirros-0.3.4-x86_64-uec"},{"line_number":12,"context_line":"        flavor: m1.tiny"},{"line_number":13,"context_line":"        availability_zone: nova"},{"line_number":14,"context_line":"        mgmt_driver: noop"},{"line_number":15,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":11,"id":"fa7ab95a_3fca6050","line":12,"range":{"start_line":12,"start_character":8,"end_line":12,"end_character":23},"updated":"2016-08-25 23:41:38.000000000","message":"Instead of using flavor, please use the new nfv_compute to desc cpu, mem \u0026 disk as in [1]\n\n[1] https://github.com/openstack/tacker/blob/master/samples/tosca-templates/vnfd/tosca-vnfd-hello-world.yaml#L13-L17","commit_id":"d62fe32af8e68d04b357313969ac7b108356ca45"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":32,"context_line":"            node: VL1"},{"line_number":33,"context_line":"        - virtualBinding:"},{"line_number":34,"context_line":"            node: VDU1"},{"line_number":35,"context_line":"            relationship: tosca.relationships.nfv.VirtualBindsTo"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    CP2:"},{"line_number":38,"context_line":"      type: tosca.nodes.nfv.CP.Tacker"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"fa7ab95a_ca0a3721","line":35,"range":{"start_line":35,"start_character":25,"end_line":35,"end_character":26},"updated":"2016-08-28 03:21:05.000000000","message":"why do we need this relationship declaration? hasn\u0027t the line 33 virtualBinding done this?","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":32,"context_line":"            node: VL1"},{"line_number":33,"context_line":"        - virtualBinding:"},{"line_number":34,"context_line":"            node: VDU1"},{"line_number":35,"context_line":"            relationship: tosca.relationships.nfv.VirtualBindsTo"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    CP2:"},{"line_number":38,"context_line":"      type: tosca.nodes.nfv.CP.Tacker"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"fa7ab95a_cab79784","line":35,"range":{"start_line":35,"start_character":25,"end_line":35,"end_character":26},"in_reply_to":"fa7ab95a_ca0a3721","updated":"2016-08-29 16:31:30.000000000","message":"this is just a sample i pickedup from sample files available for static ip example. I left that part as it is.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"4d71fa3a6e51b1d972e857c6ecec3a5c6889e637","unresolved":false,"context_lines":[{"line_number":32,"context_line":"            node: VL1"},{"line_number":33,"context_line":"        - virtualBinding:"},{"line_number":34,"context_line":"            node: VDU1"},{"line_number":35,"context_line":"            relationship: tosca.relationships.nfv.VirtualBindsTo"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    CP2:"},{"line_number":38,"context_line":"      type: tosca.nodes.nfv.CP.Tacker"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"7a8ec9b2_c90374b7","line":35,"range":{"start_line":35,"start_character":24,"end_line":35,"end_character":25},"updated":"2016-09-14 06:58:32.000000000","message":"no need to add this line","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"9affb09353bf3cd9806528bffc97fca063a8bd7a","unresolved":false,"context_lines":[{"line_number":32,"context_line":"            node: VL1"},{"line_number":33,"context_line":"        - virtualBinding:"},{"line_number":34,"context_line":"            node: VDU1"},{"line_number":35,"context_line":"            relationship: tosca.relationships.nfv.VirtualBindsTo"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    CP2:"},{"line_number":38,"context_line":"      type: tosca.nodes.nfv.CP.Tacker"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"7a8ec9b2_c9061420","line":35,"range":{"start_line":35,"start_character":24,"end_line":35,"end_character":25},"in_reply_to":"7a8ec9b2_c90374b7","updated":"2016-09-14 07:23:15.000000000","message":"not sure why this line causes issues, I removed this in next patch.","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"}],"tacker/tests/etc/samples/sample-tosca-vnfd.yaml":[{"author":{"_account_id":6348,"name":"xu-haiwei","email":"hai-xu@xr.jp.nec.com","username":"xu-haiwei"},"change_message_id":"9bbbf36511a1b2d0bcfef76e2f3ea1e1a8598199","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      properties:"},{"line_number":13,"context_line":"        image: cirros-0.3.4-x86_64-uec"},{"line_number":14,"context_line":"        flavor: m1.tiny"},{"line_number":15,"context_line":"        key_name: userKey"},{"line_number":16,"context_line":"        availability_zone: nova"},{"line_number":17,"context_line":"        mgmt_driver: noop"},{"line_number":18,"context_line":"        config: |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7aa08908_494adbad","side":"PARENT","line":15,"updated":"2016-06-16 01:33:21.000000000","message":"Why delete the \u0027key_name\u0027?","commit_id":"4c74e8979081bcd6fe57464181ce20358b892b66"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"154de481e34f24a42a87f19bd34aa4fd0ea49bee","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      properties:"},{"line_number":13,"context_line":"        image: cirros-0.3.4-x86_64-uec"},{"line_number":14,"context_line":"        flavor: m1.tiny"},{"line_number":15,"context_line":"        key_name: userKey"},{"line_number":16,"context_line":"        availability_zone: nova"},{"line_number":17,"context_line":"        mgmt_driver: noop"},{"line_number":18,"context_line":"        config: |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7aa08908_9b34cd4a","side":"PARENT","line":15,"in_reply_to":"7aa08908_494adbad","updated":"2016-06-17 01:13:41.000000000","message":"+1, this was recently added by [1] as the func test for keyname\n\n[1] https://review.openstack.org/#/c/326179/","commit_id":"4c74e8979081bcd6fe57464181ce20358b892b66"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"ea13fe88b019f8804bdd5449f87a74f162878b67","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      properties:"},{"line_number":13,"context_line":"        image: cirros-0.3.4-x86_64-uec"},{"line_number":14,"context_line":"        flavor: m1.tiny"},{"line_number":15,"context_line":"        key_name: userKey"},{"line_number":16,"context_line":"        availability_zone: nova"},{"line_number":17,"context_line":"        mgmt_driver: noop"},{"line_number":18,"context_line":"        config: |"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"1aa78d24_259f6fb5","side":"PARENT","line":15,"in_reply_to":"7aa08908_9b34cd4a","updated":"2016-07-05 19:32:33.000000000","message":"Done","commit_id":"4c74e8979081bcd6fe57464181ce20358b892b66"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"9738a874ba1a4f808608ba9076e00df94bc2859e","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      properties:"},{"line_number":13,"context_line":"        image: cirros-0.3.4-x86_64-uec"},{"line_number":14,"context_line":"        flavor: m1.tiny"},{"line_number":15,"context_line":"        key_name: userKey"},{"line_number":16,"context_line":"        availability_zone: nova"},{"line_number":17,"context_line":"        mgmt_driver: noop"},{"line_number":18,"context_line":"        config: |"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"1aa78d24_e96c829e","side":"PARENT","line":15,"range":{"start_line":15,"start_character":8,"end_line":15,"end_character":25},"updated":"2016-07-04 01:15:18.000000000","message":"Please verify the comment as addressed in patch-set #4","commit_id":"b97c14158fccdb61cf22e15516354a237aa7f4c0"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"e82c47d35384312da82d28b922faabed00c3dadd","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      properties:"},{"line_number":13,"context_line":"        image: cirros-0.3.4-x86_64-uec"},{"line_number":14,"context_line":"        flavor: m1.tiny"},{"line_number":15,"context_line":"        key_name: userKey"},{"line_number":16,"context_line":"        availability_zone: nova"},{"line_number":17,"context_line":"        mgmt_driver: noop"},{"line_number":18,"context_line":"        config: |"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"1aa78d24_e55e0711","side":"PARENT","line":15,"range":{"start_line":15,"start_character":8,"end_line":15,"end_character":25},"in_reply_to":"1aa78d24_e96c829e","updated":"2016-07-05 19:33:09.000000000","message":"Done","commit_id":"b97c14158fccdb61cf22e15516354a237aa7f4c0"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"4d71fa3a6e51b1d972e857c6ecec3a5c6889e637","unresolved":false,"context_lines":[{"line_number":22,"context_line":"        name: {get_input : vdu-name}"},{"line_number":23,"context_line":"        image: cirros-0.3.4-x86_64-uec"},{"line_number":24,"context_line":"        flavor: m1.tiny"},{"line_number":25,"context_line":"        key_name: userKey"},{"line_number":26,"context_line":"        availability_zone: nova"},{"line_number":27,"context_line":"        mgmt_driver: noop"},{"line_number":28,"context_line":"        config: |"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"7a8ec9b2_692b4031","side":"PARENT","line":25,"range":{"start_line":25,"start_character":18,"end_line":25,"end_character":25},"updated":"2016-09-14 06:58:32.000000000","message":"why remove this?","commit_id":"bd127c9e87a3d81eb4f018274adcf3e56580e331"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"9affb09353bf3cd9806528bffc97fca063a8bd7a","unresolved":false,"context_lines":[{"line_number":22,"context_line":"        name: {get_input : vdu-name}"},{"line_number":23,"context_line":"        image: cirros-0.3.4-x86_64-uec"},{"line_number":24,"context_line":"        flavor: m1.tiny"},{"line_number":25,"context_line":"        key_name: userKey"},{"line_number":26,"context_line":"        availability_zone: nova"},{"line_number":27,"context_line":"        mgmt_driver: noop"},{"line_number":28,"context_line":"        config: |"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"7a8ec9b2_6cf8aee6","side":"PARENT","line":25,"range":{"start_line":25,"start_character":18,"end_line":25,"end_character":25},"in_reply_to":"7a8ec9b2_692b4031","updated":"2016-09-14 07:23:15.000000000","message":"added back.","commit_id":"bd127c9e87a3d81eb4f018274adcf3e56580e331"}],"tacker/tests/functional/base.py":[{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"from tackerclient.v1_0 import client as tacker_client"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"import yaml"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"CONF \u003d cfg.CONF"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_0a3c1fc7","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":6},"updated":"2016-08-28 03:21:05.000000000","message":"Import parts:\nfirst part is python system,\nsecond part is third part software,\nthird part is own system, ie tacker","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"from tackerclient.v1_0 import client as tacker_client"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"import yaml"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"CONF \u003d cfg.CONF"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_a0e4fde0","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":6},"in_reply_to":"fa7ab95a_0a3c1fc7","updated":"2016-08-29 16:31:30.000000000","message":"Done.Fixed in next patchset.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    @classmethod"},{"line_number":73,"context_line":"    def heatclient(cls):"},{"line_number":74,"context_line":"        data \u003d yaml.load(read_file(\u0027local-vim.yaml\u0027))"},{"line_number":75,"context_line":"        data[\u0027auth_url\u0027] \u003d data[\u0027auth_url\u0027] + \u0027/v3\u0027"},{"line_number":76,"context_line":"        domain_name \u003d data.pop(\u0027domain_name\u0027)"},{"line_number":77,"context_line":"        data[\u0027user_domain_name\u0027] \u003d domain_name"},{"line_number":78,"context_line":"        data[\u0027project_domain_name\u0027] \u003d domain_name"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_2a10034e","line":75,"range":{"start_line":75,"start_character":50,"end_line":75,"end_character":51},"updated":"2016-08-28 03:21:05.000000000","message":"It is not good behaviour.  what if the target is not v3 keystone?","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    @classmethod"},{"line_number":73,"context_line":"    def heatclient(cls):"},{"line_number":74,"context_line":"        data \u003d yaml.load(read_file(\u0027local-vim.yaml\u0027))"},{"line_number":75,"context_line":"        data[\u0027auth_url\u0027] \u003d data[\u0027auth_url\u0027] + \u0027/v3\u0027"},{"line_number":76,"context_line":"        domain_name \u003d data.pop(\u0027domain_name\u0027)"},{"line_number":77,"context_line":"        data[\u0027user_domain_name\u0027] \u003d domain_name"},{"line_number":78,"context_line":"        data[\u0027project_domain_name\u0027] \u003d domain_name"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_c0fca174","line":75,"range":{"start_line":75,"start_character":50,"end_line":75,"end_character":51},"in_reply_to":"fa7ab95a_2a10034e","updated":"2016-08-29 16:31:30.000000000","message":"Will get back to you on this.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"9893c17d6c525063a14b06fa5b00dcea0c13facb","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    @classmethod"},{"line_number":73,"context_line":"    def heatclient(cls):"},{"line_number":74,"context_line":"        data \u003d yaml.load(read_file(\u0027local-vim.yaml\u0027))"},{"line_number":75,"context_line":"        data[\u0027auth_url\u0027] \u003d data[\u0027auth_url\u0027] + \u0027/v3\u0027"},{"line_number":76,"context_line":"        domain_name \u003d data.pop(\u0027domain_name\u0027)"},{"line_number":77,"context_line":"        data[\u0027user_domain_name\u0027] \u003d domain_name"},{"line_number":78,"context_line":"        data[\u0027project_domain_name\u0027] \u003d domain_name"}],"source_content_type":"text/x-python","patch_set":14,"id":"7a8ec9b2_933a7dcc","line":75,"range":{"start_line":75,"start_character":50,"end_line":75,"end_character":51},"in_reply_to":"fa7ab95a_c0fca174","updated":"2016-09-14 05:28:58.000000000","message":"I opened a bug for this. This will be fixed as part of that rfe bug, https://bugs.launchpad.net/tacker/+bug/1623333","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":162,"context_line":"                                              resource_name\u003dresource_name)"},{"line_number":163,"context_line":"        resource_dict \u003d resource_details.to_dict()"},{"line_number":164,"context_line":"        self.assertEqual(True, resource_dict[\u0027attributes\u0027]["},{"line_number":165,"context_line":"            \u0027port_security_enabled\u0027])"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_6a1a0b70","line":165,"range":{"start_line":165,"start_character":13,"end_line":165,"end_character":34},"updated":"2016-08-28 03:21:05.000000000","message":"assertTrue please","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":162,"context_line":"                                              resource_name\u003dresource_name)"},{"line_number":163,"context_line":"        resource_dict \u003d resource_details.to_dict()"},{"line_number":164,"context_line":"        self.assertEqual(True, resource_dict[\u0027attributes\u0027]["},{"line_number":165,"context_line":"            \u0027port_security_enabled\u0027])"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_20262d15","line":165,"range":{"start_line":165,"start_character":13,"end_line":165,"end_character":34},"in_reply_to":"fa7ab95a_6a1a0b70","updated":"2016-08-29 16:31:30.000000000","message":"Done. Fixed in next patchset.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"2ddec3aca484234a504231435c93610d3e93050f","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                          \"target\": target_status})"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"        if (status \u003d\u003d target_status):"},{"line_number":99,"context_line":"            return target_status"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    def wait_until_vnf_active(self, vnf_id, timeout, sleep_interval):"},{"line_number":102,"context_line":"        return self.wait_until_vnf_status(vnf_id, \u0027ACTIVE\u0027, timeout,"}],"source_content_type":"text/x-python","patch_set":16,"id":"9a89bdaa_ad04e814","line":99,"range":{"start_line":99,"start_character":19,"end_line":99,"end_character":32},"updated":"2016-09-13 08:52:34.000000000","message":"no need to return","commit_id":"a64da79f7151e4cd2bdcd42178dfb7c30eaeac56"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"a12785c16488d402cd9083a47c928617f263750f","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                          \"target\": target_status})"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"        if (status \u003d\u003d target_status):"},{"line_number":99,"context_line":"            return target_status"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    def wait_until_vnf_active(self, vnf_id, timeout, sleep_interval):"},{"line_number":102,"context_line":"        return self.wait_until_vnf_status(vnf_id, \u0027ACTIVE\u0027, timeout,"}],"source_content_type":"text/x-python","patch_set":16,"id":"7a8ec9b2_52cba472","line":99,"range":{"start_line":99,"start_character":19,"end_line":99,"end_character":32},"in_reply_to":"9a89bdaa_ad04e814","updated":"2016-09-14 05:24:15.000000000","message":"Removed in next patchset","commit_id":"a64da79f7151e4cd2bdcd42178dfb7c30eaeac56"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"4d71fa3a6e51b1d972e857c6ecec3a5c6889e637","unresolved":false,"context_lines":[{"line_number":76,"context_line":"        return neutron_client.Client(**vim_params)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    @classmethod"},{"line_number":79,"context_line":"    def heatclient(cls):"},{"line_number":80,"context_line":"        data \u003d yaml.load(read_file(\u0027local-vim.yaml\u0027))"},{"line_number":81,"context_line":"        data[\u0027auth_url\u0027] \u003d data[\u0027auth_url\u0027] + \u0027/v3\u0027"},{"line_number":82,"context_line":"        domain_name \u003d data.pop(\u0027domain_name\u0027)"}],"source_content_type":"text/x-python","patch_set":17,"id":"7a8ec9b2_6987c00f","line":79,"range":{"start_line":79,"start_character":8,"end_line":79,"end_character":18},"updated":"2016-09-14 06:58:32.000000000","message":"can u just do it as we get other clients?\n\nthe openstack clients are invented, and keystone are copied.\nthat seems too much.","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"9affb09353bf3cd9806528bffc97fca063a8bd7a","unresolved":false,"context_lines":[{"line_number":76,"context_line":"        return neutron_client.Client(**vim_params)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    @classmethod"},{"line_number":79,"context_line":"    def heatclient(cls):"},{"line_number":80,"context_line":"        data \u003d yaml.load(read_file(\u0027local-vim.yaml\u0027))"},{"line_number":81,"context_line":"        data[\u0027auth_url\u0027] \u003d data[\u0027auth_url\u0027] + \u0027/v3\u0027"},{"line_number":82,"context_line":"        domain_name \u003d data.pop(\u0027domain_name\u0027)"}],"source_content_type":"text/x-python","patch_set":17,"id":"7a8ec9b2_aca0f691","line":79,"range":{"start_line":79,"start_character":8,"end_line":79,"end_character":18},"in_reply_to":"7a8ec9b2_6987c00f","updated":"2016-09-14 07:23:15.000000000","message":"Still trying this.","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"9fef3ab81d9a6d21ada80a75f42951a8edba40d1","unresolved":false,"context_lines":[{"line_number":76,"context_line":"        return neutron_client.Client(**vim_params)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    @classmethod"},{"line_number":79,"context_line":"    def heatclient(cls):"},{"line_number":80,"context_line":"        data \u003d yaml.load(read_file(\u0027local-vim.yaml\u0027))"},{"line_number":81,"context_line":"        data[\u0027auth_url\u0027] \u003d data[\u0027auth_url\u0027] + \u0027/v3\u0027"},{"line_number":82,"context_line":"        domain_name \u003d data.pop(\u0027domain_name\u0027)"}],"source_content_type":"text/x-python","patch_set":17,"id":"7a8ec9b2_c7e51ba9","line":79,"range":{"start_line":79,"start_character":8,"end_line":79,"end_character":18},"in_reply_to":"7a8ec9b2_aca0f691","updated":"2016-09-14 07:50:47.000000000","message":"I think we will need a keystone session here.\nCheck below example in heat project.\nhttps://github.com/openstack/heat/blob/cd125f328e3e4e9f517278b04347515eba380d5a/heat/engine/clients/os/heat_plugin.py#L42","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"2a50014467b813c4fe62726b78d40a27678395a3","unresolved":false,"context_lines":[{"line_number":76,"context_line":"        return neutron_client.Client(**vim_params)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    @classmethod"},{"line_number":79,"context_line":"    def heatclient(cls):"},{"line_number":80,"context_line":"        data \u003d yaml.load(read_file(\u0027local-vim.yaml\u0027))"},{"line_number":81,"context_line":"        data[\u0027auth_url\u0027] \u003d data[\u0027auth_url\u0027] + \u0027/v3\u0027"},{"line_number":82,"context_line":"        domain_name \u003d data.pop(\u0027domain_name\u0027)"}],"source_content_type":"text/x-python","patch_set":17,"id":"7a8ec9b2_0c90d842","line":79,"range":{"start_line":79,"start_character":8,"end_line":79,"end_character":18},"in_reply_to":"7a8ec9b2_c7e51ba9","updated":"2016-09-14 19:16:22.000000000","message":"http://git.openstack.org/cgit/openstack/python-heatclient/tree/doc/source/index.rst","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"}],"tacker/tests/functional/clients.py":[{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"daac2f3df185aa046aa1f99396199b4d4d687b11","unresolved":false,"context_lines":[{"line_number":14,"context_line":"from tacker.tests.functional import keystone"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"class OpenstackClients(object):"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    def __init__(self, auth_attr, region_name\u003dNone):"},{"line_number":20,"context_line":"        super(OpenstackClients, self).__init__()"}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_631e1d0d","line":17,"updated":"2016-08-02 01:12:34.000000000","message":"Can this re-use the existing clients in tacker/common/clients.py?","commit_id":"c437855b29a39ec024c5025fa8e49bfcc05e51bb"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"1ed386dbcf9175ef7d3e79133cfcad50f04a33eb","unresolved":false,"context_lines":[{"line_number":14,"context_line":"from tacker.tests.functional import keystone"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"class OpenstackClients(object):"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    def __init__(self, auth_attr, region_name\u003dNone):"},{"line_number":20,"context_line":"        super(OpenstackClients, self).__init__()"}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_b214d9e8","line":17,"in_reply_to":"bacf61ea_631e1d0d","updated":"2016-08-02 04:48:08.000000000","message":"The idea to keep this separate was because incase there is change in the client code functional test should not get affected.","commit_id":"c437855b29a39ec024c5025fa8e49bfcc05e51bb"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"4d71fa3a6e51b1d972e857c6ecec3a5c6889e637","unresolved":false,"context_lines":[{"line_number":32,"context_line":"    def _heat_client(self):"},{"line_number":33,"context_line":"        endpoint \u003d self.keystone_session.get_endpoint("},{"line_number":34,"context_line":"            service_type\u003d\u0027orchestration\u0027, region_name\u003dself.region_name)"},{"line_number":35,"context_line":"        return heatclient.Client(\u00271\u0027, endpoint\u003dendpoint,"},{"line_number":36,"context_line":"                                 session\u003dself.keystone_session)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":17,"id":"7a8ec9b2_e9c5905b","line":35,"range":{"start_line":35,"start_character":34,"end_line":35,"end_character":35},"updated":"2016-09-14 06:58:32.000000000","message":"what is the \u00271\u0027 used for","commit_id":"a62c5098521a0edcfe289f07549ecbe20439dc89"}],"tacker/tests/functional/keystone.py":[{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"dbe79a3ed2491399d0d3c192fafcac60f865b4cc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"1aa78d24_defe31ad","updated":"2016-07-05 22:43:06.000000000","message":"This file seems to be a duplicate of [1]. Can you instead just refer to that ?\n\n[1] https://github.com/openstack/tacker/blob/master/tacker/vm/keystone.py","commit_id":"362ee54d86d71d095ab53e0b4c158b15732e555a"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"15a4bba4c4f541ccec02fea50f13376d3979227a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"1aa78d24_1dac368b","in_reply_to":"1aa78d24_defe31ad","updated":"2016-07-06 05:58:29.000000000","message":"Yeah. I idea of keeping a separate copy is, incase some changes are introduced in the file tacker/vm/keystone.py with which functional tests start failing, it would be difficult for debugging. We want to keep functional tests isolated and stable.","commit_id":"362ee54d86d71d095ab53e0b4c158b15732e555a"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"daac2f3df185aa046aa1f99396199b4d4d687b11","unresolved":false,"context_lines":[{"line_number":26,"context_line":"CONF \u003d cfg.CONF"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"class Keystone(object):"},{"line_number":30,"context_line":"    \"\"\"Keystone module for OpenStack VIM"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Handles identity operations for a given OpenStack"}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_23df053b","line":29,"updated":"2016-08-02 01:12:34.000000000","message":"Can this re-use the existing code in tacker/vm/keystone.py?","commit_id":"c437855b29a39ec024c5025fa8e49bfcc05e51bb"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"1ed386dbcf9175ef7d3e79133cfcad50f04a33eb","unresolved":false,"context_lines":[{"line_number":26,"context_line":"CONF \u003d cfg.CONF"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"class Keystone(object):"},{"line_number":30,"context_line":"    \"\"\"Keystone module for OpenStack VIM"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Handles identity operations for a given OpenStack"}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_b2c21951","line":29,"in_reply_to":"bacf61ea_23df053b","updated":"2016-08-02 04:48:08.000000000","message":"Same is  the reason here. Incase there is  one  copy of client code (one in development code) and incase that is modified , we don\u0027t want both tests and dev code to error/fail.","commit_id":"c437855b29a39ec024c5025fa8e49bfcc05e51bb"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2016 Brocade Communications System, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_ca7dd76f","line":1,"range":{"start_line":1,"start_character":25,"end_line":1,"end_character":39},"updated":"2016-08-28 03:21:05.000000000","message":"where is this file used?","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2016 Brocade Communications System, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_dd5d6e7a","line":1,"range":{"start_line":1,"start_character":25,"end_line":1,"end_character":39},"in_reply_to":"fa7ab95a_ca7dd76f","updated":"2016-08-29 16:31:30.000000000","message":"this file is used in clients.py to instantiate keystone client.\n Keystone client is used in heatclient to get stack information.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"}],"tacker/tests/functional/vnfm/test_tosca_vnf.py":[{"author":{"_account_id":6348,"name":"xu-haiwei","email":"hai-xu@xr.jp.nec.com","username":"xu-haiwei"},"change_message_id":"9bbbf36511a1b2d0bcfef76e2f3ea1e1a8598199","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        prop_dict \u003d input_dict[\u0027topology_template\u0027][\u0027node_templates\u0027]["},{"line_number":57,"context_line":"            \u0027CP1\u0027][\u0027properties\u0027]"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # Verify if ip_address is static, it is same onv show_vnf"},{"line_number":60,"context_line":"        if prop_dict.get(\u0027ip_address\u0027):"},{"line_number":61,"context_line":"            mgmt_url_input \u003d prop_dict.get(\u0027ip_address\u0027)"},{"line_number":62,"context_line":"            mgmt_info \u003d yaml.load("}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_e9e627af","line":59,"range":{"start_line":59,"start_character":53,"end_line":59,"end_character":56},"updated":"2016-06-16 01:33:21.000000000","message":"onv -\u003e one?","commit_id":"e033a06fbf8012f548a687224312680af70f2d43"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"ee539a22dfe18a1a44a871d4e146d598d6ab344a","unresolved":false,"context_lines":[{"line_number":57,"context_line":"            \u0027CP1\u0027][\u0027properties\u0027]"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # Verify if ip_address is static, it is same onv show_vnf"},{"line_number":60,"context_line":"        if prop_dict.get(\u0027ip_address\u0027):"},{"line_number":61,"context_line":"            mgmt_url_input \u003d prop_dict.get(\u0027ip_address\u0027)"},{"line_number":62,"context_line":"            mgmt_info \u003d yaml.load("},{"line_number":63,"context_line":"                self.client.show_vnf(vnf_id)[\u0027vnf\u0027][\u0027mgmt_url\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a9d85d2_30b0c68b","line":60,"range":{"start_line":60,"start_character":21,"end_line":60,"end_character":24},"updated":"2016-06-18 20:45:25.000000000","message":"Isn\u0027t this assuming that the port CP1 is a management port?  Since this is now common code I think to be safe it would be better to step through the CP objects looking for one with property \u0027management\u0027 set to True.","commit_id":"e033a06fbf8012f548a687224312680af70f2d43"},{"author":{"_account_id":6348,"name":"xu-haiwei","email":"hai-xu@xr.jp.nec.com","username":"xu-haiwei"},"change_message_id":"9bbbf36511a1b2d0bcfef76e2f3ea1e1a8598199","unresolved":false,"context_lines":[{"line_number":63,"context_line":"                self.client.show_vnf(vnf_id)[\u0027vnf\u0027][\u0027mgmt_url\u0027])"},{"line_number":64,"context_line":"            self.assertEqual(mgmt_url_input, mgmt_info[\u0027VDU1\u0027])"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"            # Delete vnf_instance with vnf_id"},{"line_number":67,"context_line":"        try:"},{"line_number":68,"context_line":"            self.client.delete_vnf(vnf_id)"},{"line_number":69,"context_line":"        except Exception:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_69acf78c","line":66,"updated":"2016-06-16 01:33:21.000000000","message":"This line\u0027s indent is not correct, should be 4 characters forwards.","commit_id":"e033a06fbf8012f548a687224312680af70f2d43"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":15,"context_line":"from novaclient import exceptions"},{"line_number":16,"context_line":"from oslo_config import cfg"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import yaml"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from tacker.tests import constants"},{"line_number":21,"context_line":"from tacker.tests.functional import base"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_aa86d362","line":18,"range":{"start_line":18,"start_character":7,"end_line":18,"end_character":11},"updated":"2016-08-28 03:21:05.000000000","message":"put the yaml in first import part.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":15,"context_line":"from novaclient import exceptions"},{"line_number":16,"context_line":"from oslo_config import cfg"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import yaml"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from tacker.tests import constants"},{"line_number":21,"context_line":"from tacker.tests.functional import base"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_bd9d0a0c","line":18,"range":{"start_line":18,"start_character":7,"end_line":18,"end_character":11},"in_reply_to":"fa7ab95a_aa86d362","updated":"2016-08-29 16:31:30.000000000","message":"Done. Fixed this along with other comments in this.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            vnf_id,"},{"line_number":52,"context_line":"            constants.VNF_CIRROS_CREATE_TIMEOUT,"},{"line_number":53,"context_line":"            constants.ACTIVE_SLEEP_TIME)"},{"line_number":54,"context_line":"        self.assertEqual(vnf_current_status, \u0027ACTIVE\u0027)"},{"line_number":55,"context_line":"        self.assertIsNotNone(self.client.show_vnf(vnf_id)[\u0027vnf\u0027][\u0027mgmt_url\u0027])"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"        input_dict \u003d yaml.load(values_str)"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_4a3627e7","line":54,"range":{"start_line":54,"start_character":13,"end_line":54,"end_character":24},"updated":"2016-08-28 03:21:05.000000000","message":"expected should be put as first argument","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            vnf_id,"},{"line_number":52,"context_line":"            constants.VNF_CIRROS_CREATE_TIMEOUT,"},{"line_number":53,"context_line":"            constants.ACTIVE_SLEEP_TIME)"},{"line_number":54,"context_line":"        self.assertEqual(vnf_current_status, \u0027ACTIVE\u0027)"},{"line_number":55,"context_line":"        self.assertIsNotNone(self.client.show_vnf(vnf_id)[\u0027vnf\u0027][\u0027mgmt_url\u0027])"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"        input_dict \u003d yaml.load(values_str)"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_404df1c2","line":54,"range":{"start_line":54,"start_character":13,"end_line":54,"end_character":24},"in_reply_to":"fa7ab95a_4a3627e7","updated":"2016-08-29 16:31:30.000000000","message":"Done","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":66,"context_line":"            self.assertEqual(mgmt_url_input, mgmt_info[\u0027VDU1\u0027])"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        # Verify anti spoofing settings"},{"line_number":69,"context_line":"        stack_id \u003d self.client.show_vnf(vnf_id)[\u0027vnf\u0027][\u0027instance_id\u0027]"},{"line_number":70,"context_line":"        template_dict \u003d input_dict[\u0027topology_template\u0027][\u0027node_templates\u0027]"},{"line_number":71,"context_line":"        for field in template_dict.keys():"},{"line_number":72,"context_line":"            prop_dict \u003d template_dict[field][\u0027properties\u0027]"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_ca6f97c3","line":69,"range":{"start_line":69,"start_character":19,"end_line":69,"end_character":23},"updated":"2016-08-28 03:21:05.000000000","message":"no need to call show_vnf second time, use first time\u0027s result.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":66,"context_line":"            self.assertEqual(mgmt_url_input, mgmt_info[\u0027VDU1\u0027])"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        # Verify anti spoofing settings"},{"line_number":69,"context_line":"        stack_id \u003d self.client.show_vnf(vnf_id)[\u0027vnf\u0027][\u0027instance_id\u0027]"},{"line_number":70,"context_line":"        template_dict \u003d input_dict[\u0027topology_template\u0027][\u0027node_templates\u0027]"},{"line_number":71,"context_line":"        for field in template_dict.keys():"},{"line_number":72,"context_line":"            prop_dict \u003d template_dict[field][\u0027properties\u0027]"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_60c4b55e","line":69,"range":{"start_line":69,"start_character":19,"end_line":69,"end_character":23},"in_reply_to":"fa7ab95a_ca6f97c3","updated":"2016-08-29 16:31:30.000000000","message":"reduced number of vnf_show commands. Hth","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0b008bdf8c1dff3e96410ed8b7340df726ea9dac","unresolved":false,"context_lines":[{"line_number":72,"context_line":"            prop_dict \u003d template_dict[field][\u0027properties\u0027]"},{"line_number":73,"context_line":"            if prop_dict.get(\u0027anti_spoofing_protection\u0027):"},{"line_number":74,"context_line":"                self.verify_antispoofing_in_stack(stack_id\u003dstack_id,"},{"line_number":75,"context_line":"                                                  resource_name\u003dfield)"},{"line_number":76,"context_line":"        # Delete vnf_instance with vnf_id"},{"line_number":77,"context_line":"        try:"},{"line_number":78,"context_line":"            self.client.delete_vnf(vnf_id)"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_4abb8727","line":75,"range":{"start_line":75,"start_character":0,"end_line":75,"end_character":50},"updated":"2016-08-28 03:21:05.000000000","message":"line 57-75 is used by the second case, I think we should refactor this method. for example, _create_, _verify_, _cleanup, the second case has the different verification part.","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"df50ca1feb2433b49d8217412551b365e3fcf40b","unresolved":false,"context_lines":[{"line_number":72,"context_line":"            prop_dict \u003d template_dict[field][\u0027properties\u0027]"},{"line_number":73,"context_line":"            if prop_dict.get(\u0027anti_spoofing_protection\u0027):"},{"line_number":74,"context_line":"                self.verify_antispoofing_in_stack(stack_id\u003dstack_id,"},{"line_number":75,"context_line":"                                                  resource_name\u003dfield)"},{"line_number":76,"context_line":"        # Delete vnf_instance with vnf_id"},{"line_number":77,"context_line":"        try:"},{"line_number":78,"context_line":"            self.client.delete_vnf(vnf_id)"}],"source_content_type":"text/x-python","patch_set":14,"id":"fa7ab95a_c0ae6180","line":75,"range":{"start_line":75,"start_character":0,"end_line":75,"end_character":50},"in_reply_to":"fa7ab95a_4abb8727","updated":"2016-08-29 16:31:30.000000000","message":"One verification is if static ip is enabled. Another verification is if anti spoofing is enabled. \nFeel free to co-author this","commit_id":"c614d5efb9f8a97ad3ebefe348529d8cc771059e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"2ddec3aca484234a504231435c93610d3e93050f","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            vnf_id,"},{"line_number":52,"context_line":"            constants.VNF_CIRROS_CREATE_TIMEOUT,"},{"line_number":53,"context_line":"            constants.ACTIVE_SLEEP_TIME)"},{"line_number":54,"context_line":"        self.assertEqual(\u0027ACTIVE\u0027, vnf_current_status)"},{"line_number":55,"context_line":"        vnf_show_out \u003d self.client.show_vnf(vnf_id)[\u0027vnf\u0027]"},{"line_number":56,"context_line":"        self.assertIsNotNone(vnf_show_out[\u0027mgmt_url\u0027])"},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":16,"id":"9a89bdaa_6d5ca019","line":54,"range":{"start_line":54,"start_character":26,"end_line":54,"end_character":32},"updated":"2016-09-13 08:52:34.000000000","message":"no need to do it","commit_id":"a64da79f7151e4cd2bdcd42178dfb7c30eaeac56"}],"tacker/tests/functional/vnfm/test_tosca_vnf_static_ip.py":[{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"c873f9388b6162762d8776280df3d293e076e239","unresolved":false,"context_lines":[{"line_number":18,"context_line":"from tacker.tests.functional import base"},{"line_number":19,"context_line":"from tacker.tests.utils import read_file"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"import yaml"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":"VNF_CIRROS_CREATE_TIMEOUT \u003d 120"}],"source_content_type":"text/x-python","patch_set":1,"id":"7aa08908_37ad68e9","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":11},"updated":"2016-06-09 05:21:03.000000000","message":"should be imported before tacker\u0027s imports.","commit_id":"9a44e0d5ee137cc558db0f16dd121535f9b8a137"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"c873f9388b6162762d8776280df3d293e076e239","unresolved":false,"context_lines":[{"line_number":21,"context_line":"import yaml"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":"VNF_CIRROS_CREATE_TIMEOUT \u003d 120"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class VnfTestToscaCreateStaticIP(base.BaseTackerTest):"}],"source_content_type":"text/x-python","patch_set":1,"id":"7aa08908_7c007702","line":24,"range":{"start_line":24,"start_character":0,"end_line":24,"end_character":31},"updated":"2016-06-09 05:21:03.000000000","message":"No needs to define it here, can be used imported from tacker/tests/constants.py","commit_id":"9a44e0d5ee137cc558db0f16dd121535f9b8a137"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"54565139efdb3e4573a7c95412dd7440b9820c08","unresolved":false,"context_lines":[{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class VnfTestToscaCreateStaticIP(base.BaseTackerTest):"},{"line_number":27,"context_line":"    \"\"\"Tests the following operations:"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_0a255ec1","line":26,"range":{"start_line":26,"start_character":6,"end_line":26,"end_character":32},"updated":"2016-06-10 06:32:23.000000000","message":"do we need a separate class for this? better to integrate with test_tosca_vnf.py and reuse some of the common code","commit_id":"a806e1357620eac788e84a6e71b540d027f4f3aa"},{"author":{"_account_id":17952,"name":"Santosh Kodicherla","email":"ksantosh.cs@gmail.com","username":"santoshkumar"},"change_message_id":"02e5ec3ae4d818714eeddd8ba962e0b232546b86","unresolved":false,"context_lines":[{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class VnfTestToscaCreateStaticIP(base.BaseTackerTest):"},{"line_number":27,"context_line":"    \"\"\"Tests the following operations:"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_a05ee973","line":26,"range":{"start_line":26,"start_character":6,"end_line":26,"end_character":32},"in_reply_to":"7aa08908_0a255ec1","updated":"2016-06-10 07:20:35.000000000","message":"Initially thought so, but there is specific checks for static ip, like below verification of ip address and few more verifications. Hence added separate class.\nWill integrate both codes in next  patch.\n\ninput_dict \u003d yaml.load(values_str)\n        mgmt_url_input \u003d input_dict[\u0027topology_template\u0027][\u0027node_templates\u0027][\n            \u0027CP1\u0027][\u0027properties\u0027][\u0027ip_address\u0027]\n        mgmt_info \u003d yaml.load(self.client.show_vnf(vnf_id)[\u0027vnf\u0027][\u0027mgmt_url\u0027])\n        self.assertEqual(mgmt_url_input, mgmt_info[\u0027VDU1\u0027])","commit_id":"a806e1357620eac788e84a6e71b540d027f4f3aa"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"54565139efdb3e4573a7c95412dd7440b9820c08","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    \"\"\""},{"line_number":38,"context_line":"    def test_create_delete_vnf(self):"},{"line_number":39,"context_line":"        data \u003d dict()"},{"line_number":40,"context_line":"        vnfd_name \u003d \u0027test_vnfd_static_ip\u0027"},{"line_number":41,"context_line":"        values_str \u003d read_file(\u0027sample-tosca-vnfd-static-ip.yaml\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_0a89deca","line":38,"range":{"start_line":38,"start_character":8,"end_line":38,"end_character":30},"updated":"2016-06-10 06:32:23.000000000","message":"this can be renamed test_create_delete_vnf_static_ip?","commit_id":"a806e1357620eac788e84a6e71b540d027f4f3aa"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"54565139efdb3e4573a7c95412dd7440b9820c08","unresolved":false,"context_lines":[{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        # Create vnf with vnfd_id"},{"line_number":52,"context_line":"        vnfd_id \u003d vnfd_instance[\u0027vnfd\u0027][\u0027id\u0027]"},{"line_number":53,"context_line":"        vnf_name \u003d \u0027test_tosca_vnf_with_cirros_no_monitoring\u0027"},{"line_number":54,"context_line":"        vnf_arg \u003d {\u0027vnf\u0027: {\u0027vnfd_id\u0027: vnfd_id, \u0027name\u0027: vnf_name}}"},{"line_number":55,"context_line":"        vnf_instance \u003d self.client.create_vnf(body\u003dvnf_arg)"},{"line_number":56,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_0ad1defb","line":53,"range":{"start_line":53,"start_character":20,"end_line":53,"end_character":60},"updated":"2016-06-10 06:32:23.000000000","message":"nit: test_tosca_vnf_static_ip","commit_id":"a806e1357620eac788e84a6e71b540d027f4f3aa"}]}
