)]}'
{"trove/common/cfg.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"9971ed65b1e6ea621def6785d383639dbbe24c8b","unresolved":false,"context_lines":[{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027$pybasedir/../etc/trove/trove-guestagent.conf.sample\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Path to guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"},{"line_number":231,"context_line":"                help\u003d\u0027Extention for default datastore managers.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAT3%2F%2Fypo%3D","line":228,"updated":"2013-12-31 14:12:18.000000000","message":"$pybasedir could be different, so i really see no reasons to change default value, even trove integration doesn\u0027t relays at this parameters, so, i doesnt see why it should be changed, if you are using another way of deployment (different from trove-int) you would really don\u0027t care about default values, because you would have custom OS with it\u0027s own networking, etc.\nSo, please describe better reasons for such change.","commit_id":"3d3f732b3dd36dd6bd2cce2a954d725f7e18a153"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"1a63f545e979df436f2b60fe352283ce1af550b2","unresolved":false,"context_lines":[{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027$pybasedir/../etc/trove/trove-guestagent.conf.sample\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Path to guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"},{"line_number":231,"context_line":"                help\u003d\u0027Extention for default datastore managers.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAT3%2F%2FysU%3D","line":228,"updated":"2013-12-31 13:56:38.000000000","message":"i would suggest to keep default value empty, it would make deployer explicilty describe where guest config file stored","commit_id":"3d3f732b3dd36dd6bd2cce2a954d725f7e18a153"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"bd067674b559c2419647562e3503cdfc0c1c2f80","unresolved":false,"context_lines":[{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027$pybasedir/../etc/trove/trove-guestagent.conf.sample\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Path to guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"},{"line_number":231,"context_line":"                help\u003d\u0027Extention for default datastore managers.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAT3%2F%2FyRs%3D","line":228,"in_reply_to":"AAAAT3%2F%2FyR4%3D","updated":"2013-12-31 16:59:21.000000000","message":"Also, like you said, its not gonna do any harm to the production deployments as obviously the parameters are configurable.","commit_id":"3d3f732b3dd36dd6bd2cce2a954d725f7e18a153"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"3eb0285bdc6a5f881b165800a8887ce0df9d2667","unresolved":false,"context_lines":[{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027$pybasedir/../etc/trove/trove-guestagent.conf.sample\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Path to guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"},{"line_number":231,"context_line":"                help\u003d\u0027Extention for default datastore managers.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAT3%2F%2FyR4%3D","line":228,"in_reply_to":"AAAAT3%2F%2FyUU%3D","updated":"2013-12-31 16:58:25.000000000","message":"for trove-integration, there is a bug already submitted long back \nhttps://bugs.launchpad.net/bugs/1176102\n\nThis bug says that we are using the trove-guestagent.conf.sample\n\nprobably sample file was used because conf file was not available inside the guest machine.\n\nand this patch would help the creation of guestagent configuration file under /etc path which could be then used in  by the guest-agent upstart script.","commit_id":"3d3f732b3dd36dd6bd2cce2a954d725f7e18a153"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"6ff1e89d88295037cf7d6b954fcfd2637d1d1724","unresolved":false,"context_lines":[{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027$pybasedir/../etc/trove/trove-guestagent.conf.sample\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Path to guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"},{"line_number":231,"context_line":"                help\u003d\u0027Extention for default datastore managers.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAT3%2F%2FyUU%3D","line":228,"in_reply_to":"AAAAT3%2F%2FykI%3D","updated":"2013-12-31 16:35:22.000000000","message":"Its\u0027s not a bug in terms of production deployment. Trove could be used only (for development and testing) only inside trove-integration. In terms of integration - it\u0027s not a bug, in trove scope - also, it\u0027s not a bug, because it doesn\u0027t affects trove-integration","commit_id":"3d3f732b3dd36dd6bd2cce2a954d725f7e18a153"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"2f334587f3de7a32e5b08aaed2c081e4facc70e3","unresolved":false,"context_lines":[{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027$pybasedir/../etc/trove/trove-guestagent.conf.sample\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Path to guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"},{"line_number":231,"context_line":"                help\u003d\u0027Extention for default datastore managers.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAT3%2F%2FykI%3D","line":228,"in_reply_to":"AAAAT3%2F%2Fypo%3D","updated":"2013-12-31 14:55:41.000000000","message":"1: I am only looking this bug as a typo where they were trying to point to the correct file but only problem that is there looks to be that path which needed to be referred was the parent-directory of pybasedir in this case.\n2: The parameter guest_config is only used in trove.taskmanager.models, the purpose is clearly visible that this file is used to create \"/etc/trove-guestagent.conf\"\n3: Currently, the condition in taskmanager.models is evaulating false because of this bug, so the conf file does not gets created, the correction of location would help in creating the conf file in guest.\n4: pybasedir is extracted in cfg.py as the location where trove was installed, file location is not going to change.\n5. Someone who is deploying trove is always at his liberty to edit the value of this parameter, like you said /etc/trove/trove-guestagent.conf.","commit_id":"3d3f732b3dd36dd6bd2cce2a954d725f7e18a153"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"8326e7cf92efef2774521a0d57f4ca294bf4243c","unresolved":false,"context_lines":[{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027$pybasedir/../etc/trove/trove-guestagent.conf.sample\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Path to guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"},{"line_number":231,"context_line":"                help\u003d\u0027Extention for default datastore managers.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAT3%2F%2FypU%3D","line":228,"in_reply_to":"AAAAT3%2F%2Fyrg%3D","updated":"2013-12-31 14:15:40.000000000","message":"And default is mentioned here only for avoinding exceptions while provisioning, default value also could be /etc/trove/trove-guestagent.conf.sample.\n\nsimple example of pybasedir\n\ntrove/bin/trove-guestagent:$ python\n\nbin/trove-guestagent:$ python\n\nbasedirs are diffrent, so you cannot relay on such things.","commit_id":"3d3f732b3dd36dd6bd2cce2a954d725f7e18a153"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"2c810b3c1fb8f21b90d57a06d0863b4333dbd56b","unresolved":false,"context_lines":[{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027$pybasedir/../etc/trove/trove-guestagent.conf.sample\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Path to guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"},{"line_number":231,"context_line":"                help\u003d\u0027Extention for default datastore managers.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAT3%2F%2Fyrg%3D","line":228,"in_reply_to":"AAAAT3%2F%2FysU%3D","updated":"2013-12-31 14:01:22.000000000","message":"deployer can still make those changes by editing the conf file.\nbut because of this bug https://github.com/openstack/trove/blob/master/trove/taskmanager/models.py#L500 was always resulting a false evaluation and hence the file /etc/trove-guestagent.conf was not getting created.","commit_id":"3d3f732b3dd36dd6bd2cce2a954d725f7e18a153"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"727ee73da29068e4c64d329e4ecef5a7ac89ab62","unresolved":false,"context_lines":[{"line_number":224,"context_line":"    cfg.StrOpt(\u0027ip_regex\u0027, default\u003dNone),"},{"line_number":225,"context_line":"    cfg.StrOpt(\u0027cloudinit_location\u0027, default\u003d\u0027/etc/trove/cloudinit\u0027,"},{"line_number":226,"context_line":"               help\u003d\"Path to folder with cloudinit scripts\"),"},{"line_number":227,"context_line":"    cfg.StrOpt(\u0027guest_config\u0027,"},{"line_number":228,"context_line":"               default\u003d\u0027trove_guestagent.conf\u0027,"},{"line_number":229,"context_line":"               help\u003d\"Guestagent config file\"),"},{"line_number":230,"context_line":"    cfg.DictOpt(\u0027datastore_registry_ext\u0027, default\u003ddict(),"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAT3%2F%2Fqp8%3D","line":227,"updated":"2014-01-03 20:37:18.000000000","message":"Since this is a template that users can override, there is really no need for this config flag anymore. It should always just use the default name and admins can choose to replace add a template of the same name in /etc/trove/templates","commit_id":"733665c77e32df2778d3f2e8cac85674049c84e8"}],"trove/common/template.py":[{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"b7439f40e8a373c22b4a3f794557dcfaed6197c1","unresolved":false,"context_lines":[{"line_number":80,"context_line":""},{"line_number":81,"context_line":"def load_guestagent_conf(conf_name):"},{"line_number":82,"context_line":"    \"\"\"Returns the conf file contents.\"\"\""},{"line_number":83,"context_line":"    conf_filename \u003d \"%s\" % conf_name"},{"line_number":84,"context_line":"    try:"},{"line_number":85,"context_line":"        conf_obj \u003d ENV.get_template(conf_filename)"},{"line_number":86,"context_line":"        return conf_obj"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAT3%2F%2FrTc%3D","line":83,"updated":"2014-01-03 16:59:13.000000000","message":"Why are you doing this? Just use conf_name directly","commit_id":"e7d3b018c9f70fd25d5b2baaa74dd5f14d69dec5"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"385333523820ea55e76b544401baa591ffe4b551","unresolved":false,"context_lines":[{"line_number":80,"context_line":""},{"line_number":81,"context_line":"def load_guestagent_conf(conf_name):"},{"line_number":82,"context_line":"    \"\"\"Returns the conf file contents.\"\"\""},{"line_number":83,"context_line":"    conf_filename \u003d \"%s\" % conf_name"},{"line_number":84,"context_line":"    try:"},{"line_number":85,"context_line":"        conf_obj \u003d ENV.get_template(conf_filename)"},{"line_number":86,"context_line":"        return conf_obj"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAT3%2F%2FrRM%3D","line":83,"in_reply_to":"AAAAT3%2F%2FrTc%3D","updated":"2014-01-03 17:04:46.000000000","message":"aah! even i cannot figure out why I did it like that, changing it. :)","commit_id":"e7d3b018c9f70fd25d5b2baaa74dd5f14d69dec5"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"727ee73da29068e4c64d329e4ecef5a7ac89ab62","unresolved":false,"context_lines":[{"line_number":81,"context_line":"def load_guestagent_conf(conf_name):"},{"line_number":82,"context_line":"    \"\"\"Returns the conf file contents.\"\"\""},{"line_number":83,"context_line":"    try:"},{"line_number":84,"context_line":"        conf_obj \u003d ENV.get_template(conf_name)"},{"line_number":85,"context_line":"        return conf_obj"},{"line_number":86,"context_line":"    except jinja2.TemplateNotFound:"},{"line_number":87,"context_line":"        msg \u003d \"Missing configuration file for guest\""}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAT3%2F%2Fqpo%3D","line":84,"updated":"2014-01-03 20:37:18.000000000","message":"I think this should match the other templates and look for \u0027(datastore_manager)/guestagent.conf\u0027 that way you can have different configs for the different datastore types.","commit_id":"733665c77e32df2778d3f2e8cac85674049c84e8"}],"trove/taskmanager/models.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"cfb490613ffc404a1f10139c17dd636490637c7c","unresolved":false,"context_lines":[{"line_number":497,"context_line":"                                     \"tenant_id\u003d%s\\n\" %"},{"line_number":498,"context_line":"                                     (self.id, datastore_manager,"},{"line_number":499,"context_line":"                                      self.tenant_id))}"},{"line_number":500,"context_line":"        if CONF.guest_config:"},{"line_number":501,"context_line":"            guest_conf_temp \u003d template.load_guestagent_conf("},{"line_number":502,"context_line":"                CONF.get(\u0027guest_config\u0027))"},{"line_number":503,"context_line":"            guest_agent_config_template \u003d guest_conf_temp.render()"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2FsAE%3D","line":500,"updated":"2014-01-03 13:50:34.000000000","message":"config parameters type is basestring and it\u0027s always something - trove_guestagent.conf, because you mentioned default value.","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"af8489831757ef0c1311274474b3662ce9a7c65f","unresolved":false,"context_lines":[{"line_number":497,"context_line":"                                     \"tenant_id\u003d%s\\n\" %"},{"line_number":498,"context_line":"                                     (self.id, datastore_manager,"},{"line_number":499,"context_line":"                                      self.tenant_id))}"},{"line_number":500,"context_line":"        if CONF.guest_config:"},{"line_number":501,"context_line":"            guest_conf_temp \u003d template.load_guestagent_conf("},{"line_number":502,"context_line":"                CONF.get(\u0027guest_config\u0027))"},{"line_number":503,"context_line":"            guest_agent_config_template \u003d guest_conf_temp.render()"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2Fr5o%3D","line":500,"in_reply_to":"AAAAT3%2F%2FsAE%3D","updated":"2014-01-03 14:16:32.000000000","message":"done.","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"cfb490613ffc404a1f10139c17dd636490637c7c","unresolved":false,"context_lines":[{"line_number":499,"context_line":"                                      self.tenant_id))}"},{"line_number":500,"context_line":"        if CONF.guest_config:"},{"line_number":501,"context_line":"            guest_conf_temp \u003d template.load_guestagent_conf("},{"line_number":502,"context_line":"                CONF.get(\u0027guest_config\u0027))"},{"line_number":503,"context_line":"            guest_agent_config_template \u003d guest_conf_temp.render()"},{"line_number":504,"context_line":"            files[\"/etc/trove-guestagent.conf\""},{"line_number":505,"context_line":"                  ] \u003d guest_agent_config_template.encode(\u0027ascii\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2FsAA%3D","line":502,"updated":"2014-01-03 13:50:34.000000000","message":"CONF.guest_config","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"af8489831757ef0c1311274474b3662ce9a7c65f","unresolved":false,"context_lines":[{"line_number":499,"context_line":"                                      self.tenant_id))}"},{"line_number":500,"context_line":"        if CONF.guest_config:"},{"line_number":501,"context_line":"            guest_conf_temp \u003d template.load_guestagent_conf("},{"line_number":502,"context_line":"                CONF.get(\u0027guest_config\u0027))"},{"line_number":503,"context_line":"            guest_agent_config_template \u003d guest_conf_temp.render()"},{"line_number":504,"context_line":"            files[\"/etc/trove-guestagent.conf\""},{"line_number":505,"context_line":"                  ] \u003d guest_agent_config_template.encode(\u0027ascii\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2Fr5g%3D","line":502,"in_reply_to":"AAAAT3%2F%2FsAA%3D","updated":"2014-01-03 14:16:32.000000000","message":"tests start breaking with changing to CONF.guest_config.","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"cfb490613ffc404a1f10139c17dd636490637c7c","unresolved":false,"context_lines":[{"line_number":502,"context_line":"                CONF.get(\u0027guest_config\u0027))"},{"line_number":503,"context_line":"            guest_agent_config_template \u003d guest_conf_temp.render()"},{"line_number":504,"context_line":"            files[\"/etc/trove-guestagent.conf\""},{"line_number":505,"context_line":"                  ] \u003d guest_agent_config_template.encode(\u0027ascii\u0027)"},{"line_number":506,"context_line":"        userdata \u003d None"},{"line_number":507,"context_line":"        cloudinit \u003d os.path.join(CONF.get(\u0027cloudinit_location\u0027),"},{"line_number":508,"context_line":"                                 \"%s.cloudinit\" % datastore_manager)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2Fr%2Fg%3D","line":505,"updated":"2014-01-03 13:50:34.000000000","message":"guestagent","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"}],"trove/tests/unittests/common/test_template.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"cfb490613ffc404a1f10139c17dd636490637c7c","unresolved":false,"context_lines":[{"line_number":97,"context_line":""},{"line_number":98,"context_line":"    def setUp(self):"},{"line_number":99,"context_line":"        super(GuestAgentConfLoadTest, self).setUp()"},{"line_number":100,"context_line":"        self.fException \u003d mock.Mock(side_effect\u003d"},{"line_number":101,"context_line":"                                    lambda *args, **kwargs:"},{"line_number":102,"context_line":"                                    _raise(template.jinja2."},{"line_number":103,"context_line":"                                    TemplateNotFound(\"Test\")))"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2Fr%2FM%3D","line":100,"updated":"2014-01-03 13:50:34.000000000","message":"fException not used","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"af8489831757ef0c1311274474b3662ce9a7c65f","unresolved":false,"context_lines":[{"line_number":97,"context_line":""},{"line_number":98,"context_line":"    def setUp(self):"},{"line_number":99,"context_line":"        super(GuestAgentConfLoadTest, self).setUp()"},{"line_number":100,"context_line":"        self.fException \u003d mock.Mock(side_effect\u003d"},{"line_number":101,"context_line":"                                    lambda *args, **kwargs:"},{"line_number":102,"context_line":"                                    _raise(template.jinja2."},{"line_number":103,"context_line":"                                    TemplateNotFound(\"Test\")))"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2Fr5Y%3D","line":100,"in_reply_to":"AAAAT3%2F%2Fr%2FM%3D","updated":"2014-01-03 14:16:32.000000000","message":"removed","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"cfb490613ffc404a1f10139c17dd636490637c7c","unresolved":false,"context_lines":[{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    def test_guest_agent_conf_load_success(self):"},{"line_number":116,"context_line":"        conf_file \u003d template.load_guestagent_conf(CONF.guest_config)"},{"line_number":117,"context_line":"        self.assertNotEqual(None, conf_file)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2Fr%2FU%3D","line":117,"updated":"2014-01-03 13:50:34.000000000","message":"self.assertIsNotNone","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"af8489831757ef0c1311274474b3662ce9a7c65f","unresolved":false,"context_lines":[{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    def test_guest_agent_conf_load_success(self):"},{"line_number":116,"context_line":"        conf_file \u003d template.load_guestagent_conf(CONF.guest_config)"},{"line_number":117,"context_line":"        self.assertNotEqual(None, conf_file)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAT3%2F%2Fr5I%3D","line":117,"in_reply_to":"AAAAT3%2F%2Fr%2FU%3D","updated":"2014-01-03 14:16:32.000000000","message":"edited","commit_id":"1f274a7e6bbc6afd00d1afc1b95c4dd5e1461d90"}]}
