)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"87b96a0f03def5d7c4a7a7144cb64935cea85851","unresolved":false,"context_lines":[{"line_number":15,"context_line":"the neutron service."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"create_tempest_networks also contains the logic for creating"},{"line_number":18,"context_line":"nova network when neutron service is"},{"line_number":19,"context_line":"Change-Id: I10f282e2a813060419e213dd25641078774a852d"},{"line_number":20,"context_line":"Signed-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3fa7e38b_6eb1e0e3","line":18,"updated":"2020-01-13 11:18:54.000000000","message":"Something is missing, and I guess it should explain why the nova-network part is untouched (see the previous comment)","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"c9cec6427757202ac583dba79f41ab41acebad4e","unresolved":false,"context_lines":[{"line_number":15,"context_line":"the neutron service."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"create_tempest_networks also contains the logic for creating"},{"line_number":18,"context_line":"nova network when neutron service is"},{"line_number":19,"context_line":"Change-Id: I10f282e2a813060419e213dd25641078774a852d"},{"line_number":20,"context_line":"Signed-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3fa7e38b_d193c1fe","line":18,"in_reply_to":"3fa7e38b_6eb1e0e3","updated":"2020-01-14 12:28:49.000000000","message":"Done","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"}],"config_tempest/main.py":[{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"dff82f49e08c2b6856515d569355af21329f74e5","unresolved":false,"context_lines":[{"line_number":544,"context_line":"                                                       False))"},{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    if services.is_service(**{\"type\": \"network\"}):"},{"line_number":548,"context_line":"        has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_1ef97d81","line":547,"range":{"start_line":547,"start_character":7,"end_line":547,"end_character":49},"updated":"2020-01-13 07:51:03.000000000","message":"you can use has_neutron variable in the condition, because now is_service is called twice for checking network service type presence which leads to unnecessary iterations and calls","commit_id":"13deee51b3d29c7c89dac3cf5846bf28a22db716"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"b8ec9fc38af2e8d3ed42a75844a4145e2d31e11a","unresolved":false,"context_lines":[{"line_number":544,"context_line":"                                                       False))"},{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    if services.is_service(**{\"type\": \"network\"}):"},{"line_number":548,"context_line":"        has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_59462f59","line":547,"range":{"start_line":547,"start_character":7,"end_line":547,"end_character":49},"in_reply_to":"3fa7e38b_1ef97d81","updated":"2020-01-13 08:30:11.000000000","message":"Also, the logic should be fixed a bit. Right now the code assumes that, if is_service(**{\"type\": \"network\"}) is available, then neutron is installed, otherwise nova-network is used.\nThis \"if\" defeats the purpose: if nova-network is used, the code wouldn\u0027t work. Now, we may really not support nova-network anymore (we probably don\u0027t), but then maybe create_tempest_networks should be tuned a bit. We may just change create_tempest_network to not create the network when has_neutron is false.\n\nAnything, it needs a bit of thinking.","commit_id":"13deee51b3d29c7c89dac3cf5846bf28a22db716"},{"author":{"_account_id":8367,"name":"Arx Cruz","email":"arxcruz@redhat.com","username":"arxcruz"},"change_message_id":"d879625365439a8d91c1492c081275c37143d363","unresolved":false,"context_lines":[{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":548,"context_line":"    if has_neutron:"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"},{"line_number":551,"context_line":"                                        kwargs.get(\u0027network_id\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_ce3ed425","line":548,"updated":"2020-01-13 11:29:53.000000000","message":"So, I don\u0027t think this will work in all scenarios, if has_neutron is false, that means it might have nova-network, in that case, the create_tempest_networks will never be called. I believe you need to check if services.get_service will return something or None.","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"4b899e8dc42133c84398fc7652ca7c793612e7df","unresolved":false,"context_lines":[{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":548,"context_line":"    if has_neutron:"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"},{"line_number":551,"context_line":"                                        kwargs.get(\u0027network_id\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_bafb8ebd","line":548,"in_reply_to":"3fa7e38b_1f1e54bc","updated":"2020-01-13 15:33:09.000000000","message":"... and you just confirmed my analysis.\nAs the supported refstack profiles do not require any network extensions for Nova, in order to find a solution for this problem we don\u0027t care about the usage of python-tempestconf in refstack. It\u0027s entirely up to us.\n\nThis means we can simplify the code a bit more, removing the nova-network case as well. \n\nAs the nova-network issue is unrelated to this one and broken anyway for a long while, I change my previous statement: Chandan, nova-network can be removed in a separate commit (with a proper release note)","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"c3cc810012b31d89dd21e1fe99d42b5458dd56b7","unresolved":false,"context_lines":[{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":548,"context_line":"    if has_neutron:"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"},{"line_number":551,"context_line":"                                        kwargs.get(\u0027network_id\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_1f1e54bc","line":548,"in_reply_to":"3fa7e38b_249ea7b7","updated":"2020-01-13 15:13:58.000000000","message":"I don\u0027t understand, which current release supports nova-network? it\u0027s for long deprecated, it\u0027s gone for more than 7 releases.\n\nRefstack is basically a set of tempest tests, which means, it can be used to test any openstack deployment - the question is if it would pass, I don\u0027t know, I\u0027ve never tried to run refstack against nova-network deployment as it\u0027s too old.\n\npython-tempestconf is a dependency of refstack, although it doesn\u0027t mean, it can create a tempest.conf for every cloud which can be tested by tempest tests. Users should create their tempest.conf (at least double check what python-tempestconf created) and not fully rely on python-tempestconf (mainly in case of having some specialities enabled and nova-network would be one as it\u0027s been deprecated for long time).\n\nwe ship python-tempestconf for Ocata and higher, in those releases there is no nova-network, so we can remove that code - it was just carried over the years from the original design back when nova-network existed.\n\n2018.02 is the last guideline which corresponds also with Newton release, since then there are 3 newer guidelines (2019.11 is the latest)\n\nyes, there are no network extensions in the \"Required Capabilitites\" list. But, theoretically: python-tempestconf can create required networks (needed by tempest tests) in case of neutron, in case of nova-network, there\u0027s no logic which would create any network, it just lists networks and sets a fixed_network_name and as I never tried to use python-tempestconf against nova-network deployment. I have no clue if that is enough -\u003e and if the tempest tests would be executed properly.\n\nNeutron is mentioned in Required Designated Sections and there is a note for Nova: \".. except extensions and networking\".\nhttps://opendev.org/openstack/interop/src/branch/master/doc/source/guidelines/2018.02.rst#required-designated-sections\n\nI think that we are fine :).","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"b28f3874759320d31cdee27a29f7e2af87212eea","unresolved":false,"context_lines":[{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":548,"context_line":"    if has_neutron:"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"},{"line_number":551,"context_line":"                                        kwargs.get(\u0027network_id\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_812c2d4a","line":548,"in_reply_to":"3fa7e38b_4e442474","updated":"2020-01-13 12:38:11.000000000","message":"Are you sure about all network service having a \"network\" entry? Because in that case the logic inside create_tempest_network to distinguish between nova-network and neutron is incorrect.\n\nThe most pressing question is: do we need nova-network support for something refstack-related?","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"548c710f0711cdee3880e0d47ca12a40e5e81247","unresolved":false,"context_lines":[{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":548,"context_line":"    if has_neutron:"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"},{"line_number":551,"context_line":"                                        kwargs.get(\u0027network_id\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_a1a4c94d","line":548,"in_reply_to":"3fa7e38b_812c2d4a","updated":"2020-01-13 13:12:16.000000000","message":"I\u0027m not sure, I cannot find a doc supporting my logic, it\u0027s just seems right that the type should be network :D .. anyway, the logic for distinguishing neutron from nova-network is incorrect and based on the code we have for nova-network we probably don\u0027t support nova-network fully\n\nAnyway, nova-network has been deprecated since Newton, so we can delete the code:\nhttps://docs.openstack.org/nova/train/admin/networking-nova.html","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"b6ad55367c52405c5d78477dda95e601102dfbf7","unresolved":false,"context_lines":[{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":548,"context_line":"    if has_neutron:"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"},{"line_number":551,"context_line":"                                        kwargs.get(\u0027network_id\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_249ea7b7","line":548,"in_reply_to":"3fa7e38b_a1a4c94d","updated":"2020-01-13 13:26:57.000000000","message":"The deprecation does not answer the question: can refstack, when it depends on tempestconf/master, be used to test a release which supports nova-network?\n\nAccording the interop repository:\nhttps://opendev.org/openstack/interop/src/branch/master/doc/source/guidelines\nit seems that 2017.09 the oldest supported guideline, which \"Applies to Mitaka, Newton, Ocata, Pike\", but there are no network extensions in the \"Required Capabilities\" list, so we should be fine. Can you please confirm this analysis?","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"146bd14641ee0180226f43690adc8abc975bb91e","unresolved":false,"context_lines":[{"line_number":545,"context_line":"        image.create_tempest_images(conf)"},{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    has_neutron \u003d services.is_service(**{\"type\": \"network\"})"},{"line_number":548,"context_line":"    if has_neutron:"},{"line_number":549,"context_line":"        network \u003d services.get_service(\"network\")"},{"line_number":550,"context_line":"        network.create_tempest_networks(has_neutron, conf,"},{"line_number":551,"context_line":"                                        kwargs.get(\u0027network_id\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_4e442474","line":548,"in_reply_to":"3fa7e38b_ce3ed425","updated":"2020-01-13 11:59:41.000000000","message":"is_service returns only True/False, but it supports two types of searching, first is for exact service based on its name and the second is searching for the specific type of a service. IIRC according openstack documentation (identity maybe? i don\u0027t remember where exactly) all network like services should have a type \u003d\u003d network. So even if there is not neutron but for example nova-network, has_neutron should be True - based on that, the var should be renamed so that it\u0027s more clear","commit_id":"f82d2ee21f6dca578b0cb00fd68b300d186d3392"}]}
