)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":30742,"name":"Soniya Murlidhar Vyas","email":"svyas@redhat.com","username":"svyas"},"change_message_id":"5e092591cf4fe0967bba99e7efb8ae6ab28733d3","unresolved":true,"context_lines":[{"line_number":9,"context_line":"If tests are launched in several threads,"},{"line_number":10,"context_line":"it\u0027s possible that the same project is used"},{"line_number":11,"context_line":"in several tests simultaneously."},{"line_number":12,"context_line":"It causes bad side effects and tests fail."},{"line_number":13,"context_line":"Also it\u0027s better to guarantee primary, alt, admin, roles"},{"line_number":14,"context_line":"are from  different projects in tests."},{"line_number":15,"context_line":"Patch provides that every static account"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"510a0911_87cadd03","line":12,"updated":"2022-01-11 10:18:37.000000000","message":"Which bad side effects exactly?It would be great if we can be specific explaining them.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"87f7f4df1ae0caa3ed776780e81ce8e1ed8940bb","unresolved":true,"context_lines":[{"line_number":9,"context_line":"If tests are launched in several threads,"},{"line_number":10,"context_line":"it\u0027s possible that the same project is used"},{"line_number":11,"context_line":"in several tests simultaneously."},{"line_number":12,"context_line":"It causes bad side effects and tests fail."},{"line_number":13,"context_line":"Also it\u0027s better to guarantee primary, alt, admin, roles"},{"line_number":14,"context_line":"are from  different projects in tests."},{"line_number":15,"context_line":"Patch provides that every static account"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"2340eb0a_6192a703","line":12,"in_reply_to":"510a0911_87cadd03","updated":"2022-01-11 10:49:47.000000000","message":"e.g. the same resources in the same project are changed in several test simultaneously. The state of these resources is inconsistent and tests fail(","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":30742,"name":"Soniya Murlidhar Vyas","email":"svyas@redhat.com","username":"svyas"},"change_message_id":"5e092591cf4fe0967bba99e7efb8ae6ab28733d3","unresolved":true,"context_lines":[{"line_number":10,"context_line":"it\u0027s possible that the same project is used"},{"line_number":11,"context_line":"in several tests simultaneously."},{"line_number":12,"context_line":"It causes bad side effects and tests fail."},{"line_number":13,"context_line":"Also it\u0027s better to guarantee primary, alt, admin, roles"},{"line_number":14,"context_line":"are from  different projects in tests."},{"line_number":15,"context_line":"Patch provides that every static account"},{"line_number":16,"context_line":"has unique project."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3792c51e_5373c7cc","line":13,"updated":"2022-01-11 10:18:37.000000000","message":"Is there any document or draft where it has been agreed to have different roles from different projects? If so, can you please update with your commit message just to have clarity.\n\nIMHO, these are different roles, so it shouldn\u0027t be a point of concern if these are picked from same project as well.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"87f7f4df1ae0caa3ed776780e81ce8e1ed8940bb","unresolved":true,"context_lines":[{"line_number":10,"context_line":"it\u0027s possible that the same project is used"},{"line_number":11,"context_line":"in several tests simultaneously."},{"line_number":12,"context_line":"It causes bad side effects and tests fail."},{"line_number":13,"context_line":"Also it\u0027s better to guarantee primary, alt, admin, roles"},{"line_number":14,"context_line":"are from  different projects in tests."},{"line_number":15,"context_line":"Patch provides that every static account"},{"line_number":16,"context_line":"has unique project."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"2d6424d4_a56d6d06","line":13,"in_reply_to":"3792c51e_5373c7cc","updated":"2022-01-11 10:49:47.000000000","message":"There is not such document or discussion.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3f3d6f4752f5e18790bdc9c5fed912797529960d","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Use unique projects for static accounts."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If tests are launched in several threads,"},{"line_number":10,"context_line":"it\u0027s possible that the same project is used"},{"line_number":11,"context_line":"in several tests simultaneously."},{"line_number":12,"context_line":"It causes bad side effects and tests fail."},{"line_number":13,"context_line":"Also it\u0027s better to guarantee primary, alt, admin, roles"},{"line_number":14,"context_line":"are from  different projects in tests."},{"line_number":15,"context_line":"Patch provides that every static account"},{"line_number":16,"context_line":"has unique project."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"5f33d399_244ade61","line":13,"range":{"start_line":9,"start_character":0,"end_line":13,"end_character":0},"updated":"2023-07-20 22:36:50.000000000","message":"I also would like to get more detail about issue. we run tempest with pre-provisioned account in parallel and any account in use but test cannot be used by any other tests. Once previous test ree that account than only new test get the free account(hash) and use that.","commit_id":"fc560b3a938c32bc92f577882dfa2be8e15f1719"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"f1b8d20ae925893885ff16b64364aad28b10d503","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b5b2ff5d_4248ccd2","updated":"2021-12-30 05:40:01.000000000","message":"No activity more 1 month.\nPlease review.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":30742,"name":"Soniya Murlidhar Vyas","email":"svyas@redhat.com","username":"svyas"},"change_message_id":"5e092591cf4fe0967bba99e7efb8ae6ab28733d3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"ff2b6a90_8762305e","updated":"2022-01-11 10:18:37.000000000","message":"Please have a look at the below comments.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":30742,"name":"Soniya Murlidhar Vyas","email":"svyas@redhat.com","username":"svyas"},"change_message_id":"ef54b20fe2210885a4e647b0dad6f2536ed4b3ab","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9fc6cc3c_14c9cbcc","updated":"2022-01-25 05:28:05.000000000","message":"We don\u0027t really need unique projects for static accounts since sometimes it can be a requirement to have primary, admin from the same projects. It totally depends on usecase what we expect for example, 1. a scenario may expect primary, alt, admin from the same project\n2. a scenario may expect two of the three from the same project\n\nIn such a case, we have defined a general scenario in tempest, if particular scenario is required then it can be defined in the particular componenet or method etc. IMHO, tempest doesn\u0027t require any such modification as of now.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"22177f8750e1f2919f87b043663e74544d30dc8c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9fdf35ea_bd92c870","updated":"2021-11-29 08:43:48.000000000","message":"recheck","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"b9010cdc9ea470d8164107a7c86859d119694805","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f3d9d20d_a3687db3","updated":"2021-11-26 08:43:03.000000000","message":"recheck","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"3dbef6a920e9b6ed8f8d824e451b3910cec0a9d6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b597c0e9_395cbc6e","in_reply_to":"9fc6cc3c_14c9cbcc","updated":"2022-02-04 07:57:20.000000000","message":"Looking into code I suppose we always have different projects for dynamic accounts:\nhttps://github.com/openstack/tempest/blob/master/tempest/common/credentials_factory.py#L137\nThere is no special treatment in case of dynamic accounts and different \"force_tenant_isolation\" values (True, False).\nSo why should we have another logic for static accounts ?\nPlease correct me if I\u0027m wrong.\nThank you.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"87f7f4df1ae0caa3ed776780e81ce8e1ed8940bb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"af4333b8_a1276d34","in_reply_to":"ff2b6a90_8762305e","updated":"2022-01-11 10:49:47.000000000","message":"Thank you for review.\nI replied all your questions.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"5e4e302dea385dca084a7135791eed19d5d6692d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"1b2ed8a2_aa1aff44","updated":"2022-03-05 07:52:58.000000000","message":"No activity more 1 month.\nI replied to your comments.\nPlease review.","commit_id":"5557cf3035f414390359b4ba0cee3c25e9f15eb2"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"9f3b9a5b26c183bd8515473f273234f0e15f0f79","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"691aff65_cc6a32cb","updated":"2022-03-26 07:51:19.000000000","message":"recheck","commit_id":"a21c7819e632a82c89d81a8dfd5b315916ec1663"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"92a06d3796283dcbd837488a2c98eb8549bef001","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"b6e59253_21bd62f6","updated":"2022-03-25 07:41:36.000000000","message":"recheck","commit_id":"a21c7819e632a82c89d81a8dfd5b315916ec1663"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"d5e684181647b10a2d61e40db2d26440daa05733","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"95f50328_4c980c2c","updated":"2022-05-14 15:39:17.000000000","message":"recheck","commit_id":"2b30000d28669a9c0e850cedef0421d76c0554a0"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"435d57d0a5b61d9aa71da143f82f489df9239d82","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"92c2aace_53be9655","updated":"2022-05-19 07:27:42.000000000","message":"recheck","commit_id":"c18e2f391d5425772bdebd9b6d71f8ee73186e77"},{"author":{"_account_id":30674,"name":"Lukas Piwowarski","email":"lpiwowar@redhat.com","username":"lukas-piwowarski"},"change_message_id":"49b3ce423080c57ef5ff87b6ed8e1c9f2f4744e3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"cde470f1_654db2bb","updated":"2022-08-30 13:47:54.000000000","message":"I\u0027m thinking whether this is a good idea. I think that it might create unnecessary starvation of the credentials in some situations. I imagine a situation in which we have only credentials from the same project.\n\nI think there should be created some logic that allows tests to pick up a specific credentials (based on some criteria like \"give me credentials that are in a project which is currently not used by any other test\" or \"give me credentials in a project which has pre-existing network\") from the pre-provisioned credentials.\n\nI believe that the issue with pre-provisioned credentials should be discussed more.","commit_id":"fc560b3a938c32bc92f577882dfa2be8e15f1719"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3f3d6f4752f5e18790bdc9c5fed912797529960d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"7a65f957_05556d25","updated":"2023-07-20 22:36:50.000000000","message":"sorry for the late response but pre-provisioned account run in parallel already","commit_id":"fc560b3a938c32bc92f577882dfa2be8e15f1719"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"8e1391fdc85928cef3cd7c7ce162bf515e52e947","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"13b783e9_7f8f41e0","in_reply_to":"cde470f1_654db2bb","updated":"2022-09-01 09:28:38.000000000","message":"Credential starvation is not the problem which Tempest code should solve.\nWe should provide more projects. It\u0027s not a big deal for resource consumption.\nIf we have not sufficient projects amount and more one thread of test executions we will get problems for sure.\nYou offer solution which is significantly more difficult to implement and support.","commit_id":"fc560b3a938c32bc92f577882dfa2be8e15f1719"}],"tempest/lib/common/preprov_creds.py":[{"author":{"_account_id":30742,"name":"Soniya Murlidhar Vyas","email":"svyas@redhat.com","username":"svyas"},"change_message_id":"5e092591cf4fe0967bba99e7efb8ae6ab28733d3","unresolved":true,"context_lines":[{"line_number":445,"context_line":"        # TODO(gmann): Implement alt reader hash."},{"line_number":446,"context_line":"        return"},{"line_number":447,"context_line":""},{"line_number":448,"context_line":"    def get_creds_by_roles(self, roles, force_new\u003dTrue, scope\u003dNone):"},{"line_number":449,"context_line":"        roles \u003d list(set(roles))"},{"line_number":450,"context_line":"        exist_creds \u003d self._creds.get(str(roles).encode("},{"line_number":451,"context_line":"            \u0027utf-8\u0027), None)"}],"source_content_type":"text/x-python","patch_set":1,"id":"2bb0d7a1_5d586c94","line":448,"updated":"2022-01-11 10:18:37.000000000","message":"Why is it required to change the atribute force_new here?","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"87f7f4df1ae0caa3ed776780e81ce8e1ed8940bb","unresolved":true,"context_lines":[{"line_number":445,"context_line":"        # TODO(gmann): Implement alt reader hash."},{"line_number":446,"context_line":"        return"},{"line_number":447,"context_line":""},{"line_number":448,"context_line":"    def get_creds_by_roles(self, roles, force_new\u003dTrue, scope\u003dNone):"},{"line_number":449,"context_line":"        roles \u003d list(set(roles))"},{"line_number":450,"context_line":"        exist_creds \u003d self._creds.get(str(roles).encode("},{"line_number":451,"context_line":"            \u0027utf-8\u0027), None)"}],"source_content_type":"text/x-python","patch_set":1,"id":"2bb51c43_612b183f","line":448,"in_reply_to":"2bb0d7a1_5d586c94","updated":"2022-01-11 10:49:47.000000000","message":"Role user (admin too) is always received using the method.\nBy default role user will be re-used if it\u0027s already received in test.\nIt\u0027s safer to take new user.","commit_id":"d46e68f3fcabf83924a64b94ee0dac45649bdccf"},{"author":{"_account_id":8367,"name":"Arx Cruz","email":"arxcruz@redhat.com","username":"arxcruz"},"change_message_id":"7dba176bf25ba53621c95387be38d0f28d787624","unresolved":false,"context_lines":[{"line_number":232,"context_line":""},{"line_number":233,"context_line":"    @lockutils.synchronized(\u0027test_accounts_io\u0027, external\u003dTrue)"},{"line_number":234,"context_line":"    def _get_free_hash(self, hashes):"},{"line_number":235,"context_line":"        used_projects \u003d self._get_used_projects()"},{"line_number":236,"context_line":"        hashes \u003d self._exclude_used_projects(hashes, used_projects)"},{"line_number":237,"context_line":"        # Cast as a list because in some edge cases a set will be passed in"},{"line_number":238,"context_line":"        hashes \u003d list(hashes)"}],"source_content_type":"text/x-python","patch_set":7,"id":"a5d8bddb_c06de736","line":235,"updated":"2022-11-08 10:39:07.000000000","message":"You are calling _get_used_projects() here, and also inside the _process_project, and here\u0027s the only place that you call process_project. In this case I don\u0027t see a point in do that.","commit_id":"fc560b3a938c32bc92f577882dfa2be8e15f1719"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"7d985cf8cecf015718a68eaffa012b5b0b47a5d9","unresolved":false,"context_lines":[{"line_number":232,"context_line":""},{"line_number":233,"context_line":"    @lockutils.synchronized(\u0027test_accounts_io\u0027, external\u003dTrue)"},{"line_number":234,"context_line":"    def _get_free_hash(self, hashes):"},{"line_number":235,"context_line":"        used_projects \u003d self._get_used_projects()"},{"line_number":236,"context_line":"        hashes \u003d self._exclude_used_projects(hashes, used_projects)"},{"line_number":237,"context_line":"        # Cast as a list because in some edge cases a set will be passed in"},{"line_number":238,"context_line":"        hashes \u003d list(hashes)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9c5884af_74c2ef08","line":235,"in_reply_to":"a5d8bddb_c06de736","updated":"2022-11-08 11:22:10.000000000","message":"I call _get_used_projects() because I use returned value in self._exclude_used_projects(hashes, used_projects).","commit_id":"fc560b3a938c32bc92f577882dfa2be8e15f1719"}]}
