)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"8f138ff41b6ad27f4c18e51656a46d60967e7728","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Skip tests in TrustsV3TestJSON with immutable user source"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adds a simple condition in skip_checks to skip the entire test class"},{"line_number":10,"context_line":"if the environment is configured to have an immutable user source. If"},{"line_number":11,"context_line":"so, a skipException is raised and the entire class is not executed."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7faddb67_4e0dc033","line":9,"range":{"start_line":9,"start_character":63,"end_line":9,"end_character":68},"updated":"2019-07-25 16:42:52.000000000","message":"better to add the reason like\n\n to avoid failing to create a user","commit_id":"bae11b6dc0c776ef008fe09c5885e53392ded002"}],"tempest/api/identity/admin/v3/test_trusts.py":[{"author":{"_account_id":28701,"name":"Dustin Specker","email":"v-dspecker@microsoft.com","username":"dustinspecker"},"change_message_id":"6cc35dc4ed2dd0ea344e7d217178693b191b076f","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_featur_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipExecption(\u0027Environment has an immutable user source. All routines in this \u0027"},{"line_number":38,"context_line":"                                    \u0027class attempt to mutate this source.\u0027)"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_82610708","line":36,"range":{"start_line":36,"start_character":16,"end_line":36,"end_character":39},"updated":"2019-07-12 16:40:55.000000000","message":"Should this be identity_feature_enabled?","commit_id":"2633b640ad781766c5b76189d74e8259d183df3f"},{"author":{"_account_id":30683,"name":"Leo Henken","email":"lh236s@att.com","username":"lh236s"},"change_message_id":"455b4895225e4bcd125065c36ad6c331a2771f7f","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_featur_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipExecption(\u0027Environment has an immutable user source. All routines in this \u0027"},{"line_number":38,"context_line":"                                    \u0027class attempt to mutate this source.\u0027)"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_4406bc1f","line":36,"range":{"start_line":36,"start_character":16,"end_line":36,"end_character":39},"in_reply_to":"7faddb67_82610708","updated":"2019-07-12 16:52:58.000000000","message":"Well that\u0027s a needle in the haystack....","commit_id":"2633b640ad781766c5b76189d74e8259d183df3f"},{"author":{"_account_id":17887,"name":"Doug Schveninger","email":"ds6901@att.com","username":"Doug.Schveninger"},"change_message_id":"c199ca17f42173e29d8bc04fb61e766befe1a758","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipExecption(\u0027Environment has an immutable user source. All routines in this \u0027"},{"line_number":38,"context_line":"                                    \u0027class attempt to mutate this source.\u0027)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def setUp(self):"},{"line_number":41,"context_line":"        super(TrustsV3TestJSON, self).setUp()"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_844fd432","line":38,"range":{"start_line":37,"start_character":37,"end_line":38,"end_character":74},"updated":"2019-07-12 16:58:17.000000000","message":"Please change to the standard message \n\u0027Skipped because environment has an \u0027\n\u0027immutable user source and solely \u0027\n\u0027provides read-only access to users.\u0027","commit_id":"4f33dcbafff27ea93d855d036b126f39a41af938"},{"author":{"_account_id":30683,"name":"Leo Henken","email":"lh236s@att.com","username":"lh236s"},"change_message_id":"051859bf22f6dfd0bd8863479338c897538a6caa","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipExecption(\u0027Environment has an immutable user source. All routines in this \u0027"},{"line_number":38,"context_line":"                                    \u0027class attempt to mutate this source.\u0027)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def setUp(self):"},{"line_number":41,"context_line":"        super(TrustsV3TestJSON, self).setUp()"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_64197820","line":38,"range":{"start_line":37,"start_character":37,"end_line":38,"end_character":74},"in_reply_to":"7faddb67_844fd432","updated":"2019-07-12 17:01:05.000000000","message":"Fixed in PS4","commit_id":"4f33dcbafff27ea93d855d036b126f39a41af938"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"46c9b7839b2a2f2bd1e54e2437b663b0fac6ef1f","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipException(\u0027Skipped because environment has an \u0027"},{"line_number":38,"context_line":"                                    \u0027immutable user source and solely \u0027"},{"line_number":39,"context_line":"                                    \u0027provides read-only access to users.\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_bc426baa","line":36,"updated":"2019-07-25 23:10:36.000000000","message":"\u003e setUp() calls create_user()\n\nOh, thanks. I missed that... setUp() -\u003e create_trustor_and_roles() -\u003e create_user() \n\n@Doug, @Leo: I\u0027m sorry for the confusion. I misunderstood the original code. So, we can\u0027t skip create_trustor_and_roles() in these tests of class. I mean, all test needs to create a new user in this class.\n\nBut I\u0027m still wondering, if immutable_user_source is True, trust should be False? or it should be independent from the immutable_user_source config?","commit_id":"bae11b6dc0c776ef008fe09c5885e53392ded002"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"f6469e728fc0ff889dd17d9539c99a00acf411e4","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipException(\u0027Skipped because environment has an \u0027"},{"line_number":38,"context_line":"                                    \u0027immutable user source and solely \u0027"},{"line_number":39,"context_line":"                                    \u0027provides read-only access to users.\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_24e191d1","line":36,"updated":"2019-07-25 03:27:40.000000000","message":"I was thinking it might be good to skip only create_trustor_and_roles when immutable_user_source is True. (If it works for the other tests.)\nAnd, I\u0027d like to know whether we can create/delete trusts or not when immutable_user_source is True. If we can\u0027t create/delete trusts when the flag if True, this patch should be good.","commit_id":"bae11b6dc0c776ef008fe09c5885e53392ded002"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"079088bd2b05aca02679efb6adf17cb722026671","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipException(\u0027Skipped because environment has an \u0027"},{"line_number":38,"context_line":"                                    \u0027immutable user source and solely \u0027"},{"line_number":39,"context_line":"                                    \u0027provides read-only access to users.\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_040495c5","line":36,"updated":"2019-07-25 02:42:45.000000000","message":"I\u0027m not sure we should skip entire tests of this class because some of the tests only create/delete \u0027trust\u0027 not \u0027user\u0027. So, my question is that if immutalbe_user_source is True, can\u0027t we create/delete a trust too?\n\nAnd, if we should skip the entire tests of this class when trust is True and immutable_user_source is True, I think it should be a misconfiguration. User should set the trust config False in that case.","commit_id":"bae11b6dc0c776ef008fe09c5885e53392ded002"},{"author":{"_account_id":17887,"name":"Doug Schveninger","email":"ds6901@att.com","username":"Doug.Schveninger"},"change_message_id":"6ed9ffffedb7109c5c526b46f1e6a44a0a63451a","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipException(\u0027Skipped because environment has an \u0027"},{"line_number":38,"context_line":"                                    \u0027immutable user source and solely \u0027"},{"line_number":39,"context_line":"                                    \u0027provides read-only access to users.\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_64c5495b","line":36,"in_reply_to":"7faddb67_040495c5","updated":"2019-07-25 03:12:25.000000000","message":"The setup method calls create_trustor_and_roles and on line 70 creates a user. \n\nAre you saying that we should replace the create user on line 70 with a primary or alt Fred in the standard cred model?","commit_id":"bae11b6dc0c776ef008fe09c5885e53392ded002"},{"author":{"_account_id":30683,"name":"Leo Henken","email":"lh236s@att.com","username":"lh236s"},"change_message_id":"6120db66bb9c735d3071fb73e0aba19cb8203342","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipException(\u0027Skipped because environment has an \u0027"},{"line_number":38,"context_line":"                                    \u0027immutable user source and solely \u0027"},{"line_number":39,"context_line":"                                    \u0027provides read-only access to users.\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_c81c4b79","line":36,"in_reply_to":"7faddb67_24e191d1","updated":"2019-07-25 13:56:38.000000000","message":"If we skip just the setup function create_trustor_and_roles, that compromises all 6 tests. Every test calls create_trust() which attempts to link the demo user to the user created in the setup. I do not think skipping the setup would be a viable option without an overhaul of the code.\n\nThis patch set is meant to strengthen our test bed and create a purified LDAP system by eliminating any tests that create users on the fly. \n\nEither we skip the entire test class or go another route. I will look into your keystone backend idea today.","commit_id":"bae11b6dc0c776ef008fe09c5885e53392ded002"},{"author":{"_account_id":30683,"name":"Leo Henken","email":"lh236s@att.com","username":"lh236s"},"change_message_id":"5bf3653e9a5e5c7f2009255abbfe1148797fb9df","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipException(\u0027Skipped because environment has an \u0027"},{"line_number":38,"context_line":"                                    \u0027immutable user source and solely \u0027"},{"line_number":39,"context_line":"                                    \u0027provides read-only access to users.\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_c3d97b22","line":36,"in_reply_to":"7faddb67_bc426baa","updated":"2019-07-26 13:22:21.000000000","message":"I think that they are independent of each other, it is just that the test routines tempest has for trusts use newly created users. Our team\u0027s goal is to skip tests to solidify our test bed but not to overhaul the tests. Thanks for the comments and ideas!","commit_id":"bae11b6dc0c776ef008fe09c5885e53392ded002"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"8f138ff41b6ad27f4c18e51656a46d60967e7728","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        super(TrustsV3TestJSON, cls).skip_checks()"},{"line_number":34,"context_line":"        if not CONF.identity_feature_enabled.trust:"},{"line_number":35,"context_line":"            raise cls.skipException(\"Trusts aren\u0027t enabled\")"},{"line_number":36,"context_line":"        if CONF.identity_feature_enabled.immutable_user_source:"},{"line_number":37,"context_line":"            raise cls.skipException(\u0027Skipped because environment has an \u0027"},{"line_number":38,"context_line":"                                    \u0027immutable user source and solely \u0027"},{"line_number":39,"context_line":"                                    \u0027provides read-only access to users.\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_4e3b80c7","line":36,"in_reply_to":"7faddb67_c81c4b79","updated":"2019-07-25 16:42:52.000000000","message":"setUp() calls create_user(), so it is fine for me to skip at early stage like this.","commit_id":"bae11b6dc0c776ef008fe09c5885e53392ded002"}]}
