)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"a4ec94b6a4e6765baedc6726094731bfa53ce5a5","unresolved":false,"context_lines":[{"line_number":10,"context_line":"original issued at time of the unscoped token."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"},{"line_number":13,"context_line":"Partial-Bug: 1473567"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"da20952f_0c32a75e","line":13,"updated":"2015-09-03 18:46:31.000000000","message":"Is there more work to do in tempest for this? Otherwise this should be closes-bug.","commit_id":"3c86873bae00b6891b9d3f3b708c1bab38f4e43e"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"73ba6db43277616243f1615c30168d43907771ff","unresolved":false,"context_lines":[{"line_number":10,"context_line":"original issued at time of the unscoped token."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"},{"line_number":13,"context_line":"Partial-Bug: 1473567"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"da20952f_2c0e8b8c","line":13,"in_reply_to":"da20952f_0c32a75e","updated":"2015-09-03 18:47:24.000000000","message":"Yeah we have other things that need to be fixed, like https://review.openstack.org/#/c/220242/","commit_id":"3c86873bae00b6891b9d3f3b708c1bab38f4e43e"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"82d50d6242eb1a5f5bb059d093f02cf589ac8f62","unresolved":false,"context_lines":[{"line_number":10,"context_line":"original issued at time of the unscoped token."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"},{"line_number":13,"context_line":"Partial-Bug: 1473567"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"da20952f_ec009336","line":13,"in_reply_to":"da20952f_2c0e8b8c","updated":"2015-09-03 18:49:26.000000000","message":"https://review.openstack.org/#/c/220242/ is in devstack not in tempest.","commit_id":"3c86873bae00b6891b9d3f3b708c1bab38f4e43e"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"0206b8779e65f167f29bd96a97a1968c152c936d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Remove assertion checking rescoped issued_at"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"},{"line_number":10,"context_line":"Partial-Bug: 1473567"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"da20952f_ef5c054d","line":10,"updated":"2015-09-03 19:15:44.000000000","message":"should be Closes-Bug","commit_id":"fec66974afbbffd539936c3fbd2b2fd06bc1de92"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"65c6033f6d5b4a0dc1f34050b15f9e7c922c9d89","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Remove assertion checking rescoped issued_at"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"},{"line_number":10,"context_line":"Partial-Bug: 1473567"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"da20952f_32f586ec","line":10,"in_reply_to":"da20952f_ef5c054d","updated":"2015-09-03 19:19:42.000000000","message":"we have other things that need to be merged before that bug can be closed.","commit_id":"fec66974afbbffd539936c3fbd2b2fd06bc1de92"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"f71d4fd79a3ba043c061b17ce69d392be1d478fd","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Remove assertion checking rescoped issued_at"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When using Fernet tokens with Tempest, all operations in this test happen"},{"line_number":10,"context_line":"within the same second, which mean the original issued_at time and the rescoped"},{"line_number":11,"context_line":"issues_at time are the same, which fails an assertion. This isn\u0027t an issue with"},{"line_number":12,"context_line":"uuid tokens because uuid tokens store full subsecond precision. Fernet tokens"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"da20952f_f2e5ce08","line":9,"updated":"2015-09-03 19:26:42.000000000","message":"remove \"with Tempest\"\n\nsuggest replace with \"with keystone\"\n\nsuggest change \"test happen\" to \"test potentially\"","commit_id":"b3e701d645da634790dcbf782a528288330f2901"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"72971b5ce7a86d4f9fd9eacf32e048b447a02402","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Remove assertion checking rescoped issued_at"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When using Fernet tokens with Tempest, all operations in this test happen"},{"line_number":10,"context_line":"within the same second, which mean the original issued_at time and the rescoped"},{"line_number":11,"context_line":"issues_at time are the same, which fails an assertion. This isn\u0027t an issue with"},{"line_number":12,"context_line":"uuid tokens because uuid tokens store full subsecond precision. Fernet tokens"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"da20952f_d26e8a2e","line":9,"in_reply_to":"da20952f_f2e5ce08","updated":"2015-09-03 19:33:49.000000000","message":"Done","commit_id":"b3e701d645da634790dcbf782a528288330f2901"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"f71d4fd79a3ba043c061b17ce69d392be1d478fd","unresolved":false,"context_lines":[{"line_number":13,"context_line":"also return subsecond format but the precision is always truncated to .000000Z."},{"line_number":14,"context_line":"This is because the cryptography library determines the issued_at time, not"},{"line_number":15,"context_line":"Keystone. Keystone uses the issued_at timestamp from Fernet as the source of"},{"line_number":16,"context_line":"truth. This is why we don\u0027t have an assertion that checks to make sure the"},{"line_number":17,"context_line":"original issued_at and the rescoped issued_at aren\u0027t the same."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"da20952f_3284a609","line":16,"updated":"2015-09-03 19:26:42.000000000","message":"suggest change \"don\u0027t have\" to \"should not have\".","commit_id":"b3e701d645da634790dcbf782a528288330f2901"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"72971b5ce7a86d4f9fd9eacf32e048b447a02402","unresolved":false,"context_lines":[{"line_number":13,"context_line":"also return subsecond format but the precision is always truncated to .000000Z."},{"line_number":14,"context_line":"This is because the cryptography library determines the issued_at time, not"},{"line_number":15,"context_line":"Keystone. Keystone uses the issued_at timestamp from Fernet as the source of"},{"line_number":16,"context_line":"truth. This is why we don\u0027t have an assertion that checks to make sure the"},{"line_number":17,"context_line":"original issued_at and the rescoped issued_at aren\u0027t the same."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"da20952f_d2dc4ae6","line":16,"in_reply_to":"da20952f_3284a609","updated":"2015-09-03 19:33:49.000000000","message":"Done","commit_id":"b3e701d645da634790dcbf782a528288330f2901"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"f5c32c9b2832ba8f2461e11d2e8d796c82e0b04d","unresolved":false,"context_lines":[{"line_number":17,"context_line":"original issued_at and the rescoped issued_at aren\u0027t the same."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"},{"line_number":20,"context_line":"Partial-Bug: 1473567"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"da20952f_12dac24b","line":20,"updated":"2015-09-03 19:24:33.000000000","message":"Still think think should be closes-bug since there\u0027s nothing else to do in tempest.","commit_id":"b3e701d645da634790dcbf782a528288330f2901"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"72971b5ce7a86d4f9fd9eacf32e048b447a02402","unresolved":false,"context_lines":[{"line_number":17,"context_line":"original issued_at and the rescoped issued_at aren\u0027t the same."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I1b67486ce929cc5a2fc0fc36d14a8e6cf662fbfc"},{"line_number":20,"context_line":"Partial-Bug: 1473567"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"da20952f_f2d94ef4","line":20,"in_reply_to":"da20952f_12dac24b","updated":"2015-09-03 19:33:49.000000000","message":"Done","commit_id":"b3e701d645da634790dcbf782a528288330f2901"}],"tempest/api/identity/admin/v3/test_tokens.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"6341b8bcc59fccd512958f9fef6cb43954431d7c","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        # as the source of truth. When we wait a second, we can test the"},{"line_number":122,"context_line":"        # difference in the original issued_at and the recoped issued_at"},{"line_number":123,"context_line":"        # timestamps."},{"line_number":124,"context_line":"        time.sleep(1)"},{"line_number":125,"context_line":"        # Use the unscoped token to get a scoped token."},{"line_number":126,"context_line":"        token_auth \u003d self.token.auth(token\u003dtoken_id,"},{"line_number":127,"context_line":"                                     project_name\u003dproject1_name,"}],"source_content_type":"text/x-python","patch_set":2,"id":"da20952f_ec6bb31c","line":124,"updated":"2015-09-03 18:48:34.000000000","message":"I\u0027m open to other solutions outside of this. But what are our thoughts on removing the check at line 134?","commit_id":"b754dedb5306201b0550ff57e70882c1ca43981f"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"d62e1ed1f2969dbd395bedf344686314acd40e2f","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        # as the source of truth. When we wait a second, we can test the"},{"line_number":122,"context_line":"        # difference in the original issued_at and the recoped issued_at"},{"line_number":123,"context_line":"        # timestamps."},{"line_number":124,"context_line":"        time.sleep(1)"},{"line_number":125,"context_line":"        # Use the unscoped token to get a scoped token."},{"line_number":126,"context_line":"        token_auth \u003d self.token.auth(token\u003dtoken_id,"},{"line_number":127,"context_line":"                                     project_name\u003dproject1_name,"}],"source_content_type":"text/x-python","patch_set":2,"id":"da20952f_efd965f4","line":124,"in_reply_to":"da20952f_0f0cd9ea","updated":"2015-09-03 19:12:41.000000000","message":"Done","commit_id":"b754dedb5306201b0550ff57e70882c1ca43981f"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"0e4b3ec7cdd42b980646415ff6b2cf77032447f3","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        # as the source of truth. When we wait a second, we can test the"},{"line_number":122,"context_line":"        # difference in the original issued_at and the recoped issued_at"},{"line_number":123,"context_line":"        # timestamps."},{"line_number":124,"context_line":"        time.sleep(1)"},{"line_number":125,"context_line":"        # Use the unscoped token to get a scoped token."},{"line_number":126,"context_line":"        token_auth \u003d self.token.auth(token\u003dtoken_id,"},{"line_number":127,"context_line":"                                     project_name\u003dproject1_name,"}],"source_content_type":"text/x-python","patch_set":2,"id":"da20952f_ef6645ec","line":124,"in_reply_to":"da20952f_ec6bb31c","updated":"2015-09-03 18:56:27.000000000","message":"remove the check at line 134. It\u0027s invalid.","commit_id":"b754dedb5306201b0550ff57e70882c1ca43981f"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"53129512df29cc5bce3f7f897e70e2d33d56b541","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        # as the source of truth. When we wait a second, we can test the"},{"line_number":122,"context_line":"        # difference in the original issued_at and the recoped issued_at"},{"line_number":123,"context_line":"        # timestamps."},{"line_number":124,"context_line":"        time.sleep(1)"},{"line_number":125,"context_line":"        # Use the unscoped token to get a scoped token."},{"line_number":126,"context_line":"        token_auth \u003d self.token.auth(token\u003dtoken_id,"},{"line_number":127,"context_line":"                                     project_name\u003dproject1_name,"}],"source_content_type":"text/x-python","patch_set":2,"id":"da20952f_0f0cd9ea","line":124,"in_reply_to":"da20952f_ef6645ec","updated":"2015-09-03 19:01:32.000000000","message":"I agree, a random sleep timer is not something we want to do. Brant\u0027s suggestion to either remove the assertNotEqual on L134 or change it to be \u003e\u003d is the correct solution here. RIght now there is an inherent race in the test because of that if there is not real subsecond time for all tokens.","commit_id":"b754dedb5306201b0550ff57e70882c1ca43981f"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"0206b8779e65f167f29bd96a97a1968c152c936d","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":"from tempest_lib import exceptions as lib_exc"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from tempest.api.identity import base"},{"line_number":18,"context_line":"from tempest.common.utils import data_utils"}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_0fb3799b","line":15,"updated":"2015-09-03 19:15:44.000000000","message":"revert whitespace change above.","commit_id":"fec66974afbbffd539936c3fbd2b2fd06bc1de92"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"65c6033f6d5b4a0dc1f34050b15f9e7c922c9d89","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":"from tempest_lib import exceptions as lib_exc"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from tempest.api.identity import base"},{"line_number":18,"context_line":"from tempest.common.utils import data_utils"}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_52835a56","line":15,"in_reply_to":"da20952f_0fb3799b","updated":"2015-09-03 19:19:42.000000000","message":"Done","commit_id":"fec66974afbbffd539936c3fbd2b2fd06bc1de92"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"2261617738ad7c4aa67c2dec3099e0f2e8f171a7","unresolved":false,"context_lines":[{"line_number":126,"context_line":"        # time, not Keystone. Keystone uses the issued_at timestamp from Fernet"},{"line_number":127,"context_line":"        # as the source of truth. This is why we don\u0027t have an assertion that"},{"line_number":128,"context_line":"        # checks to make sure the original issued_at and the rescoped issued_at"},{"line_number":129,"context_line":"        # aren\u0027t the same."},{"line_number":130,"context_line":"        self.assertEqual(set([\u0027password\u0027, \u0027token\u0027]),"},{"line_number":131,"context_line":"                         set(token_auth[\u0027token\u0027][\u0027methods\u0027]))"},{"line_number":132,"context_line":"        self.assertEqual(orig_user, token_auth[\u0027token\u0027][\u0027user\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_cf8a61bf","line":129,"updated":"2015-09-03 19:13:58.000000000","message":"Heh, well I\u0027m not sure you need the comment if you removed the check, maybe in the commit message instead. But, whatever","commit_id":"fec66974afbbffd539936c3fbd2b2fd06bc1de92"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"0206b8779e65f167f29bd96a97a1968c152c936d","unresolved":false,"context_lines":[{"line_number":126,"context_line":"        # time, not Keystone. Keystone uses the issued_at timestamp from Fernet"},{"line_number":127,"context_line":"        # as the source of truth. This is why we don\u0027t have an assertion that"},{"line_number":128,"context_line":"        # checks to make sure the original issued_at and the rescoped issued_at"},{"line_number":129,"context_line":"        # aren\u0027t the same."},{"line_number":130,"context_line":"        self.assertEqual(set([\u0027password\u0027, \u0027token\u0027]),"},{"line_number":131,"context_line":"                         set(token_auth[\u0027token\u0027][\u0027methods\u0027]))"},{"line_number":132,"context_line":"        self.assertEqual(orig_user, token_auth[\u0027token\u0027][\u0027user\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_4f4bb187","line":129,"updated":"2015-09-03 19:15:44.000000000","message":"suggest remove this comment, or be consistent and add comments for everything else that isn\u0027t checked.","commit_id":"fec66974afbbffd539936c3fbd2b2fd06bc1de92"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"65c6033f6d5b4a0dc1f34050b15f9e7c922c9d89","unresolved":false,"context_lines":[{"line_number":126,"context_line":"        # time, not Keystone. Keystone uses the issued_at timestamp from Fernet"},{"line_number":127,"context_line":"        # as the source of truth. This is why we don\u0027t have an assertion that"},{"line_number":128,"context_line":"        # checks to make sure the original issued_at and the rescoped issued_at"},{"line_number":129,"context_line":"        # aren\u0027t the same."},{"line_number":130,"context_line":"        self.assertEqual(set([\u0027password\u0027, \u0027token\u0027]),"},{"line_number":131,"context_line":"                         set(token_auth[\u0027token\u0027][\u0027methods\u0027]))"},{"line_number":132,"context_line":"        self.assertEqual(orig_user, token_auth[\u0027token\u0027][\u0027user\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_b2b3d64c","line":129,"in_reply_to":"da20952f_4f4bb187","updated":"2015-09-03 19:19:42.000000000","message":"Done","commit_id":"fec66974afbbffd539936c3fbd2b2fd06bc1de92"}]}
