)]}'
{"rally/api.py":[{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":329,"context_line":"                                     stop when any SLA check for it fails"},{"line_number":330,"context_line":"        \"\"\""},{"line_number":331,"context_line":"        deployment \u003d objects.Deployment.get(deployment)"},{"line_number":332,"context_line":"        API._deployment_status_check(deployment)"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"        task \u003d task or objects.Task(deployment_uuid\u003ddeployment[\"uuid\"])"},{"line_number":335,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_3daa6dd5","line":332,"range":{"start_line":332,"start_character":8,"end_line":332,"end_character":48},"updated":"2017-02-03 09:53:07.000000000","message":"Move it to _Task.create","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":329,"context_line":"                                     stop when any SLA check for it fails"},{"line_number":330,"context_line":"        \"\"\""},{"line_number":331,"context_line":"        deployment \u003d objects.Deployment.get(deployment)"},{"line_number":332,"context_line":"        API._deployment_status_check(deployment)"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"        task \u003d task or objects.Task(deployment_uuid\u003ddeployment[\"uuid\"])"},{"line_number":335,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_0f53a9e2","line":332,"range":{"start_line":332,"start_character":8,"end_line":332,"end_character":48},"in_reply_to":"1a430d35_3daa6dd5","updated":"2017-02-03 16:55:13.000000000","message":"Done","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":816,"context_line":"        #                  skip the whole test suites. For example, all tests"},{"line_number":817,"context_line":"        #                  in the class or module."},{"line_number":818,"context_line":""},{"line_number":819,"context_line":"        deployment \u003d objects.Deployment.get(deployment_id)"},{"line_number":820,"context_line":"        API._deployment_status_check(deployment)"},{"line_number":821,"context_line":""},{"line_number":822,"context_line":"        verifier \u003d _Verifier.get(verifier_id)"},{"line_number":823,"context_line":"        if verifier.status !\u003d consts.VerifierStatus.INSTALLED:"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_7906ca21","line":820,"range":{"start_line":819,"start_character":8,"end_line":820,"end_character":48},"updated":"2017-02-03 09:53:07.000000000","message":"We do not need a separate method for this.\n\n  deployment \u003d objects.Deployment.get(deployment_id)\n  if deployment[\"status\"] !\u003d consts.DeployStatus.DEPLOY_FINISHED:\n      raise exceptions.DeploymentNotFinishedStatus(\n          deployment\u003ddeployment[\"uuid\"],\n          status\u003ddeployment[\"status\"])","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":816,"context_line":"        #                  skip the whole test suites. For example, all tests"},{"line_number":817,"context_line":"        #                  in the class or module."},{"line_number":818,"context_line":""},{"line_number":819,"context_line":"        deployment \u003d objects.Deployment.get(deployment_id)"},{"line_number":820,"context_line":"        API._deployment_status_check(deployment)"},{"line_number":821,"context_line":""},{"line_number":822,"context_line":"        verifier \u003d _Verifier.get(verifier_id)"},{"line_number":823,"context_line":"        if verifier.status !\u003d consts.VerifierStatus.INSTALLED:"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_2f5ea5e9","line":820,"range":{"start_line":819,"start_character":8,"end_line":820,"end_character":48},"in_reply_to":"1a430d35_7906ca21","updated":"2017-02-03 16:55:13.000000000","message":"Done","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":1098,"context_line":"                return [fpath]"},{"line_number":1099,"context_line":""},{"line_number":1100,"context_line":"    @staticmethod"},{"line_number":1101,"context_line":"    def _deployment_status_check(deployment):"},{"line_number":1102,"context_line":"        \"\"\"Check deployment status before task.start() and verification.start()."},{"line_number":1103,"context_line":""},{"line_number":1104,"context_line":"        :param deployment: The deployment instance"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_3d0eed34","line":1101,"range":{"start_line":1101,"start_character":8,"end_line":1101,"end_character":32},"updated":"2017-02-03 09:53:07.000000000","message":"lets remove this method","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":1098,"context_line":"                return [fpath]"},{"line_number":1099,"context_line":""},{"line_number":1100,"context_line":"    @staticmethod"},{"line_number":1101,"context_line":"    def _deployment_status_check(deployment):"},{"line_number":1102,"context_line":"        \"\"\"Check deployment status before task.start() and verification.start()."},{"line_number":1103,"context_line":""},{"line_number":1104,"context_line":"        :param deployment: The deployment instance"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_8f5dd9eb","line":1101,"range":{"start_line":1101,"start_character":8,"end_line":1101,"end_character":32},"in_reply_to":"1a430d35_3d0eed34","updated":"2017-02-03 16:55:13.000000000","message":"Done","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":1105,"context_line":"        \"\"\""},{"line_number":1106,"context_line":""},{"line_number":1107,"context_line":"        if deployment[\"status\"] !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":1108,"context_line":"            print (_(\"Deployment\u0027s status is not finished\"))"},{"line_number":1109,"context_line":"            raise exceptions.DeploymentNotFinishedStatus("},{"line_number":1110,"context_line":"                deployment\u003ddeployment[\"uuid\"],"},{"line_number":1111,"context_line":"                status\u003ddeployment[\"status\"])"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_dd25e9ae","line":1108,"range":{"start_line":1108,"start_character":12,"end_line":1108,"end_character":17},"updated":"2017-02-03 09:53:07.000000000","message":"btw, print is not allowed at API level. it should be used only in CLI","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":1105,"context_line":"        \"\"\""},{"line_number":1106,"context_line":""},{"line_number":1107,"context_line":"        if deployment[\"status\"] !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":1108,"context_line":"            print (_(\"Deployment\u0027s status is not finished\"))"},{"line_number":1109,"context_line":"            raise exceptions.DeploymentNotFinishedStatus("},{"line_number":1110,"context_line":"                deployment\u003ddeployment[\"uuid\"],"},{"line_number":1111,"context_line":"                status\u003ddeployment[\"status\"])"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_2f05c5c1","line":1108,"range":{"start_line":1108,"start_character":12,"end_line":1108,"end_character":17},"in_reply_to":"1a430d35_dd25e9ae","updated":"2017-02-03 16:55:13.000000000","message":"I have learned:)","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f02d3116bf0a4d39471e17bd76b1f6f765e7796b","unresolved":false,"context_lines":[{"line_number":297,"context_line":"        :returns: Task object"},{"line_number":298,"context_line":"        \"\"\""},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        deployment_instance \u003d objects.Deployment.get(deployment)"},{"line_number":301,"context_line":"        deployment_status \u003d deployment_instance[\"status\"]"},{"line_number":302,"context_line":"        if deployment_status !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":303,"context_line":"            raise exceptions.DeploymentNotFinishedStatus("}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_42630d42","line":300,"range":{"start_line":300,"start_character":18,"end_line":300,"end_character":27},"updated":"2017-02-08 20:19:08.000000000","message":"I would like to keep consistency with other methods and name it \u0027just\u0027 deployment.","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"fca0a9214f62c2eef501135ce7895895c2728774","unresolved":false,"context_lines":[{"line_number":297,"context_line":"        :returns: Task object"},{"line_number":298,"context_line":"        \"\"\""},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        deployment_instance \u003d objects.Deployment.get(deployment)"},{"line_number":301,"context_line":"        deployment_status \u003d deployment_instance[\"status\"]"},{"line_number":302,"context_line":"        if deployment_status !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":303,"context_line":"            raise exceptions.DeploymentNotFinishedStatus("}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_eca783a4","line":300,"range":{"start_line":300,"start_character":18,"end_line":300,"end_character":27},"in_reply_to":"1a430d35_42630d42","updated":"2017-02-09 01:51:36.000000000","message":"Done","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f02d3116bf0a4d39471e17bd76b1f6f765e7796b","unresolved":false,"context_lines":[{"line_number":298,"context_line":"        \"\"\""},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        deployment_instance \u003d objects.Deployment.get(deployment)"},{"line_number":301,"context_line":"        deployment_status \u003d deployment_instance[\"status\"]"},{"line_number":302,"context_line":"        if deployment_status !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":303,"context_line":"            raise exceptions.DeploymentNotFinishedStatus("},{"line_number":304,"context_line":"                name\u003ddeployment_instance[\"name\"],"}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_22e0c195","line":301,"range":{"start_line":301,"start_character":8,"end_line":301,"end_character":57},"updated":"2017-02-08 20:19:08.000000000","message":"In this case it is redundant and we can use just deployment[\"status\"].","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"fca0a9214f62c2eef501135ce7895895c2728774","unresolved":false,"context_lines":[{"line_number":298,"context_line":"        \"\"\""},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        deployment_instance \u003d objects.Deployment.get(deployment)"},{"line_number":301,"context_line":"        deployment_status \u003d deployment_instance[\"status\"]"},{"line_number":302,"context_line":"        if deployment_status !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":303,"context_line":"            raise exceptions.DeploymentNotFinishedStatus("},{"line_number":304,"context_line":"                name\u003ddeployment_instance[\"name\"],"}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_2cbc2bba","line":301,"range":{"start_line":301,"start_character":8,"end_line":301,"end_character":57},"in_reply_to":"1a430d35_22e0c195","updated":"2017-02-09 01:51:36.000000000","message":"Done","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"}],"rally/cli/commands/task.py":[{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"dfe2c7dab52f838247bf5ba7bb000b79a3f2d854","unresolved":false,"context_lines":[{"line_number":237,"context_line":"        \"\"\""},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"        try:"},{"line_number":240,"context_line":"            self._deployment_check(api, deployment)"},{"line_number":241,"context_line":"        except exceptions.DeploymentNotFound:"},{"line_number":242,"context_line":"            print(_(\"Deployment %s is not found.\") % deployment)"},{"line_number":243,"context_line":"            return 1"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_07e4d3de","line":240,"range":{"start_line":240,"start_character":17,"end_line":240,"end_character":34},"updated":"2017-01-23 15:54:05.000000000","message":"I thought that we just need to check status field of deployment equals to DeployStatus.DEPLOY_FINISHED\n\nhttps://github.com/openstack/rally/blob/master/rally/common/db/sqlalchemy/models.py#L88","commit_id":"361420798b006a4d126900a89d49a2afb316d985"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"bdf8f2e1559620f90cb1f57dd32fd8acc4255770","unresolved":false,"context_lines":[{"line_number":237,"context_line":"        \"\"\""},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"        try:"},{"line_number":240,"context_line":"            self._deployment_check(api, deployment)"},{"line_number":241,"context_line":"        except exceptions.DeploymentNotFound:"},{"line_number":242,"context_line":"            print(_(\"Deployment %s is not found.\") % deployment)"},{"line_number":243,"context_line":"            return 1"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_35fe58ae","line":240,"range":{"start_line":240,"start_character":17,"end_line":240,"end_character":34},"in_reply_to":"5a3905b3_07e4d3de","updated":"2017-01-23 16:37:06.000000000","message":"Thanks. I misjudge the demand :( I will change.","commit_id":"361420798b006a4d126900a89d49a2afb316d985"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"bef184f885757162da733bbeda418eb92a136e8f","unresolved":false,"context_lines":[{"line_number":235,"context_line":"                                     for it fails"},{"line_number":236,"context_line":"        \"\"\""},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"        try:"},{"line_number":239,"context_line":"            self._deployment_status_check(api, deployment)"},{"line_number":240,"context_line":"        except exceptions.DeploymentErrorStatus:"},{"line_number":241,"context_line":"            return 1"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"        task_instance \u003d api.task.create(deployment, tag)"},{"line_number":244,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_7ff16594","line":241,"range":{"start_line":238,"start_character":0,"end_line":241,"end_character":20},"updated":"2017-02-01 08:50:26.000000000","message":"I am not sure that we need to add this check at CLI level. I think we need this check at API level.","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"d7798b82ea7e42dec2e71ffc6f5a0b16fe608133","unresolved":false,"context_lines":[{"line_number":235,"context_line":"                                     for it fails"},{"line_number":236,"context_line":"        \"\"\""},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"        try:"},{"line_number":239,"context_line":"            self._deployment_status_check(api, deployment)"},{"line_number":240,"context_line":"        except exceptions.DeploymentErrorStatus:"},{"line_number":241,"context_line":"            return 1"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"        task_instance \u003d api.task.create(deployment, tag)"},{"line_number":244,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_d14fad8f","line":241,"range":{"start_line":238,"start_character":0,"end_line":241,"end_character":20},"in_reply_to":"3a461143_7ff16594","updated":"2017-02-01 09:19:54.000000000","message":"I agree with moving this to API level, but we need to clarify one more thing. This method creates a task(with INIT status) and if we move the logic for deployment status check to api.task.start then we need to update the task status to something like CRASHED or INVALID. I think it is better to move the logic to api.task.create and check the deployment status before saving of Task instance to DB. Also, we can warn the user with a message \"Cannot create a task for unfinished deployment\".\n\n@Andrey, @Yaroslav,\nWhat do you think about it?","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"ffd0142d0400c53130175e291edccab0cabb3942","unresolved":false,"context_lines":[{"line_number":235,"context_line":"                                     for it fails"},{"line_number":236,"context_line":"        \"\"\""},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"        try:"},{"line_number":239,"context_line":"            self._deployment_status_check(api, deployment)"},{"line_number":240,"context_line":"        except exceptions.DeploymentErrorStatus:"},{"line_number":241,"context_line":"            return 1"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"        task_instance \u003d api.task.create(deployment, tag)"},{"line_number":244,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_f4e577db","line":241,"range":{"start_line":238,"start_character":0,"end_line":241,"end_character":20},"in_reply_to":"3a461143_d14fad8f","updated":"2017-02-01 09:32:30.000000000","message":"Yep, I meant exactly this.","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"d615ec46df68093331c7db59e7f10a391294a14e","unresolved":false,"context_lines":[{"line_number":235,"context_line":"                                     for it fails"},{"line_number":236,"context_line":"        \"\"\""},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"        try:"},{"line_number":239,"context_line":"            self._deployment_status_check(api, deployment)"},{"line_number":240,"context_line":"        except exceptions.DeploymentErrorStatus:"},{"line_number":241,"context_line":"            return 1"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"        task_instance \u003d api.task.create(deployment, tag)"},{"line_number":244,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_c2db4b20","line":241,"range":{"start_line":238,"start_character":0,"end_line":241,"end_character":20},"in_reply_to":"3a461143_f4e577db","updated":"2017-02-01 17:49:35.000000000","message":"Thanks. Guys, I will fix it.","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"bef184f885757162da733bbeda418eb92a136e8f","unresolved":false,"context_lines":[{"line_number":871,"context_line":"                {\"error_type\": error_type, \"error_message\": error_message},"},{"line_number":872,"context_line":"                error_traceback)"},{"line_number":873,"context_line":""},{"line_number":874,"context_line":"    def _deployment_status_check(self, api, deployment):"},{"line_number":875,"context_line":"        \"\"\"Check deployment status before task.start()."},{"line_number":876,"context_line":""},{"line_number":877,"context_line":"        :param deployment: The UUID or Name of deployment"},{"line_number":878,"context_line":"        \"\"\""},{"line_number":879,"context_line":"        deployment_instance \u003d api.deployment.get(deployment)"},{"line_number":880,"context_line":"        deployment_status \u003d deployment_instance[\"status\"]"},{"line_number":881,"context_line":"        print(_(\"Deployment status is OK\"))"},{"line_number":882,"context_line":""},{"line_number":883,"context_line":"        if deployment_status !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":884,"context_line":"            raise exceptions.DeploymentErrorStatus("},{"line_number":885,"context_line":"                deployment\u003ddeployment,"},{"line_number":886,"context_line":"                status\u003ddeployment_status)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_3f8c3dd9","line":886,"range":{"start_line":874,"start_character":4,"end_line":886,"end_character":41},"updated":"2017-02-01 08:50:26.000000000","message":"Also, I think we don\u0027t need two methods for task and verification component. This check is very simple:\n\n\ndeployment \u003d _Deployment.get(deployment)\nif deployment[\"status\"] !\u003d consts.DeployStatus.DEPLOY_FINISHED:\n    raise ...","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"d615ec46df68093331c7db59e7f10a391294a14e","unresolved":false,"context_lines":[{"line_number":871,"context_line":"                {\"error_type\": error_type, \"error_message\": error_message},"},{"line_number":872,"context_line":"                error_traceback)"},{"line_number":873,"context_line":""},{"line_number":874,"context_line":"    def _deployment_status_check(self, api, deployment):"},{"line_number":875,"context_line":"        \"\"\"Check deployment status before task.start()."},{"line_number":876,"context_line":""},{"line_number":877,"context_line":"        :param deployment: The UUID or Name of deployment"},{"line_number":878,"context_line":"        \"\"\""},{"line_number":879,"context_line":"        deployment_instance \u003d api.deployment.get(deployment)"},{"line_number":880,"context_line":"        deployment_status \u003d deployment_instance[\"status\"]"},{"line_number":881,"context_line":"        print(_(\"Deployment status is OK\"))"},{"line_number":882,"context_line":""},{"line_number":883,"context_line":"        if deployment_status !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":884,"context_line":"            raise exceptions.DeploymentErrorStatus("},{"line_number":885,"context_line":"                deployment\u003ddeployment,"},{"line_number":886,"context_line":"                status\u003ddeployment_status)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_62f45787","line":886,"range":{"start_line":874,"start_character":4,"end_line":886,"end_character":41},"in_reply_to":"3a461143_3f8c3dd9","updated":"2017-02-01 17:49:35.000000000","message":"You are right. Two methods is redudant. I will fix it.","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":234,"context_line":"                                     scenario will stop when any SLA check"},{"line_number":235,"context_line":"                                     for it fails"},{"line_number":236,"context_line":"        \"\"\""},{"line_number":237,"context_line":"        task_instance \u003d api.task.create(deployment, tag)"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"        try:"},{"line_number":240,"context_line":"            print(\"Running Rally version\", version.version_string())"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_5ddd796f","line":237,"range":{"start_line":237,"start_character":8,"end_line":237,"end_character":56},"updated":"2017-02-03 09:53:07.000000000","message":"Move it into \u0027try\u0027 block","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":234,"context_line":"                                     scenario will stop when any SLA check"},{"line_number":235,"context_line":"                                     for it fails"},{"line_number":236,"context_line":"        \"\"\""},{"line_number":237,"context_line":"        task_instance \u003d api.task.create(deployment, tag)"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"        try:"},{"line_number":240,"context_line":"            print(\"Running Rally version\", version.version_string())"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_6f0fcde1","line":237,"range":{"start_line":237,"start_character":8,"end_line":237,"end_character":56},"in_reply_to":"1a430d35_5ddd796f","updated":"2017-02-03 16:55:13.000000000","message":"Done","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":258,"context_line":"            self.detailed(api, task_id\u003dtask_instance[\"uuid\"])"},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":261,"context_line":"            if logging.is_debug():"},{"line_number":262,"context_line":"                LOG.exception(e)"},{"line_number":263,"context_line":"            print(e)"},{"line_number":264,"context_line":"            return 1"},{"line_number":265,"context_line":"        except (exceptions.InvalidTaskException, FailedToLoadTask) as e:"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_ddcfa9b1","line":262,"range":{"start_line":261,"start_character":12,"end_line":262,"end_character":32},"updated":"2017-02-03 09:53:07.000000000","message":"remove this","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":258,"context_line":"            self.detailed(api, task_id\u003dtask_instance[\"uuid\"])"},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":261,"context_line":"            if logging.is_debug():"},{"line_number":262,"context_line":"                LOG.exception(e)"},{"line_number":263,"context_line":"            print(e)"},{"line_number":264,"context_line":"            return 1"},{"line_number":265,"context_line":"        except (exceptions.InvalidTaskException, FailedToLoadTask) as e:"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_cff601d7","line":262,"range":{"start_line":261,"start_character":12,"end_line":262,"end_character":32},"in_reply_to":"1a430d35_ddcfa9b1","updated":"2017-02-03 16:55:13.000000000","message":"Done","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":260,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":261,"context_line":"            if logging.is_debug():"},{"line_number":262,"context_line":"                LOG.exception(e)"},{"line_number":263,"context_line":"            print(e)"},{"line_number":264,"context_line":"            return 1"},{"line_number":265,"context_line":"        except (exceptions.InvalidTaskException, FailedToLoadTask) as e:"},{"line_number":266,"context_line":"            task_instance.set_failed(type(e).__name__,"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_1d41310c","line":263,"range":{"start_line":263,"start_character":12,"end_line":263,"end_character":20},"updated":"2017-02-03 09:53:07.000000000","message":"It should be:\n \n   print(_(\"Cannot create a task on unfinished deployment: %s\") % e)","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":260,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":261,"context_line":"            if logging.is_debug():"},{"line_number":262,"context_line":"                LOG.exception(e)"},{"line_number":263,"context_line":"            print(e)"},{"line_number":264,"context_line":"            return 1"},{"line_number":265,"context_line":"        except (exceptions.InvalidTaskException, FailedToLoadTask) as e:"},{"line_number":266,"context_line":"            task_instance.set_failed(type(e).__name__,"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_ef03bdb6","line":263,"range":{"start_line":263,"start_character":12,"end_line":263,"end_character":20},"in_reply_to":"1a430d35_1d41310c","updated":"2017-02-03 16:55:13.000000000","message":"Done","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"7f3d92355d596052a8c0bbb2d3b72fe858ea5b23","unresolved":false,"context_lines":[{"line_number":259,"context_line":"            self.detailed(api, task_id\u003dtask_instance[\"uuid\"])"},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":262,"context_line":"            print(_(\"Cannot create a task on unfinished deployment: %s\") % e)"},{"line_number":263,"context_line":"            return 1"},{"line_number":264,"context_line":"        except (exceptions.InvalidTaskException, FailedToLoadTask) as e:"},{"line_number":265,"context_line":"            task_instance.set_failed(type(e).__name__,"}],"source_content_type":"text/x-python","patch_set":18,"id":"1a430d35_5685aa57","line":262,"range":{"start_line":262,"start_character":28,"end_line":262,"end_character":34},"updated":"2017-02-08 11:26:14.000000000","message":"start","commit_id":"bd881ca2f1c169fd12ac863236631ae6cba2c195"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"30b95ead4e3a9446d0195582a49575b6a8a6c207","unresolved":false,"context_lines":[{"line_number":259,"context_line":"            self.detailed(api, task_id\u003dtask_instance[\"uuid\"])"},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":262,"context_line":"            print(_(\"Cannot create a task on unfinished deployment: %s\") % e)"},{"line_number":263,"context_line":"            return 1"},{"line_number":264,"context_line":"        except (exceptions.InvalidTaskException, FailedToLoadTask) as e:"},{"line_number":265,"context_line":"            task_instance.set_failed(type(e).__name__,"}],"source_content_type":"text/x-python","patch_set":18,"id":"1a430d35_ed7a41bc","line":262,"range":{"start_line":262,"start_character":28,"end_line":262,"end_character":34},"in_reply_to":"1a430d35_5685aa57","updated":"2017-02-08 13:05:11.000000000","message":"ok, i will fix it.","commit_id":"bd881ca2f1c169fd12ac863236631ae6cba2c195"}],"rally/cli/commands/verify.py":[{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"bef184f885757162da733bbeda418eb92a136e8f","unresolved":false,"context_lines":[{"line_number":434,"context_line":"              pattern\u003dNone, concur\u003d0, load_list\u003dNone, skip_list\u003dNone,"},{"line_number":435,"context_line":"              xfail_list\u003dNone, detailed\u003dFalse, do_use\u003dTrue):"},{"line_number":436,"context_line":"        \"\"\"Start a verification (run verifier tests).\"\"\""},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"        if pattern and load_list:"},{"line_number":439,"context_line":"            print(_(\"Arguments \u0027--pattern\u0027 and \u0027--load-list\u0027 cannot be used \""},{"line_number":440,"context_line":"                    \"simultaneously. You can use only one of the mentioned \""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_ff6b95ee","line":437,"updated":"2017-02-01 08:50:26.000000000","message":"Please, remove this line.","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"d615ec46df68093331c7db59e7f10a391294a14e","unresolved":false,"context_lines":[{"line_number":434,"context_line":"              pattern\u003dNone, concur\u003d0, load_list\u003dNone, skip_list\u003dNone,"},{"line_number":435,"context_line":"              xfail_list\u003dNone, detailed\u003dFalse, do_use\u003dTrue):"},{"line_number":436,"context_line":"        \"\"\"Start a verification (run verifier tests).\"\"\""},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"        if pattern and load_list:"},{"line_number":439,"context_line":"            print(_(\"Arguments \u0027--pattern\u0027 and \u0027--load-list\u0027 cannot be used \""},{"line_number":440,"context_line":"                    \"simultaneously. You can use only one of the mentioned \""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_821f83b6","line":437,"in_reply_to":"3a461143_ff6b95ee","updated":"2017-02-01 17:49:35.000000000","message":"Done","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"bef184f885757162da733bbeda418eb92a136e8f","unresolved":false,"context_lines":[{"line_number":441,"context_line":"                    \"arguments.\"))"},{"line_number":442,"context_line":"            return 1"},{"line_number":443,"context_line":""},{"line_number":444,"context_line":"        try:"},{"line_number":445,"context_line":"            self._deployment_status_check(api, deployment)"},{"line_number":446,"context_line":"        except exceptions.DeploymentErrorStatus:"},{"line_number":447,"context_line":"            return 1"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        def parse(filename):"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_5f7589c8","line":446,"range":{"start_line":444,"start_character":0,"end_line":446,"end_character":48},"updated":"2017-02-01 08:50:26.000000000","message":"See comments in the previous file.","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"d615ec46df68093331c7db59e7f10a391294a14e","unresolved":false,"context_lines":[{"line_number":441,"context_line":"                    \"arguments.\"))"},{"line_number":442,"context_line":"            return 1"},{"line_number":443,"context_line":""},{"line_number":444,"context_line":"        try:"},{"line_number":445,"context_line":"            self._deployment_status_check(api, deployment)"},{"line_number":446,"context_line":"        except exceptions.DeploymentErrorStatus:"},{"line_number":447,"context_line":"            return 1"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        def parse(filename):"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_e27cc7ed","line":446,"range":{"start_line":444,"start_character":0,"end_line":446,"end_character":48},"in_reply_to":"3a461143_5f7589c8","updated":"2017-02-01 17:49:35.000000000","message":"I saw it.Thanks:)","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"bef184f885757162da733bbeda418eb92a136e8f","unresolved":false,"context_lines":[{"line_number":746,"context_line":"        else:"},{"line_number":747,"context_line":"            print(_(\"Verification UUID: %s.\") % verification.uuid)"},{"line_number":748,"context_line":""},{"line_number":749,"context_line":"    def _deployment_status_check(self, api, deployment):"},{"line_number":750,"context_line":"        \"\"\"Check deployment status before task.start()."},{"line_number":751,"context_line":""},{"line_number":752,"context_line":"        :param deployment: The UUID or Name of deployment"},{"line_number":753,"context_line":"        \"\"\""},{"line_number":754,"context_line":"        deployment_instance \u003d api.deployment.get(deployment)"},{"line_number":755,"context_line":"        deployment_status \u003d deployment_instance[\"status\"]"},{"line_number":756,"context_line":"        print(_(\"Deployment status is OK\"))"},{"line_number":757,"context_line":""},{"line_number":758,"context_line":"        if deployment_status !\u003d consts.DeployStatus.DEPLOY_FINISHED:"},{"line_number":759,"context_line":"            raise exceptions.DeploymentErrorStatus("},{"line_number":760,"context_line":"                deployment\u003ddeployment,"},{"line_number":761,"context_line":"                status\u003ddeployment_status)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_df36d901","line":761,"range":{"start_line":749,"start_character":0,"end_line":761,"end_character":41},"updated":"2017-02-01 08:50:26.000000000","message":"ditto.","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":473,"context_line":"            verification, results \u003d api.verification.start("},{"line_number":474,"context_line":"                verifier_id, deployment, tags\u003dtags, **run_args)"},{"line_number":475,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":476,"context_line":"            if logging.is_debug():"},{"line_number":477,"context_line":"                LOG.exception(e)"},{"line_number":478,"context_line":"            print(e)"},{"line_number":479,"context_line":"            return 1"},{"line_number":480,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_1d5851fa","line":477,"range":{"start_line":476,"start_character":12,"end_line":477,"end_character":32},"updated":"2017-02-03 09:53:07.000000000","message":"remove this","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":473,"context_line":"            verification, results \u003d api.verification.start("},{"line_number":474,"context_line":"                verifier_id, deployment, tags\u003dtags, **run_args)"},{"line_number":475,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":476,"context_line":"            if logging.is_debug():"},{"line_number":477,"context_line":"                LOG.exception(e)"},{"line_number":478,"context_line":"            print(e)"},{"line_number":479,"context_line":"            return 1"},{"line_number":480,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_4f3131a2","line":477,"range":{"start_line":476,"start_character":12,"end_line":477,"end_character":32},"in_reply_to":"1a430d35_1d5851fa","updated":"2017-02-03 16:55:13.000000000","message":"Done","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"79619c4f5d81821a9aa342f2601b35d3e047065d","unresolved":false,"context_lines":[{"line_number":475,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":476,"context_line":"            if logging.is_debug():"},{"line_number":477,"context_line":"                LOG.exception(e)"},{"line_number":478,"context_line":"            print(e)"},{"line_number":479,"context_line":"            return 1"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        if detailed:"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_5dcad950","line":478,"range":{"start_line":478,"start_character":12,"end_line":478,"end_character":20},"updated":"2017-02-03 09:53:07.000000000","message":"It should be:\n \n   print(_(\"Cannot create a verefication on unfinished deployment: %s\") % e)","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"54cc0edc420dc5546e7db3273164761d7384bc1b","unresolved":false,"context_lines":[{"line_number":475,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":476,"context_line":"            if logging.is_debug():"},{"line_number":477,"context_line":"                LOG.exception(e)"},{"line_number":478,"context_line":"            print(e)"},{"line_number":479,"context_line":"            return 1"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        if detailed:"}],"source_content_type":"text/x-python","patch_set":9,"id":"1a430d35_6f26ed69","line":478,"range":{"start_line":478,"start_character":12,"end_line":478,"end_character":20},"in_reply_to":"1a430d35_5dcad950","updated":"2017-02-03 16:55:13.000000000","message":"Done","commit_id":"0fa70837ce7ccbf6d0ab191b2be9d5bcc4b26778"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"256a17f39e16d1341a20c90304119601659fca2c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2014: Mirantis Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_52d55641","side":"PARENT","line":1,"range":{"start_line":1,"start_character":0,"end_line":1,"end_character":2},"updated":"2017-02-03 17:18:01.000000000","message":"old mode 100644\nnew mode 100755\n\nPlease check your editor. Looks like it adds an executable flag to edited files.","commit_id":"378c8a6446be658c8fd6151d72b5adc5dfaafca3"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"2f7ee173d23c7df5a666e0ab3c30a90c6ccb1310","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2014: Mirantis Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_955fa871","side":"PARENT","line":1,"range":{"start_line":1,"start_character":0,"end_line":1,"end_character":2},"in_reply_to":"1a430d35_52d55641","updated":"2017-02-03 17:55:30.000000000","message":"Done","commit_id":"378c8a6446be658c8fd6151d72b5adc5dfaafca3"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"256a17f39e16d1341a20c90304119601659fca2c","unresolved":false,"context_lines":[{"line_number":32,"context_line":"from rally import exceptions"},{"line_number":33,"context_line":"from rally import plugins"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"LIST_VERIFIERS_HINT \u003d (\"HINT: You can list all verifiers, executing \""},{"line_number":39,"context_line":"                       \"command `rally verify list-verifiers`.\")"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_2fba25e2","line":36,"range":{"start_line":35,"start_character":0,"end_line":36,"end_character":33},"updated":"2017-02-03 17:18:01.000000000","message":"Let\u0027s remove this","commit_id":"c525c65a26d4466900811fb9bfed1863e84d7ece"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"2f7ee173d23c7df5a666e0ab3c30a90c6ccb1310","unresolved":false,"context_lines":[{"line_number":32,"context_line":"from rally import exceptions"},{"line_number":33,"context_line":"from rally import plugins"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"LIST_VERIFIERS_HINT \u003d (\"HINT: You can list all verifiers, executing \""},{"line_number":39,"context_line":"                       \"command `rally verify list-verifiers`.\")"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a430d35_55870061","line":36,"range":{"start_line":35,"start_character":0,"end_line":36,"end_character":33},"in_reply_to":"1a430d35_2fba25e2","updated":"2017-02-03 17:55:30.000000000","message":"Done","commit_id":"c525c65a26d4466900811fb9bfed1863e84d7ece"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"7f3d92355d596052a8c0bbb2d3b72fe858ea5b23","unresolved":false,"context_lines":[{"line_number":471,"context_line":"            verification, results \u003d api.verification.start("},{"line_number":472,"context_line":"                verifier_id, deployment, tags\u003dtags, **run_args)"},{"line_number":473,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":474,"context_line":"            print(_(\"Cannot create a verefication on \""},{"line_number":475,"context_line":"                    \"unfinished deployment: %s\") % e)"},{"line_number":476,"context_line":"            return 1"},{"line_number":477,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"1a430d35_73f4785a","line":474,"range":{"start_line":474,"start_character":28,"end_line":474,"end_character":34},"updated":"2017-02-08 11:26:14.000000000","message":"start","commit_id":"bd881ca2f1c169fd12ac863236631ae6cba2c195"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"30b95ead4e3a9446d0195582a49575b6a8a6c207","unresolved":false,"context_lines":[{"line_number":471,"context_line":"            verification, results \u003d api.verification.start("},{"line_number":472,"context_line":"                verifier_id, deployment, tags\u003dtags, **run_args)"},{"line_number":473,"context_line":"        except exceptions.DeploymentNotFinishedStatus as e:"},{"line_number":474,"context_line":"            print(_(\"Cannot create a verefication on \""},{"line_number":475,"context_line":"                    \"unfinished deployment: %s\") % e)"},{"line_number":476,"context_line":"            return 1"},{"line_number":477,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"1a430d35_8d50dd33","line":474,"range":{"start_line":474,"start_character":28,"end_line":474,"end_character":34},"in_reply_to":"1a430d35_73f4785a","updated":"2017-02-08 13:05:11.000000000","message":"ok, I would fix it.","commit_id":"bd881ca2f1c169fd12ac863236631ae6cba2c195"}],"rally/exceptions.py":[{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"bef184f885757162da733bbeda418eb92a136e8f","unresolved":false,"context_lines":[{"line_number":112,"context_line":"    msg_fmt \u003d _(\"Deployment name \u0027%(deployment)s\u0027 already registered.\")"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"class DeploymentErrorStatus(RallyException):"},{"line_number":116,"context_line":"    msg_fmt \u003d _(\"Deployment %(deployment)s\u0027s status is %(status)s.\")"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_31b2b14c","line":115,"range":{"start_line":115,"start_character":6,"end_line":115,"end_character":27},"updated":"2017-02-01 08:50:26.000000000","message":"This can mislead users. They will think that deployment has \u0027error\u0027 status, but the deployment has another status. We need something like this:\n\n\nclass DeploymentNotFinished(RallyException):\n    msg_fmt \u003d _(\"Deployment \u0027%(deployment)s\u0027 is in \u0027%(status)s\u0027 status.\")","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"d615ec46df68093331c7db59e7f10a391294a14e","unresolved":false,"context_lines":[{"line_number":112,"context_line":"    msg_fmt \u003d _(\"Deployment name \u0027%(deployment)s\u0027 already registered.\")"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"class DeploymentErrorStatus(RallyException):"},{"line_number":116,"context_line":"    msg_fmt \u003d _(\"Deployment %(deployment)s\u0027s status is %(status)s.\")"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a461143_0259d38e","line":115,"range":{"start_line":115,"start_character":6,"end_line":115,"end_character":27},"in_reply_to":"3a461143_31b2b14c","updated":"2017-02-01 17:49:35.000000000","message":"Copy that:)","commit_id":"8cff443488111f66587e7d6b42b2d621b417310d"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"cbc4c244d992b33bf4e97c08e5632f2a85417dca","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"class DeploymentNotFinishedStatus(RallyException):"},{"line_number":116,"context_line":"    msg_fmt \u003d _(\"Deployment %(deployment)s\u0027s status is %(status)s.\")"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"class DeploymentIsBusy(RallyException):"}],"source_content_type":"text/x-python","patch_set":18,"id":"1a430d35_9359e490","line":116,"updated":"2017-02-08 11:18:32.000000000","message":"Could you please use format\n\n\nDeployment \u0027\u003cname\u003e\u0027 (UUID\u003d\u003cuuid\u003e) is in \u0027\u003cstatus\u003e\u0027 status.\n\n?","commit_id":"bd881ca2f1c169fd12ac863236631ae6cba2c195"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"30b95ead4e3a9446d0195582a49575b6a8a6c207","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"class DeploymentNotFinishedStatus(RallyException):"},{"line_number":116,"context_line":"    msg_fmt \u003d _(\"Deployment %(deployment)s\u0027s status is %(status)s.\")"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"class DeploymentIsBusy(RallyException):"}],"source_content_type":"text/x-python","patch_set":18,"id":"1a430d35_08677be9","line":116,"in_reply_to":"1a430d35_9359e490","updated":"2017-02-08 13:05:11.000000000","message":"ok, I would add the info of uuid.","commit_id":"bd881ca2f1c169fd12ac863236631ae6cba2c195"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f02d3116bf0a4d39471e17bd76b1f6f765e7796b","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"class DeploymentNotFinishedStatus(RallyException):"},{"line_number":116,"context_line":"    msg_fmt \u003d _(\"Deployment \u0027%(name)s\u0027(UUID\u003d%(uuid)s) is in\""},{"line_number":117,"context_line":"                \" %(status)s status.\")"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_fd8f3872","line":116,"range":{"start_line":116,"start_character":37,"end_line":116,"end_character":39},"updated":"2017-02-08 20:19:08.000000000","message":"A space should be added.","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f02d3116bf0a4d39471e17bd76b1f6f765e7796b","unresolved":false,"context_lines":[{"line_number":114,"context_line":""},{"line_number":115,"context_line":"class DeploymentNotFinishedStatus(RallyException):"},{"line_number":116,"context_line":"    msg_fmt \u003d _(\"Deployment \u0027%(name)s\u0027(UUID\u003d%(uuid)s) is in\""},{"line_number":117,"context_line":"                \" %(status)s status.\")"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"class DeploymentIsBusy(RallyException):"}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_3dd38061","line":117,"range":{"start_line":117,"start_character":18,"end_line":117,"end_character":28},"updated":"2017-02-08 20:19:08.000000000","message":"Should be \u0027%(status)s\u0027.","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"}],"tests/unit/cli/commands/test_task.py":[{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"4a8cbedb69efddedc593b95f763deed1c9272da1","unresolved":false,"context_lines":[{"line_number":194,"context_line":"        exc \u003d exceptions.DeploymentNotFinishedStatus("},{"line_number":195,"context_line":"            deployment\u003ddeployment_id,"},{"line_number":196,"context_line":"            status\u003dconsts.DeployStatus.DEPLOY_INIT)"},{"line_number":197,"context_line":"        self.fake_api.task.start.side_effect \u003d exc"},{"line_number":198,"context_line":"        self.assertEqual(1, self.task.start(self.fake_api, task_path,"},{"line_number":199,"context_line":"                                            deployment\u003d\"any\", tag\u003d\"some_tag\"))"},{"line_number":200,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"1a430d35_1f3ef7d9","line":197,"range":{"start_line":197,"start_character":27,"end_line":197,"end_character":32},"updated":"2017-02-07 17:51:38.000000000","message":"task.create raises that exception, not task.start.","commit_id":"edee82a24080b0d3759a4974ccbc42c745fb4903"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"ce3e10d54597cc85d1b8164a587bc3e8842ee146","unresolved":false,"context_lines":[{"line_number":194,"context_line":"        exc \u003d exceptions.DeploymentNotFinishedStatus("},{"line_number":195,"context_line":"            deployment\u003ddeployment_id,"},{"line_number":196,"context_line":"            status\u003dconsts.DeployStatus.DEPLOY_INIT)"},{"line_number":197,"context_line":"        self.fake_api.task.start.side_effect \u003d exc"},{"line_number":198,"context_line":"        self.assertEqual(1, self.task.start(self.fake_api, task_path,"},{"line_number":199,"context_line":"                                            deployment\u003d\"any\", tag\u003d\"some_tag\"))"},{"line_number":200,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"1a430d35_12126109","line":197,"range":{"start_line":197,"start_character":27,"end_line":197,"end_character":32},"in_reply_to":"1a430d35_1f3ef7d9","updated":"2017-02-08 01:43:39.000000000","message":"Done","commit_id":"edee82a24080b0d3759a4974ccbc42c745fb4903"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f02d3116bf0a4d39471e17bd76b1f6f765e7796b","unresolved":false,"context_lines":[{"line_number":184,"context_line":"    @mock.patch(\"rally.cli.commands.task.TaskCommands.detailed\")"},{"line_number":185,"context_line":"    @mock.patch(\"rally.cli.commands.task.TaskCommands._load_task\","},{"line_number":186,"context_line":"                return_value\u003d\"some_config\")"},{"line_number":187,"context_line":"    def test_start_deployment_check_exception("},{"line_number":188,"context_line":"            self, mock__load_task, mock_detailed, mock_os_path_isfile):"},{"line_number":189,"context_line":"        deployment_id \u003d \"e0617de9-77d1-4875-9b49-9d5789e29f20\""},{"line_number":190,"context_line":"        deployment_name \u003d \"xxx_name\""}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_02aae518","line":187,"range":{"start_line":187,"start_character":8,"end_line":187,"end_character":45},"updated":"2017-02-08 20:19:08.000000000","message":"I think we need a more accurate name, for example, \n\n\ntest_start_on_unfinished_deployment","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"fca0a9214f62c2eef501135ce7895895c2728774","unresolved":false,"context_lines":[{"line_number":184,"context_line":"    @mock.patch(\"rally.cli.commands.task.TaskCommands.detailed\")"},{"line_number":185,"context_line":"    @mock.patch(\"rally.cli.commands.task.TaskCommands._load_task\","},{"line_number":186,"context_line":"                return_value\u003d\"some_config\")"},{"line_number":187,"context_line":"    def test_start_deployment_check_exception("},{"line_number":188,"context_line":"            self, mock__load_task, mock_detailed, mock_os_path_isfile):"},{"line_number":189,"context_line":"        deployment_id \u003d \"e0617de9-77d1-4875-9b49-9d5789e29f20\""},{"line_number":190,"context_line":"        deployment_name \u003d \"xxx_name\""}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_8ccd1f68","line":187,"range":{"start_line":187,"start_character":8,"end_line":187,"end_character":45},"in_reply_to":"1a430d35_02aae518","updated":"2017-02-09 01:51:36.000000000","message":"Done","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"}],"tests/unit/cli/commands/test_verify.py":[{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f02d3116bf0a4d39471e17bd76b1f6f765e7796b","unresolved":false,"context_lines":[{"line_number":328,"context_line":""},{"line_number":329,"context_line":"    @mock.patch(\"rally.cli.commands.verify.os.path.exists\")"},{"line_number":330,"context_line":"    @mock.patch(\"rally.cli.commands.verify.fileutils.update_globals_file\")"},{"line_number":331,"context_line":"    def test_start_deployment_check_exception(self, mock_update_globals_file,"},{"line_number":332,"context_line":"                                              mock_exists):"},{"line_number":333,"context_line":"        deployment_id \u003d \"d_id\""},{"line_number":334,"context_line":"        deployment_name \u003d \"xxx_name\""}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_222a8190","line":331,"range":{"start_line":331,"start_character":8,"end_line":331,"end_character":45},"updated":"2017-02-08 20:19:08.000000000","message":"ditto","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"fca0a9214f62c2eef501135ce7895895c2728774","unresolved":false,"context_lines":[{"line_number":328,"context_line":""},{"line_number":329,"context_line":"    @mock.patch(\"rally.cli.commands.verify.os.path.exists\")"},{"line_number":330,"context_line":"    @mock.patch(\"rally.cli.commands.verify.fileutils.update_globals_file\")"},{"line_number":331,"context_line":"    def test_start_deployment_check_exception(self, mock_update_globals_file,"},{"line_number":332,"context_line":"                                              mock_exists):"},{"line_number":333,"context_line":"        deployment_id \u003d \"d_id\""},{"line_number":334,"context_line":"        deployment_name \u003d \"xxx_name\""}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_ecbea3ac","line":331,"range":{"start_line":331,"start_character":8,"end_line":331,"end_character":45},"in_reply_to":"1a430d35_222a8190","updated":"2017-02-09 01:51:36.000000000","message":"Done","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"}],"tests/unit/test_api.py":[{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f02d3116bf0a4d39471e17bd76b1f6f765e7796b","unresolved":false,"context_lines":[{"line_number":168,"context_line":"                    \"name\": \"xxx_name\","},{"line_number":169,"context_line":"                    \"uuid\": \"u_id\","},{"line_number":170,"context_line":"                    \"status\": consts.DeployStatus.DEPLOY_INIT})"},{"line_number":171,"context_line":"    def test_create_deployment_check_exception(self, mock_deployment_get):"},{"line_number":172,"context_line":"        deployment_id \u003d mock_deployment_get.return_value[\"uuid\"]"},{"line_number":173,"context_line":"        tag \u003d \"a\""},{"line_number":174,"context_line":"        self.assertRaises(exceptions.DeploymentNotFinishedStatus,"}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_a214b14c","line":171,"range":{"start_line":171,"start_character":8,"end_line":171,"end_character":46},"updated":"2017-02-08 20:19:08.000000000","message":"ditto","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"fca0a9214f62c2eef501135ce7895895c2728774","unresolved":false,"context_lines":[{"line_number":168,"context_line":"                    \"name\": \"xxx_name\","},{"line_number":169,"context_line":"                    \"uuid\": \"u_id\","},{"line_number":170,"context_line":"                    \"status\": consts.DeployStatus.DEPLOY_INIT})"},{"line_number":171,"context_line":"    def test_create_deployment_check_exception(self, mock_deployment_get):"},{"line_number":172,"context_line":"        deployment_id \u003d mock_deployment_get.return_value[\"uuid\"]"},{"line_number":173,"context_line":"        tag \u003d \"a\""},{"line_number":174,"context_line":"        self.assertRaises(exceptions.DeploymentNotFinishedStatus,"}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_0ce04fcc","line":171,"range":{"start_line":171,"start_character":8,"end_line":171,"end_character":46},"in_reply_to":"1a430d35_a214b14c","updated":"2017-02-09 01:51:36.000000000","message":"Done","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"f02d3116bf0a4d39471e17bd76b1f6f765e7796b","unresolved":false,"context_lines":[{"line_number":1333,"context_line":"                    name\u003d\"xxx_name\","},{"line_number":1334,"context_line":"                    uuid\u003d\"deployment_uuid\","},{"line_number":1335,"context_line":"                    status\u003dconsts.DeployStatus.DEPLOY_INIT))"},{"line_number":1336,"context_line":"    def test_start_deployment_check_exception(self, mock_deployment_get):"},{"line_number":1337,"context_line":"        verifier_id \u003d \"v_id\""},{"line_number":1338,"context_line":"        deployment_id \u003d mock_deployment_get.return_value[\"uuid\"]"},{"line_number":1339,"context_line":"        tags \u003d [\"foo\", \"bar\"]"}],"source_content_type":"text/x-python","patch_set":19,"id":"1a430d35_fd4ad853","line":1336,"range":{"start_line":1336,"start_character":8,"end_line":1336,"end_character":45},"updated":"2017-02-08 20:19:08.000000000","message":"ditto","commit_id":"73c266dffa318cd49634dc9b504a7a8a049ad954"}]}
