)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Depends-On: Ib0ee3d29be69478f0a29765eb4cf688d14c309c3"},{"line_number":16,"context_line":"Change-Id: If5ca5b54098fb03116c11c33f08683109ea4928d"},{"line_number":17,"context_line":"Implements: https://blueprints.launchpad.net/trove/+spec/test-heat-based-instance-workflow"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAAUH%2F%2FZAs%3D","line":17,"updated":"2014-01-14 09:50:38.000000000","message":"Implements: blueprint xxxx","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"change_message_id":"f5381b04d06ff57c07149dd852a0e6e8ac13efaa","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Tests for heat based instance workflow"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Reasons: Currently tests are written for instance creation through nova-api"},{"line_number":10,"context_line":"Changes: Integration \u0026 unit test cases for heat based instance workflow"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Author: Shivam Shukla \u003cshivam.shukla@globallogic.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":13,"id":"AAAAUH%2F9uKA%3D","line":9,"updated":"2014-02-04 17:20:53.000000000","message":"U dont need the word Reasons: if u have one reason. just write that in a sentence.","commit_id":"86b9af816f323771369b2ff52e2e89de46ddd918"},{"author":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"change_message_id":"f5381b04d06ff57c07149dd852a0e6e8ac13efaa","unresolved":false,"context_lines":[{"line_number":12,"context_line":"Author: Shivam Shukla \u003cshivam.shukla@globallogic.com\u003e"},{"line_number":13,"context_line":"Co-Authored-By: Shalini Khandelwal \u003cshalini.khandelwal@globallogic.com\u003e"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Depends-On: Ib0ee3d29be69478f0a29765eb4cf688d14c309c3"},{"line_number":16,"context_line":"Change-Id: If5ca5b54098fb03116c11c33f08683109ea4928d"},{"line_number":17,"context_line":"Implements: blueprint test-heat-based-instance-workflow"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":13,"id":"AAAAUH%2F9uKU%3D","line":15,"updated":"2014-02-04 17:20:53.000000000","message":"Plz remove this line. This is not needed, ever :)","commit_id":"86b9af816f323771369b2ff52e2e89de46ddd918"}],"trove/taskmanager/models.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":340,"context_line":"                                   datastore_manager,"},{"line_number":341,"context_line":"                                   volume_size, availability_zone):"},{"line_number":342,"context_line":"        LOG.debug(_(\"begin _create_server_volume_heat for id: %s\") % self.id)"},{"line_number":343,"context_line":"        client \u003d remote.create_heat_client(self.context)"},{"line_number":344,"context_line":"        novaclient \u003d remote.create_nova_client(self.context)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"        template_obj \u003d template.load_heat_template(datastore_manager)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FZAA%3D","line":343,"updated":"2014-01-14 09:50:38.000000000","message":"this is not required until \"import only modules\" flake8 rule is enabled, so, there\u0027s no reason to change this lines","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":341,"context_line":"                                   volume_size, availability_zone):"},{"line_number":342,"context_line":"        LOG.debug(_(\"begin _create_server_volume_heat for id: %s\") % self.id)"},{"line_number":343,"context_line":"        client \u003d remote.create_heat_client(self.context)"},{"line_number":344,"context_line":"        novaclient \u003d remote.create_nova_client(self.context)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"        template_obj \u003d template.load_heat_template(datastore_manager)"},{"line_number":347,"context_line":"        heat_template_unicode \u003d template_obj.render()"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY%2F8%3D","line":344,"updated":"2014-01-14 09:50:38.000000000","message":"this is not required until \"import only modules\" flake8 rule is enabled, so, there\u0027s no reason to change this lines","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":375,"context_line":"        server \u003d novaclient.servers.get(resource.physical_resource_id)"},{"line_number":376,"context_line":""},{"line_number":377,"context_line":"        if CONF.trove_volume_support:"},{"line_number":378,"context_line":"            cinderclient \u003d remote.create_cinder_client(self.context)"},{"line_number":379,"context_line":"            resource \u003d client.resources.get(stack.id, \u0027DataVolume\u0027)"},{"line_number":380,"context_line":"            volume \u003d cinderclient.volumes.get(resource.physical_resource_id)"},{"line_number":381,"context_line":"            volume_info \u003d self._build_volume(volume)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY%2F4%3D","line":378,"updated":"2014-01-14 09:50:38.000000000","message":"this is not required until \"import only modules\" flake8 rule is enabled, so, there\u0027s no reason to change this lines","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"}],"trove/tests/api/instances.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":64,"context_line":"from trove.common import utils"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"FAKE \u003d test_config.values[\u0027fake_mode\u0027]"},{"line_number":67,"context_line":"TROVE_CONF_FILE \u003d \"/etc/trove/trove-taskmanager.conf\""},{"line_number":68,"context_line":"parser \u003d RawConfigParser()"},{"line_number":69,"context_line":"parser1 \u003d RawConfigParser()"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY%2BU%3D","line":67,"updated":"2014-01-14 09:50:38.000000000","message":"this value should be retrieved from system env, it should be\n\"%s/%s\" % (os.getenv(\"TROVE_CONF_DIR\"), \"trove-taskmanager.conf\"","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":66,"context_line":"FAKE \u003d test_config.values[\u0027fake_mode\u0027]"},{"line_number":67,"context_line":"TROVE_CONF_FILE \u003d \"/etc/trove/trove-taskmanager.conf\""},{"line_number":68,"context_line":"parser \u003d RawConfigParser()"},{"line_number":69,"context_line":"parser1 \u003d RawConfigParser()"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"class InstanceTestInfo(object):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY9w%3D","line":69,"updated":"2014-01-14 09:50:38.000000000","message":"they are the same, no need to keep two instances of same entity.","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":1361,"context_line":"    assert_true(version_pattern.match(actual_version), msg)"},{"line_number":1362,"context_line":""},{"line_number":1363,"context_line":""},{"line_number":1364,"context_line":"class InstanceTests(object):"},{"line_number":1365,"context_line":"    def test_create(self):"},{"line_number":1366,"context_line":"        databases \u003d []"},{"line_number":1367,"context_line":"        databases.append({\"name\": \"firstdb\", \"character_set\": \"latin2\","}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY%2Fs%3D","line":1364,"updated":"2014-01-14 09:50:38.000000000","message":"@test","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"fbde45bea981b4a740d3abb7bbd981f5b948f904","unresolved":false,"context_lines":[{"line_number":1426,"context_line":"            if VOLUME_SUPPORT:"},{"line_number":1427,"context_line":"                check.volume()"},{"line_number":1428,"context_line":""},{"line_number":1429,"context_line":"    @time_out(60 * 32)"},{"line_number":1430,"context_line":"    def test_instance_created(self):"},{"line_number":1431,"context_line":"        # This version just checks the REST API status."},{"line_number":1432,"context_line":"        def result_is_active():"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY6g%3D","line":1429,"updated":"2014-01-14 09:58:40.000000000","message":"@test","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"fbde45bea981b4a740d3abb7bbd981f5b948f904","unresolved":false,"context_lines":[{"line_number":1452,"context_line":"        report.log(\"Add TESTS_DO_NOT_DELETE_INSTANCE\u003dTrue to avoid deleting \""},{"line_number":1453,"context_line":"                   \"the instance at the end of the tests.\")"},{"line_number":1454,"context_line":""},{"line_number":1455,"context_line":"    @time_out(3 * 60)"},{"line_number":1456,"context_line":"    def test_delete(self):"},{"line_number":1457,"context_line":"        if do_not_delete_instance():"},{"line_number":1458,"context_line":"            CONFIG.get_report().log(\"TESTS_DO_NOT_DELETE_INSTANCE\u003dTrue was \""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY6w%3D","line":1455,"updated":"2014-01-14 09:58:40.000000000","message":"@test","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":1463,"context_line":"            raise SkipTest(\"Instance was never created, skipping test...\")"},{"line_number":1464,"context_line":"        # Update the report so the logs inside the instance will be saved."},{"line_number":1465,"context_line":"        CONFIG.get_report().update()"},{"line_number":1466,"context_line":"        dbaas.instances.delete(instance_info.id)"},{"line_number":1467,"context_line":""},{"line_number":1468,"context_line":"        attempts \u003d 0"},{"line_number":1469,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY%2Fg%3D","line":1466,"updated":"2014-01-14 09:50:38.000000000","message":"please examine responces - code and body","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":9122,"name":"Shalini khandelwal","email":"shalini.khandelwal@globallogic.com","username":"shalini"},"change_message_id":"557c09fa3de844ebd8e6723299eb54c9678ce72f","unresolved":false,"context_lines":[{"line_number":1463,"context_line":"            raise SkipTest(\"Instance was never created, skipping test...\")"},{"line_number":1464,"context_line":"        # Update the report so the logs inside the instance will be saved."},{"line_number":1465,"context_line":"        CONFIG.get_report().update()"},{"line_number":1466,"context_line":"        dbaas.instances.delete(instance_info.id)"},{"line_number":1467,"context_line":""},{"line_number":1468,"context_line":"        attempts \u003d 0"},{"line_number":1469,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FSw0%3D","line":1466,"in_reply_to":"AAAAUH%2F%2FY%2Fg%3D","updated":"2014-01-15 11:56:31.000000000","message":"Delete instance is verified by examining the final SHUTDOWN status, what is need to examine delete response. Already written code is doing it in the same way.","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"b038fd18b1794466da814171d434ca6f5d009938","unresolved":false,"context_lines":[{"line_number":1489,"context_line":"    \"\"\"Test to create a Database Instance without trove_volume_support"},{"line_number":1490,"context_line":"       Instance is created using heat"},{"line_number":1491,"context_line":""},{"line_number":1492,"context_line":"    \"\"\""},{"line_number":1493,"context_line":"    @before_class"},{"line_number":1494,"context_line":"    def setUp(self):"},{"line_number":1495,"context_line":"        # skip the test if config file is not found"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY7c%3D","line":1492,"updated":"2014-01-14 09:57:45.000000000","message":"\"\"\"\n\nTest to create a Database Instance without trove_volume_support Instance is created using heat.\n\n\"\"\"","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"b038fd18b1794466da814171d434ca6f5d009938","unresolved":false,"context_lines":[{"line_number":1528,"context_line":"    \"\"\"Test to create a Database Instance with trove_volume_support"},{"line_number":1529,"context_line":"       Instance is created using heat"},{"line_number":1530,"context_line":""},{"line_number":1531,"context_line":"    \"\"\""},{"line_number":1532,"context_line":""},{"line_number":1533,"context_line":"    @before_class"},{"line_number":1534,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY7k%3D","line":1531,"updated":"2014-01-14 09:57:45.000000000","message":"\"\"\"\n\nTest to create a Database Instance with trove_volume_support Instance is created using heat.\n\n\"\"\"","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":1546,"context_line":"        os.system(\"screen -S stack -X screen -t tr-tmgr bash\")"},{"line_number":1547,"context_line":"        os.system(\"screen -S stack -p tr-tmgr -X stuff \\"},{"line_number":1548,"context_line":"                  \u0027cd /opt/stack/trove; bin/trove-taskmanager \\"},{"line_number":1549,"context_line":"                  --config-file\u003d/etc/trove/trove-taskmanager.conf --debug\\n\u0027\")"},{"line_number":1550,"context_line":""},{"line_number":1551,"context_line":"    @test(depends_on\u003d[setUp])"},{"line_number":1552,"context_line":"    def test_with_volume_support(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY%2Bw%3D","line":1549,"updated":"2014-01-14 09:50:38.000000000","message":"Lines #1508-1515 and #1543-1549 are the same, please make method for them and re-use it.","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"828d2f4e50444608b29c352fdff9d5b788b8f9d4","unresolved":false,"context_lines":[{"line_number":1462,"context_line":"            raise SkipTest(\"Instance was never created, skipping test...\")"},{"line_number":1463,"context_line":"        # Update the report so the logs inside the instance will be saved."},{"line_number":1464,"context_line":"        CONFIG.get_report().update()"},{"line_number":1465,"context_line":"        dbaas.instances.delete(instance_info.id)"},{"line_number":1466,"context_line":""},{"line_number":1467,"context_line":"        attempts \u003d 0"},{"line_number":1468,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2FSek%3D","line":1465,"updated":"2014-01-15 12:56:00.000000000","message":"By checking SHUTDOWN state you examine flow of instance_delete, but not the ReST service part.\nPlease add checks/asserts for HTTP response code and body.","commit_id":"d7f2b61c024056719a1767ce6b64eeb4980f9e93"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"4d767d27b88c72833b79844f8df9ba34e5854f48","unresolved":false,"context_lines":[{"line_number":1500,"context_line":""},{"line_number":1501,"context_line":"@test(depends_on_classes\u003d[InstanceSetup],"},{"line_number":1502,"context_line":"      groups\u003d[GROUP_HEAT],"},{"line_number":1503,"context_line":"      runs_after_groups\u003d[tests.PRE_INSTANCES, \u0027dbaas_quotas\u0027, GROUP_STOP])"},{"line_number":1504,"context_line":"class CreateInstanceWithHeatWithoutVolumesupport(InstanceActions):"},{"line_number":1505,"context_line":"    \"\"\""},{"line_number":1506,"context_line":"    Test to create a Database Instance with heat, trove_volume_support \u003d False"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2FGvg%3D","line":1503,"updated":"2014-01-17 11:56:26.000000000","message":"enabled\u003dCONFIG.values.get(\"use_heat\")","commit_id":"d7f2b61c024056719a1767ce6b64eeb4980f9e93"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"4d767d27b88c72833b79844f8df9ba34e5854f48","unresolved":false,"context_lines":[{"line_number":1527,"context_line":"@test(depends_on_classes\u003d[InstanceSetup,"},{"line_number":1528,"context_line":"                          CreateInstanceWithHeatWithoutVolumesupport],"},{"line_number":1529,"context_line":"      groups\u003d[GROUP_HEAT],"},{"line_number":1530,"context_line":"      runs_after_groups\u003d[tests.PRE_INSTANCES, \u0027dbaas_quotas\u0027])"},{"line_number":1531,"context_line":"class CreateInstanceWithHeatWithVolumesupport(InstanceActions):"},{"line_number":1532,"context_line":"    \"\"\""},{"line_number":1533,"context_line":"    Test to create a Database Instance with heat, trove_volume_support \u003d True"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2FGvc%3D","line":1530,"updated":"2014-01-17 11:56:26.000000000","message":"enabled\u003dCONFIG.values.get(\"use_heat\")","commit_id":"d7f2b61c024056719a1767ce6b64eeb4980f9e93"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"4d767d27b88c72833b79844f8df9ba34e5854f48","unresolved":false,"context_lines":[{"line_number":1545,"context_line":"    def test_with_volume_support(self):"},{"line_number":1546,"context_line":"        self.create_instance()"},{"line_number":1547,"context_line":"        self.check_instance_created()"},{"line_number":1548,"context_line":"        self.delete_instance()"},{"line_number":1549,"context_line":""},{"line_number":1550,"context_line":"    @after_class(always_run\u003dTrue)"},{"line_number":1551,"context_line":"    def tearDown(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2FGv0%3D","line":1548,"updated":"2014-01-17 11:56:26.000000000","message":"delete method is broken with heat provisioning \nsince delete method doesn\u0027t uses heat, only native service clients, we should not implement tests for delete method.\nhttps://bugs.launchpad.net/heat/+bug/1268416","commit_id":"d7f2b61c024056719a1767ce6b64eeb4980f9e93"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"34f6d24b68beeeeb0c60834350d2c4e44afa9860","unresolved":false,"context_lines":[{"line_number":1521,"context_line":"    def test_without_volume_support(self):"},{"line_number":1522,"context_line":"        self.create_instance()"},{"line_number":1523,"context_line":"        self.check_instance_created()"},{"line_number":1524,"context_line":"        self.delete_instance()"},{"line_number":1525,"context_line":""},{"line_number":1526,"context_line":""},{"line_number":1527,"context_line":"@test(depends_on_classes\u003d[InstanceSetup,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2B9u8%3D","line":1524,"updated":"2014-01-20 10:42:50.000000000","message":"delete test causes empty ghost stack error","commit_id":"e650ad1cbb556ccfc20723115e78dbfcfa60a0f3"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"34f6d24b68beeeeb0c60834350d2c4e44afa9860","unresolved":false,"context_lines":[{"line_number":1545,"context_line":"    def test_with_volume_support(self):"},{"line_number":1546,"context_line":"        self.create_instance()"},{"line_number":1547,"context_line":"        self.check_instance_created()"},{"line_number":1548,"context_line":"        self.delete_instance()"},{"line_number":1549,"context_line":""},{"line_number":1550,"context_line":"    @after_class(always_run\u003dTrue)"},{"line_number":1551,"context_line":"    def tearDown(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2B9u4%3D","line":1548,"updated":"2014-01-20 10:42:50.000000000","message":"delete test causes empty ghost stack error","commit_id":"e650ad1cbb556ccfc20723115e78dbfcfa60a0f3"},{"author":{"_account_id":1925,"name":"Vipul Sabhaya","email":"vipuls@gmail.com","username":"vipuls"},"change_message_id":"c2fa39856f66b1f73188ca8b52bea1ddf10b0993","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"FAKE \u003d test_config.values[\u0027fake_mode\u0027]"},{"line_number":72,"context_line":"TROVE_CONF_FILE \u003d \"%s/%s\" % (CONFIG.values.get(\"trove_conf_dir\"),"},{"line_number":73,"context_line":"                  \"/trove-taskmanager.conf\")"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"class InstanceTestInfo(object):"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2Fyc8%3D","line":73,"updated":"2014-03-04 05:02:45.000000000","message":"Why do the tests depend on task manager.conf?  We shouldn\u0027t introduce service specific dependencies on tests.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"52b349fb53eb65cfb3af40ca529d202514d16298","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"FAKE \u003d test_config.values[\u0027fake_mode\u0027]"},{"line_number":72,"context_line":"TROVE_CONF_FILE \u003d \"%s/%s\" % (CONFIG.values.get(\"trove_conf_dir\"),"},{"line_number":73,"context_line":"                  \"/trove-taskmanager.conf\")"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"class InstanceTestInfo(object):"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FwvA%3D","line":73,"in_reply_to":"AAAAVn%2F%2Fyc8%3D","updated":"2014-03-04 08:53:36.000000000","message":"+1 to vipul","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":9122,"name":"Shalini khandelwal","email":"shalini.khandelwal@globallogic.com","username":"shalini"},"change_message_id":"34b45ee3d3b39b8a6151d1904c8319fb84f599ef","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"FAKE \u003d test_config.values[\u0027fake_mode\u0027]"},{"line_number":72,"context_line":"TROVE_CONF_FILE \u003d \"%s/%s\" % (CONFIG.values.get(\"trove_conf_dir\"),"},{"line_number":73,"context_line":"                  \"/trove-taskmanager.conf\")"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"class InstanceTestInfo(object):"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FyTA%3D","line":73,"in_reply_to":"AAAAVn%2F%2Fyc8%3D","updated":"2014-03-04 09:55:59.000000000","message":"To introduce tests for heat we need to change config values (user_heat)\nFor that trove-taskmanager.conf is required.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"52b349fb53eb65cfb3af40ca529d202514d16298","unresolved":false,"context_lines":[{"line_number":1441,"context_line":""},{"line_number":1442,"context_line":""},{"line_number":1443,"context_line":"class InstanceActions(object):"},{"line_number":1444,"context_line":"    def create_instance(self):"},{"line_number":1445,"context_line":"        databases \u003d []"},{"line_number":1446,"context_line":"        databases.append({\"name\": \"firstdb\", \"character_set\": \"latin2\","},{"line_number":1447,"context_line":"                          \"collate\": \"latin2_general_ci\"})"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2Fwv0%3D","line":1444,"updated":"2014-03-04 08:53:36.000000000","message":"this is a copy of the above create method. You could reuse the same method because i do not see anything thats different in much of these actions. Everything should be exactly the same.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":9122,"name":"Shalini khandelwal","email":"shalini.khandelwal@globallogic.com","username":"shalini"},"change_message_id":"34b45ee3d3b39b8a6151d1904c8319fb84f599ef","unresolved":false,"context_lines":[{"line_number":1441,"context_line":""},{"line_number":1442,"context_line":""},{"line_number":1443,"context_line":"class InstanceActions(object):"},{"line_number":1444,"context_line":"    def create_instance(self):"},{"line_number":1445,"context_line":"        databases \u003d []"},{"line_number":1446,"context_line":"        databases.append({\"name\": \"firstdb\", \"character_set\": \"latin2\","},{"line_number":1447,"context_line":"                          \"collate\": \"latin2_general_ci\"})"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FwSs%3D","line":1444,"in_reply_to":"AAAAVn%2F%2Fwv0%3D","updated":"2014-03-04 09:55:59.000000000","message":"If we use same code it will disturb the proboscis flow.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":1925,"name":"Vipul Sabhaya","email":"vipuls@gmail.com","username":"vipuls"},"change_message_id":"c2fa39856f66b1f73188ca8b52bea1ddf10b0993","unresolved":false,"context_lines":[{"line_number":1537,"context_line":"            CONFIG.get_report().log(\"TESTS_DO_NOT_DELETE_INSTANCE\u003dTrue was \""},{"line_number":1538,"context_line":"                                    \"specified, skipping delete...\")"},{"line_number":1539,"context_line":"            raise SkipTest(\"TESTS_DO_NOT_DELETE_INSTANCE was specified.\")"},{"line_number":1540,"context_line":"        global dbaas"},{"line_number":1541,"context_line":"        if not hasattr(instance_info, \"initial_result\"):"},{"line_number":1542,"context_line":"            raise SkipTest(\"Instance was never created, skipping test...\")"},{"line_number":1543,"context_line":"        # Update the report so the logs inside the instance will be saved."}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FyYU%3D","line":1540,"updated":"2014-03-04 05:02:45.000000000","message":"What\u0027s the purpose of declaring this global?  I don\u0027t see it used after this method is called.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":9122,"name":"Shalini khandelwal","email":"shalini.khandelwal@globallogic.com","username":"shalini"},"change_message_id":"34b45ee3d3b39b8a6151d1904c8319fb84f599ef","unresolved":false,"context_lines":[{"line_number":1537,"context_line":"            CONFIG.get_report().log(\"TESTS_DO_NOT_DELETE_INSTANCE\u003dTrue was \""},{"line_number":1538,"context_line":"                                    \"specified, skipping delete...\")"},{"line_number":1539,"context_line":"            raise SkipTest(\"TESTS_DO_NOT_DELETE_INSTANCE was specified.\")"},{"line_number":1540,"context_line":"        global dbaas"},{"line_number":1541,"context_line":"        if not hasattr(instance_info, \"initial_result\"):"},{"line_number":1542,"context_line":"            raise SkipTest(\"Instance was never created, skipping test...\")"},{"line_number":1543,"context_line":"        # Update the report so the logs inside the instance will be saved."}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FwPs%3D","line":1540,"in_reply_to":"AAAAVn%2F%2FyYU%3D","updated":"2014-03-04 09:55:59.000000000","message":"this can be removed","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"52b349fb53eb65cfb3af40ca529d202514d16298","unresolved":false,"context_lines":[{"line_number":1577,"context_line":"        os.system(\"screen -S stack -p tr-tmgr -X stuff \\"},{"line_number":1578,"context_line":"                  \u0027cd /opt/stack/trove; bin/trove-taskmanager \\"},{"line_number":1579,"context_line":"                  --config-file\u003d/etc/trove/trove-taskmanager.conf --debug \\"},{"line_number":1580,"context_line":"                  2\u003e\u00261\\n\u0027\")"},{"line_number":1581,"context_line":""},{"line_number":1582,"context_line":""},{"line_number":1583,"context_line":"@test(depends_on_classes\u003d[InstanceSetup],"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FwmQ%3D","line":1580,"updated":"2014-03-04 08:53:36.000000000","message":"this terrifies me that we the tests are restarting the service.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":9122,"name":"Shalini khandelwal","email":"shalini.khandelwal@globallogic.com","username":"shalini"},"change_message_id":"34b45ee3d3b39b8a6151d1904c8319fb84f599ef","unresolved":false,"context_lines":[{"line_number":1577,"context_line":"        os.system(\"screen -S stack -p tr-tmgr -X stuff \\"},{"line_number":1578,"context_line":"                  \u0027cd /opt/stack/trove; bin/trove-taskmanager \\"},{"line_number":1579,"context_line":"                  --config-file\u003d/etc/trove/trove-taskmanager.conf --debug \\"},{"line_number":1580,"context_line":"                  2\u003e\u00261\\n\u0027\")"},{"line_number":1581,"context_line":""},{"line_number":1582,"context_line":""},{"line_number":1583,"context_line":"@test(depends_on_classes\u003d[InstanceSetup],"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FwQU%3D","line":1580,"in_reply_to":"AAAAVn%2F%2FwmQ%3D","updated":"2014-03-04 09:55:59.000000000","message":"As the first create instance test is testing instance creation for non-heat process. To test instance creation using heat we need to restart the taskmanager in between the tests.\nThere is no other way to do the same","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"52b349fb53eb65cfb3af40ca529d202514d16298","unresolved":false,"context_lines":[{"line_number":1600,"context_line":"        self.load_conf_file(**kwargs)"},{"line_number":1601,"context_line":""},{"line_number":1602,"context_line":"    @test(depends_on\u003d[setUp])"},{"line_number":1603,"context_line":"    def test_without_volume_support(self):"},{"line_number":1604,"context_line":"        self.create_instance()"},{"line_number":1605,"context_line":"        self.check_instance_created()"},{"line_number":1606,"context_line":"        self.delete_instance()"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FwnM%3D","line":1603,"updated":"2014-03-04 08:53:36.000000000","message":"i dont see any tests that check that the volume is not created other than seeing that an instance went active.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":9122,"name":"Shalini khandelwal","email":"shalini.khandelwal@globallogic.com","username":"shalini"},"change_message_id":"34b45ee3d3b39b8a6151d1904c8319fb84f599ef","unresolved":false,"context_lines":[{"line_number":1600,"context_line":"        self.load_conf_file(**kwargs)"},{"line_number":1601,"context_line":""},{"line_number":1602,"context_line":"    @test(depends_on\u003d[setUp])"},{"line_number":1603,"context_line":"    def test_without_volume_support(self):"},{"line_number":1604,"context_line":"        self.create_instance()"},{"line_number":1605,"context_line":"        self.check_instance_created()"},{"line_number":1606,"context_line":"        self.delete_instance()"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FwCQ%3D","line":1603,"in_reply_to":"AAAAVn%2F%2FwnM%3D","updated":"2014-03-04 09:55:59.000000000","message":"That can be taken as a separate activity. This is outside the scope of this check-in.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"52b349fb53eb65cfb3af40ca529d202514d16298","unresolved":false,"context_lines":[{"line_number":1624,"context_line":"        self.load_conf_file(**kwargs)"},{"line_number":1625,"context_line":""},{"line_number":1626,"context_line":"    @test(depends_on\u003d[setUp])"},{"line_number":1627,"context_line":"    def test_with_volume_support(self):"},{"line_number":1628,"context_line":"        self.create_instance()"},{"line_number":1629,"context_line":"        self.check_instance_created()"},{"line_number":1630,"context_line":"        self.delete_instance()"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2Fwnc%3D","line":1627,"updated":"2014-03-04 08:53:36.000000000","message":"i dont see any tests that check that the volume is created other than seeing that an instance went active.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"52b349fb53eb65cfb3af40ca529d202514d16298","unresolved":false,"context_lines":[{"line_number":1635,"context_line":"        if not os.path.exists(TROVE_CONF_FILE):"},{"line_number":1636,"context_line":"            raise SkipTest(\"SKIP TEST as trove not installed\")"},{"line_number":1637,"context_line":"        utils.execute(\"sudo\", \"mv\", \"/tmp/backup_conf\", TROVE_CONF_FILE)"},{"line_number":1638,"context_line":"        utils.execute(\"sudo\", \"chmod\", \"644\", TROVE_CONF_FILE)"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2Fwlg%3D","line":1638,"updated":"2014-03-04 08:53:36.000000000","message":"you never restart the service so that it will be back to non-heat even though you moved the config back.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":9122,"name":"Shalini khandelwal","email":"shalini.khandelwal@globallogic.com","username":"shalini"},"change_message_id":"34b45ee3d3b39b8a6151d1904c8319fb84f599ef","unresolved":false,"context_lines":[{"line_number":1635,"context_line":"        if not os.path.exists(TROVE_CONF_FILE):"},{"line_number":1636,"context_line":"            raise SkipTest(\"SKIP TEST as trove not installed\")"},{"line_number":1637,"context_line":"        utils.execute(\"sudo\", \"mv\", \"/tmp/backup_conf\", TROVE_CONF_FILE)"},{"line_number":1638,"context_line":"        utils.execute(\"sudo\", \"chmod\", \"644\", TROVE_CONF_FILE)"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FwQA%3D","line":1638,"in_reply_to":"AAAAVn%2F%2Fwlg%3D","updated":"2014-03-04 09:55:59.000000000","message":"Point taken.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"b8957a26643e3e9f2be0f3ca2e7632258678172e","unresolved":false,"context_lines":[{"line_number":1590,"context_line":""},{"line_number":1591,"context_line":""},{"line_number":1592,"context_line":"@test(depends_on_classes\u003d[InstanceSetup],"},{"line_number":1593,"context_line":"      groups\u003d[GROUP_HEAT],"},{"line_number":1594,"context_line":"      runs_after_groups\u003d[tests.PRE_INSTANCES, \u0027dbaas_quotas\u0027, GROUP_STOP])"},{"line_number":1595,"context_line":"class CreateInstanceWithHeatWithoutVolumesupport(InstanceActions):"},{"line_number":1596,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":21,"id":"AAAAWH%2F%2FP7Q%3D","line":1593,"updated":"2014-03-19 05:57:49.000000000","message":"this should be added to the master GROUP as well in order to run in the gate.","commit_id":"b549e37f70a8cc9e080678624800abc95a9a993e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"2d004e0f426baec67103a9672a1c238a7eae4526","unresolved":false,"context_lines":[{"line_number":1568,"context_line":"        parser.read(TROVE_CONF_FILE)"},{"line_number":1569,"context_line":"        confitems \u003d parser.items(\u0027DEFAULT\u0027)"},{"line_number":1570,"context_line":"        for item in confitems:"},{"line_number":1571,"context_line":"            parser.set(\u0027DEFAULT\u0027, item[0], item[1])"},{"line_number":1572,"context_line":"        for key, value in kwargs.iteritems():"},{"line_number":1573,"context_line":"            parser.set(\u0027DEFAULT\u0027, key, value)"},{"line_number":1574,"context_line":"        with open(TROVE_CONF_FILE, \u0027w\u0027) as configfile:"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAWn%2F%2F5M4%3D","line":1571,"updated":"2014-04-08 17:14:26.000000000","message":"i\u0027d suggest to avoid explicit unpacking here, better to do: item_1, item_2 \u003d item (if item contains only two elements)\n\nor use list method pop() twice:\n\nparser.set(\u0027DEFAULT\u0027, item.pop(), item.pop())","commit_id":"7e3d5b9eee571912934e854dc6c3da72ab8d6db1"}],"trove/tests/unittests/taskmanager/test_models.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":233,"context_line":""},{"line_number":234,"context_line":"    def test__create_server_volume_heat_with_volume_support(self):"},{"line_number":235,"context_line":"        test_flavor \u003d {\"name\": \"test_flavor\"}"},{"line_number":236,"context_line":"        taskmanager_models.FreshInstanceTasks.nova_client\\"},{"line_number":237,"context_line":"            .servers \u003d Mock(return_value\u003dmock())"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"        server, volume_info \u003d self.freshinstancetasks.\\"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY9Q%3D","line":236,"updated":"2014-01-14 09:50:38.000000000","message":"please avoid \\, use instead ()","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":236,"context_line":"        taskmanager_models.FreshInstanceTasks.nova_client\\"},{"line_number":237,"context_line":"            .servers \u003d Mock(return_value\u003dmock())"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"        server, volume_info \u003d self.freshinstancetasks.\\"},{"line_number":240,"context_line":"            _create_server_volume_heat(test_flavor,"},{"line_number":241,"context_line":"                                       \"image_id\","},{"line_number":242,"context_line":"                                       \"mysql\","}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY9I%3D","line":239,"updated":"2014-01-14 09:50:38.000000000","message":"please avoid \\, use instead ()","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":249,"context_line":"    def test__create_server_volume_heat_without_volume_support(self):"},{"line_number":250,"context_line":"        taskmanager_models.CONF.trove_volume_support \u003d False"},{"line_number":251,"context_line":"        test_flavor \u003d {\"name\": \"test_flavor\"}"},{"line_number":252,"context_line":"        taskmanager_models.FreshInstanceTasks.nova_client\\"},{"line_number":253,"context_line":"            .servers \u003d Mock(return_value\u003dmock())"},{"line_number":254,"context_line":""},{"line_number":255,"context_line":"        server, volume_info \u003d self.freshinstancetasks.\\"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY88%3D","line":252,"updated":"2014-01-14 09:50:38.000000000","message":"please avoid \\, use instead ()","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"bc45f3ca802d2a9956931662e567ecbb9d28598c","unresolved":false,"context_lines":[{"line_number":252,"context_line":"        taskmanager_models.FreshInstanceTasks.nova_client\\"},{"line_number":253,"context_line":"            .servers \u003d Mock(return_value\u003dmock())"},{"line_number":254,"context_line":""},{"line_number":255,"context_line":"        server, volume_info \u003d self.freshinstancetasks.\\"},{"line_number":256,"context_line":"            _create_server_volume_heat(test_flavor,"},{"line_number":257,"context_line":"                                       \"image_id\","},{"line_number":258,"context_line":"                                       \"mysql\","}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F%2FY9E%3D","line":255,"updated":"2014-01-14 09:50:38.000000000","message":"please avoid \\, use instead ()","commit_id":"2a02017c15952a29b909563c9a8ad84231e0026b"},{"author":{"_account_id":1925,"name":"Vipul Sabhaya","email":"vipuls@gmail.com","username":"vipuls"},"change_message_id":"c2fa39856f66b1f73188ca8b52bea1ddf10b0993","unresolved":false,"context_lines":[{"line_number":325,"context_line":"                                                  \"image_id\","},{"line_number":326,"context_line":"                                                  \"mysql\","},{"line_number":327,"context_line":"                                                  1, \"nova\", None))"},{"line_number":328,"context_line":"        self.assertIsNotNone(volume_info)"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"    def test__create_server_volume_heat_stack_error(self):"},{"line_number":331,"context_line":"        test_flavor \u003d {\"name\": \"test_flavor\"}"}],"source_content_type":"text/x-python","patch_set":18,"id":"AAAAVn%2F%2FyXQ%3D","line":328,"updated":"2014-03-04 05:02:45.000000000","message":"We should have a more intelligent assertion, instead of just checking for not None.","commit_id":"3a2fad65ddda6249f6f772fe6d467441afd693df"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"2d004e0f426baec67103a9672a1c238a7eae4526","unresolved":false,"context_lines":[{"line_number":369,"context_line":"    def test__create_server_volume_heat_stack_error(self):"},{"line_number":370,"context_line":"        test_flavor \u003d {\"name\": \"test_flavor\"}"},{"line_number":371,"context_line":"        self.stack.action \u003d \"CREATE\""},{"line_number":372,"context_line":"        self.stack.stack_status \u003d \"CREATE_FAILED\""},{"line_number":373,"context_line":"        self.resource.resource_status \u003d \"CREATE_COMPLETE\""},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"        self.assertRaises(TroveError, self.freshinstancetasks."}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAWn%2F%2F5LQ%3D","line":372,"updated":"2014-04-08 17:14:26.000000000","message":"please use defined statuses at taskmanager/models.py, instead of hardcoding string.","commit_id":"7e3d5b9eee571912934e854dc6c3da72ab8d6db1"}]}
