)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"0f3223d7198732c189440f0216099c476a09726e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     John Schwarz \u003cjschwarz@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-08-11 10:39:11 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add EnvironmentDescription, refactor fullstack"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"* The EnvironmentDescription class describes an entire fullstack"},{"line_number":10,"context_line":"  environment (as opposed to the currently implemented host-only"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"1a4dcd0f_d773d24c","line":7,"updated":"2015-08-11 19:37:05.000000000","message":"\u0027refactor fullstack\u0027 is kind of an amorphic commit title :)\n\nHow about:\nAdd fullstack EnvironmentDescription, pass it down","commit_id":"f673b0715ea1b7d3f749b9530413ed57672db426"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"3133f1b5f9c19347834de2a2c06798ca15b877dd","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     John Schwarz \u003cjschwarz@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-08-11 10:39:11 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add EnvironmentDescription, refactor fullstack"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"* The EnvironmentDescription class describes an entire fullstack"},{"line_number":10,"context_line":"  environment (as opposed to the currently implemented host-only"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"1a4dcd0f_e227cdb3","line":7,"in_reply_to":"1a4dcd0f_d773d24c","updated":"2015-08-13 14:18:03.000000000","message":"Done","commit_id":"f673b0715ea1b7d3f749b9530413ed57672db426"},{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"73ac37cfed73516add073931c6959a65d1a0ca85","unresolved":false,"context_lines":[{"line_number":17,"context_line":"  for easier and most robust future changes, as now adding a new"},{"line_number":18,"context_line":"  parameter to one of the description objects doesn\u0027t mean adding that"},{"line_number":19,"context_line":"  argument to a number of other objects which are using it."},{"line_number":20,"context_line":"* Instead of storing the \u0027temp_dir\u0027 fixtures in the"},{"line_number":21,"context_line":"  NeutronConfigFixture, these are now stored in the HostDescription"},{"line_number":22,"context_line":"  objects instead (which are passed to each of the relevant object"},{"line_number":23,"context_line":"  anyway). Similary, the environment\u0027s \u0027temp_dir\u0027 has been moved from"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"fa1b9901_f93725ae","line":20,"updated":"2015-08-18 19:41:42.000000000","message":"The commit message is out dated, this patch doesn\u0027t touch temp_dir anymore.","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"a2017e598ff0171c18730af1f6807737ffdd7894","unresolved":false,"context_lines":[{"line_number":17,"context_line":"  for easier and most robust future changes, as now adding a new"},{"line_number":18,"context_line":"  parameter to one of the description objects doesn\u0027t mean adding that"},{"line_number":19,"context_line":"  argument to a number of other objects which are using it."},{"line_number":20,"context_line":"* Instead of storing the \u0027temp_dir\u0027 fixtures in the"},{"line_number":21,"context_line":"  NeutronConfigFixture, these are now stored in the HostDescription"},{"line_number":22,"context_line":"  objects instead (which are passed to each of the relevant object"},{"line_number":23,"context_line":"  anyway). Similary, the environment\u0027s \u0027temp_dir\u0027 has been moved from"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"fa1b9901_001a467d","line":20,"in_reply_to":"fa1b9901_f93725ae","updated":"2015-08-20 08:00:08.000000000","message":"Done","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"d731b5ebd22e296e89c5caab72aaa4b5bda38a01","unresolved":false,"context_lines":[{"line_number":20,"context_line":"* Instead of storing the \u0027temp_dir\u0027 fixtures in the"},{"line_number":21,"context_line":"  NeutronConfigFixture, these are now stored in the HostDescription"},{"line_number":22,"context_line":"  objects instead (which are passed to each of the relevant object"},{"line_number":23,"context_line":"  anyway). Similary, the environment\u0027s \u0027temp_dir\u0027 has been moved from"},{"line_number":24,"context_line":"  Environment to EnvironmentDescription."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Change-Id: Ib2f12016ba4371bfda76c82e11d0794acc759955"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"fa1b9901_24361b04","line":23,"updated":"2015-08-17 14:00:42.000000000","message":"Similarly","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"}],"neutron/tests/fullstack/resources/config.py":[{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"d731b5ebd22e296e89c5caab72aaa4b5bda38a01","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    :param config: a ConfigDict instance."},{"line_number":49,"context_line":"    \"\"\""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    def __init__(self, base_filename, config, temp_dir):"},{"line_number":52,"context_line":"        super(ConfigFileFixture, self).__init__()"},{"line_number":53,"context_line":"        self.base_filename \u003d base_filename"},{"line_number":54,"context_line":"        self.config \u003d config"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_173c6b92","line":51,"updated":"2015-08-17 14:00:42.000000000","message":"then why is the argument here?","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"a2017e598ff0171c18730af1f6807737ffdd7894","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    :param config: a ConfigDict instance."},{"line_number":49,"context_line":"    \"\"\""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    def __init__(self, base_filename, config, temp_dir):"},{"line_number":52,"context_line":"        super(ConfigFileFixture, self).__init__()"},{"line_number":53,"context_line":"        self.base_filename \u003d base_filename"},{"line_number":54,"context_line":"        self.config \u003d config"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_6001c205","line":51,"in_reply_to":"fa1b9901_173c6b92","updated":"2015-08-20 08:00:08.000000000","message":"Must have been a bad change. Restored.","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"d731b5ebd22e296e89c5caab72aaa4b5bda38a01","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    then the dynamic configuration values won\u0027t change. The correct usage"},{"line_number":81,"context_line":"    is initializing a new instance of the class."},{"line_number":82,"context_line":"    \"\"\""},{"line_number":83,"context_line":"    def __init__(self, env_desc, host_desc, temp_dir, base_filename):"},{"line_number":84,"context_line":"        super(ConfigFixture, self).__init__()"},{"line_number":85,"context_line":"        self.config \u003d ConfigDict()"},{"line_number":86,"context_line":"        self.env_desc \u003d env_desc"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_f7d21734","line":83,"updated":"2015-08-17 14:00:42.000000000","message":"if temp_dir is in host_desc now, why do we pass it around here and in all other fixtures?","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"a2017e598ff0171c18730af1f6807737ffdd7894","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    then the dynamic configuration values won\u0027t change. The correct usage"},{"line_number":81,"context_line":"    is initializing a new instance of the class."},{"line_number":82,"context_line":"    \"\"\""},{"line_number":83,"context_line":"    def __init__(self, env_desc, host_desc, temp_dir, base_filename):"},{"line_number":84,"context_line":"        super(ConfigFixture, self).__init__()"},{"line_number":85,"context_line":"        self.config \u003d ConfigDict()"},{"line_number":86,"context_line":"        self.env_desc \u003d env_desc"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_9b956b88","line":83,"in_reply_to":"fa1b9901_f7d21734","updated":"2015-08-20 08:00:08.000000000","message":"It\u0027s not - I dropped it in this patchset but the commit message was not up to date.. :(","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"}],"neutron/tests/fullstack/resources/environment.py":[{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"c572927c4f79de11cee7b0ada2e5741f657abd72","unresolved":false,"context_lines":[{"line_number":29,"context_line":"class EnvironmentDescription(object):"},{"line_number":30,"context_line":"    \"\"\"A set of characteristics of an environment setup."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Does the setup, as a hole, support tunneling? How about l2pop?"},{"line_number":33,"context_line":"    \"\"\""},{"line_number":34,"context_line":"    def __init__(self):"},{"line_number":35,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_4259b88d","line":32,"updated":"2015-08-09 14:26:14.000000000","message":"as a whole. lol.","commit_id":"0752b71b1826e3cbe72ae2cf4ffb1dba7402cbc1"},{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"30fb5d45dec5f8b965c469793956c406b56d3687","unresolved":false,"context_lines":[{"line_number":29,"context_line":"class EnvironmentDescription(object):"},{"line_number":30,"context_line":"    \"\"\"A set of characteristics of an environment setup."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Does the setup, as a hole, support tunneling? How about l2pop?"},{"line_number":33,"context_line":"    \"\"\""},{"line_number":34,"context_line":"    def __init__(self):"},{"line_number":35,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_62609d01","line":32,"updated":"2015-08-13 14:04:26.000000000","message":"We should totally just keep \u0027hole\u0027 there.","commit_id":"f673b0715ea1b7d3f749b9530413ed57672db426"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"3133f1b5f9c19347834de2a2c06798ca15b877dd","unresolved":false,"context_lines":[{"line_number":29,"context_line":"class EnvironmentDescription(object):"},{"line_number":30,"context_line":"    \"\"\"A set of characteristics of an environment setup."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Does the setup, as a hole, support tunneling? How about l2pop?"},{"line_number":33,"context_line":"    \"\"\""},{"line_number":34,"context_line":"    def __init__(self):"},{"line_number":35,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_65cc276a","line":32,"in_reply_to":"1a4dcd0f_62609d01","updated":"2015-08-13 14:18:03.000000000","message":"I swear to god I fixed this already in a previous revision.","commit_id":"f673b0715ea1b7d3f749b9530413ed57672db426"},{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"0f3223d7198732c189440f0216099c476a09726e","unresolved":false,"context_lines":[{"line_number":175,"context_line":"                 self.central_external_bridge))"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"    def _setUp(self):"},{"line_number":178,"context_line":"        self.env_desc.temp_dir \u003d self.useFixture(fixtures.TempDir()).path"},{"line_number":179,"context_line":"        for host_desc in self.hosts_desc:"},{"line_number":180,"context_line":"            host_desc.temp_dir \u003d self.useFixture(fixtures.TempDir()).path"},{"line_number":181,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_2c6c2d34","line":178,"updated":"2015-08-11 19:37:05.000000000","message":"The description classes are declarative structures that describe the test topology, they are not meant to be mutable or hold state. So, I disagree with the idea of moving temp_dir to the description classes.","commit_id":"f673b0715ea1b7d3f749b9530413ed57672db426"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"3133f1b5f9c19347834de2a2c06798ca15b877dd","unresolved":false,"context_lines":[{"line_number":175,"context_line":"                 self.central_external_bridge))"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"    def _setUp(self):"},{"line_number":178,"context_line":"        self.env_desc.temp_dir \u003d self.useFixture(fixtures.TempDir()).path"},{"line_number":179,"context_line":"        for host_desc in self.hosts_desc:"},{"line_number":180,"context_line":"            host_desc.temp_dir \u003d self.useFixture(fixtures.TempDir()).path"},{"line_number":181,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_c5097b2c","line":178,"in_reply_to":"1a4dcd0f_2c6c2d34","updated":"2015-08-13 14:18:03.000000000","message":"Done","commit_id":"f673b0715ea1b7d3f749b9530413ed57672db426"},{"author":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"change_message_id":"a5f319787fa825a1a9c8ee5aad768fb08b2ac443","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":13,"context_line":"#    under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import fixtures"},{"line_number":17,"context_line":"from neutronclient.common import exceptions as nc_exc"},{"line_number":18,"context_line":"from oslo_config import cfg"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_6b0368bf","line":15,"updated":"2015-08-14 10:25:08.000000000","message":"unrelated change?","commit_id":"ce2b3bc4f14c0f9b3d8bb24ecdf0fa177850882f"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"71e0cc7bdaa668230c6503fb5e681c1af51ad028","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":13,"context_line":"#    under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import fixtures"},{"line_number":17,"context_line":"from neutronclient.common import exceptions as nc_exc"},{"line_number":18,"context_line":"from oslo_config import cfg"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_4492edf7","line":15,"in_reply_to":"1a4dcd0f_6b0368bf","updated":"2015-08-16 06:21:27.000000000","message":"God damn those unrelated changes :(","commit_id":"ce2b3bc4f14c0f9b3d8bb24ecdf0fa177850882f"},{"author":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"change_message_id":"a5f319787fa825a1a9c8ee5aad768fb08b2ac443","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Does the setup, as a whole, support tunneling? How about l2pop?"},{"line_number":33,"context_line":"    \"\"\""},{"line_number":34,"context_line":"    def __init__(self):"},{"line_number":35,"context_line":"        pass"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_2b56c0ce","line":34,"updated":"2015-08-14 10:25:08.000000000","message":"no need to define __init__","commit_id":"ce2b3bc4f14c0f9b3d8bb24ecdf0fa177850882f"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"71e0cc7bdaa668230c6503fb5e681c1af51ad028","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Does the setup, as a whole, support tunneling? How about l2pop?"},{"line_number":33,"context_line":"    \"\"\""},{"line_number":34,"context_line":"    def __init__(self):"},{"line_number":35,"context_line":"        pass"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_648da9d2","line":34,"in_reply_to":"1a4dcd0f_2b56c0ce","updated":"2015-08-16 06:21:27.000000000","message":"Done","commit_id":"ce2b3bc4f14c0f9b3d8bb24ecdf0fa177850882f"},{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"73ac37cfed73516add073931c6959a65d1a0ca85","unresolved":false,"context_lines":[{"line_number":184,"context_line":"        self.rabbitmq_environment \u003d self.useFixture("},{"line_number":185,"context_line":"            process.RabbitmqEnvironmentFixture())"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        # Statically assume that the neutron-server is part of the first host"},{"line_number":188,"context_line":"        first_host_desc \u003d self.hosts_desc[0]"},{"line_number":189,"context_line":"        plugin_cfg_fixture \u003d self.useFixture("},{"line_number":190,"context_line":"            config.ML2ConfigFixture("}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_99c0697e","line":187,"updated":"2015-08-18 19:41:42.000000000","message":"The neutron server (And thus ml2 conf) are not a part of any host. They should not receive a host description at all.","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"672ac2cf194079707dc529a963a421469c7bfd32","unresolved":false,"context_lines":[{"line_number":184,"context_line":"        self.rabbitmq_environment \u003d self.useFixture("},{"line_number":185,"context_line":"            process.RabbitmqEnvironmentFixture())"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        # Statically assume that the neutron-server is part of the first host"},{"line_number":188,"context_line":"        first_host_desc \u003d self.hosts_desc[0]"},{"line_number":189,"context_line":"        plugin_cfg_fixture \u003d self.useFixture("},{"line_number":190,"context_line":"            config.ML2ConfigFixture("}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_e0b40b36","line":187,"in_reply_to":"fa1b9901_8028af87","updated":"2015-08-19 18:46:44.000000000","message":"Outside the context of fullstack, the neutron server configuration is not host specific, it\u0027s environment-wide. It doesn\u0027t matter what machine you run the neutron-server on (Outside of networking considerations like API network reachability but that\u0027s not an issue here), so I don\u0027t see this becoming a problem.","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"54c0484f50d10aa44b56e568a753d8b1677a2d31","unresolved":false,"context_lines":[{"line_number":184,"context_line":"        self.rabbitmq_environment \u003d self.useFixture("},{"line_number":185,"context_line":"            process.RabbitmqEnvironmentFixture())"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        # Statically assume that the neutron-server is part of the first host"},{"line_number":188,"context_line":"        first_host_desc \u003d self.hosts_desc[0]"},{"line_number":189,"context_line":"        plugin_cfg_fixture \u003d self.useFixture("},{"line_number":190,"context_line":"            config.ML2ConfigFixture("}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_8028af87","line":187,"in_reply_to":"fa1b9901_99c0697e","updated":"2015-08-19 18:42:51.000000000","message":"This makes sense, though it might cause some problems later down the line: though host_desc isn\u0027t used right now in said fixtures, later down the line we might want to access them. In that case it\u0027ll be problematic to simply pass None and we\u0027ll need some actual object to pass.\n\nWhat do you think?","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"a2017e598ff0171c18730af1f6807737ffdd7894","unresolved":false,"context_lines":[{"line_number":184,"context_line":"        self.rabbitmq_environment \u003d self.useFixture("},{"line_number":185,"context_line":"            process.RabbitmqEnvironmentFixture())"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        # Statically assume that the neutron-server is part of the first host"},{"line_number":188,"context_line":"        first_host_desc \u003d self.hosts_desc[0]"},{"line_number":189,"context_line":"        plugin_cfg_fixture \u003d self.useFixture("},{"line_number":190,"context_line":"            config.ML2ConfigFixture("}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_bbc70f97","line":187,"in_reply_to":"fa1b9901_e0b40b36","updated":"2015-08-20 08:00:08.000000000","message":"Done","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"d731b5ebd22e296e89c5caab72aaa4b5bda38a01","unresolved":false,"context_lines":[{"line_number":185,"context_line":"            process.RabbitmqEnvironmentFixture())"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        # Statically assume that the neutron-server is part of the first host"},{"line_number":188,"context_line":"        first_host_desc \u003d self.hosts_desc[0]"},{"line_number":189,"context_line":"        plugin_cfg_fixture \u003d self.useFixture("},{"line_number":190,"context_line":"            config.ML2ConfigFixture("},{"line_number":191,"context_line":"                self.env_desc, first_host_desc, self.temp_dir, \u0027vlan\u0027))"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_f72a17e7","line":188,"updated":"2015-08-17 14:00:42.000000000","message":"first_host_desc -\u003e server_host_desc to add more semantics","commit_id":"3d0e7ea182249b7ce4443303292c9d1e8224c91c"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"0d22bf47d3736137f5985a7d759d770f339b18c1","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    What agents should the host spawn? What mode should each agent operate"},{"line_number":40,"context_line":"    under?"},{"line_number":41,"context_line":"    \"\"\""},{"line_number":42,"context_line":"    def __init__(self, l3_agent\u003dTrue):"},{"line_number":43,"context_line":"        self.l3_agent \u003d l3_agent"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"fa1b9901_dbb203e5","line":42,"updated":"2015-08-20 08:00:27.000000000","message":"Default parameters in the description classes should not be True, since adding a new one to be True forces us to go through all the test cases and switch it off in case it\u0027s a \u0027one-off\u0027. Since we should be explicitly turning on features/processes such as an l3_agent, there\u0027s no harm in defualting these to False.","commit_id":"e5798c1f8aac8bbb7f9a5454919cd4fe9fd04d38"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"45f5e323725370befe0c9c3cd83388e8e534edf8","unresolved":false,"context_lines":[{"line_number":184,"context_line":"        self.rabbitmq_environment \u003d self.useFixture("},{"line_number":185,"context_line":"            process.RabbitmqEnvironmentFixture())"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        # Statically assume that the neutron-server is part of the first host"},{"line_number":188,"context_line":"        plugin_cfg_fixture \u003d self.useFixture("},{"line_number":189,"context_line":"            config.ML2ConfigFixture("},{"line_number":190,"context_line":"                self.env_desc, None, self.temp_dir, \u0027vlan\u0027))"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa1b9901_9d6795b6","line":187,"updated":"2015-08-20 12:16:48.000000000","message":"Does the comment still apply?","commit_id":"9fef61e0f97f9fbac140488813aef92ce36aa292"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"28f22147cd5b57b773580776ffb0925258ba60ca","unresolved":false,"context_lines":[{"line_number":184,"context_line":"        self.rabbitmq_environment \u003d self.useFixture("},{"line_number":185,"context_line":"            process.RabbitmqEnvironmentFixture())"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        # Statically assume that the neutron-server is part of the first host"},{"line_number":188,"context_line":"        plugin_cfg_fixture \u003d self.useFixture("},{"line_number":189,"context_line":"            config.ML2ConfigFixture("},{"line_number":190,"context_line":"                self.env_desc, None, self.temp_dir, \u0027vlan\u0027))"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa1b9901_68c67d69","line":187,"in_reply_to":"fa1b9901_9d6795b6","updated":"2015-08-20 12:33:56.000000000","message":"Done","commit_id":"9fef61e0f97f9fbac140488813aef92ce36aa292"}],"neutron/tests/fullstack/resources/process.py":[{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"0f3223d7198732c189440f0216099c476a09726e","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        self.plugin_config \u003d self.l3_agent_cfg_fixture.config"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"        config_filenames \u003d [self.neutron_cfg_fixture.filename,"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"                            self.l3_agent_cfg_fixture.filename]"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"        self.process_fixture \u003d self.useFixture(ProcessFixture("}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_b7888672","line":173,"updated":"2015-08-11 19:37:05.000000000","message":"Oh no, the newline of doom and harbinger of -1\u0027s.","commit_id":"f673b0715ea1b7d3f749b9530413ed57672db426"},{"author":{"_account_id":12444,"name":"John Schwarz","email":"jschwarz@redhat.com","username":"jschwarz"},"change_message_id":"3133f1b5f9c19347834de2a2c06798ca15b877dd","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        self.plugin_config \u003d self.l3_agent_cfg_fixture.config"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"        config_filenames \u003d [self.neutron_cfg_fixture.filename,"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"                            self.l3_agent_cfg_fixture.filename]"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"        self.process_fixture \u003d self.useFixture(ProcessFixture("}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_a21d4563","line":173,"in_reply_to":"1a4dcd0f_b7888672","updated":"2015-08-13 14:18:03.000000000","message":"Done","commit_id":"f673b0715ea1b7d3f749b9530413ed57672db426"}]}
