)]}'
{"octavia/common/constants.py":[{"author":{"_account_id":6437,"name":"Susanne Balle","email":"sleipnir012@gmail.com","username":"susanne-balle"},"change_message_id":"bbc601d2650ce636b3ba5473421fae8ba6c7c7ec","unresolved":false,"context_lines":[{"line_number":51,"context_line":"ERROR \u003d \u0027ERROR\u0027"},{"line_number":52,"context_line":"SUPPORTED_OPERATING_STATUSES \u003d (ONLINE, OFFLINE, DEGRADED, ERROR)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"AMPHORA_VM \u003d \u0027VM\u0027"},{"line_number":55,"context_line":"AMPHORA_TYPES \u003d (AMPHORA_VM, )"}],"source_content_type":"text/x-python","patch_set":9,"id":"7a8c0949_ea9ccbc2","line":54,"updated":"2014-11-05 20:08:51.000000000","message":"In the spec amphora is amphora and not amphora_vm or vm. \n\nSo it should be AMPHORA \u003d \u0027VM\u0027\n\nAlso do we care that it is a VM? Should we just called it HAPROXY? and assume it is in a VM. The important thing is HAPROXY so the type of load-balancer.","commit_id":"0a2d91353ab48879d424294ba75f9c1060d9adb4"},{"author":{"_account_id":10806,"name":"Trevor Vardeman","email":"tvardema@redhat.com","username":"tvardeman"},"change_message_id":"0ede0272c30f2c1b3db172d024a2ea8d02421786","unresolved":false,"context_lines":[{"line_number":51,"context_line":"ERROR \u003d \u0027ERROR\u0027"},{"line_number":52,"context_line":"SUPPORTED_OPERATING_STATUSES \u003d (ONLINE, OFFLINE, DEGRADED, ERROR)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"AMPHORA_VM \u003d \u0027VM\u0027"},{"line_number":55,"context_line":"AMPHORA_TYPES \u003d (AMPHORA_VM, )"}],"source_content_type":"text/x-python","patch_set":9,"id":"7a8c0949_8a918754","line":54,"in_reply_to":"7a8c0949_ea9ccbc2","updated":"2014-11-05 21:14:37.000000000","message":"This is the beginning of a list of valid amphora types.  Only one item exists in that list right now since that\u0027s all I needed at the moment.  I preceded the type with the word \"AMPHORA\" to be descriptive in case we had other types defined as constants, but could be removed.","commit_id":"0a2d91353ab48879d424294ba75f9c1060d9adb4"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"2d2019d76a1b4dbb1301aaf9367f10ac4f5788cd","unresolved":false,"context_lines":[{"line_number":48,"context_line":"ONLINE \u003d \u0027ONLINE\u0027"},{"line_number":49,"context_line":"OFFLINE \u003d \u0027OFFLINE\u0027"},{"line_number":50,"context_line":"DEGRADED \u003d \u0027DEGRADED\u0027"},{"line_number":51,"context_line":"ERROR \u003d \u0027ERROR\u0027"},{"line_number":52,"context_line":"SUPPORTED_OPERATING_STATUSES \u003d (ONLINE, OFFLINE, DEGRADED, ERROR)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"AMPHORA_VM \u003d \u0027VM\u0027"}],"source_content_type":"text/x-python","patch_set":18,"id":"5a890539_e408b32a","line":51,"updated":"2014-11-19 17:51:43.000000000","message":"NIT: ERROR is defined twice...","commit_id":"389629aba4d778bd9aa2471ba589b397ac3aa926"}],"octavia/compute/compute_base.py":[{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"fe79369ae45296025d2e7269e620f978f0db56c6","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"@six.add_metaclass(abc.ABCMeta)"},{"line_number":23,"context_line":"class ComputeBase(object):"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    @abc.abstractmethod"},{"line_number":26,"context_line":"    def get_logger(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9aa7fdbe_63dcea47","line":23,"updated":"2014-10-29 02:58:28.000000000","message":"Need docstring on class, just defining what it is meant for.","commit_id":"c91447bc002fc1340e3b040aea3cb21d367d5c35"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"fe79369ae45296025d2e7269e620f978f0db56c6","unresolved":false,"context_lines":[{"line_number":23,"context_line":"class ComputeBase(object):"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    @abc.abstractmethod"},{"line_number":26,"context_line":"    def get_logger(self):"},{"line_number":27,"context_line":"        pass"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"    @abc.abstractmethod"}],"source_content_type":"text/x-python","patch_set":3,"id":"9aa7fdbe_83e1ce00","line":26,"updated":"2014-10-29 02:58:28.000000000","message":"need docstrings on all methods.","commit_id":"c91447bc002fc1340e3b040aea3cb21d367d5c35"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"fe79369ae45296025d2e7269e620f978f0db56c6","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        pass"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    @abc.abstractmethod"},{"line_number":35,"context_line":"    def delete(self, amphora):"},{"line_number":36,"context_line":"        pass"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    @abc.abstractmethod"}],"source_content_type":"text/x-python","patch_set":3,"id":"9aa7fdbe_a3e5f20b","line":35,"updated":"2014-10-29 02:58:28.000000000","message":"amphora_id not amphora","commit_id":"c91447bc002fc1340e3b040aea3cb21d367d5c35"},{"author":{"_account_id":6437,"name":"Susanne Balle","email":"sleipnir012@gmail.com","username":"susanne-balle"},"change_message_id":"bbc601d2650ce636b3ba5473421fae8ba6c7c7ec","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        pass"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    @abc.abstractmethod"},{"line_number":34,"context_line":"    def build(self, amphora_type\u003dconstants.AMPHORA_VM, amphora_flavor\u003dNone,"},{"line_number":35,"context_line":"              key\u003dNone, security_group\u003dNone):"},{"line_number":36,"context_line":"        \"\"\"Build a new amphora."},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"7a8c0949_2aa7b30d","line":34,"updated":"2014-11-05 20:08:51.000000000","message":"Should just be AMPHORA","commit_id":"0a2d91353ab48879d424294ba75f9c1060d9adb4"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"7a3c3648b81235e2f2007063a10d7a78fcb6e131","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    @abc.abstractmethod"},{"line_number":34,"context_line":"    def build(self, amphora_type\u003dconstants.AMPHORA_VM, amphora_flavor\u003dNone,"},{"line_number":35,"context_line":"              key\u003dNone, security_group\u003dNone):"},{"line_number":36,"context_line":"        \"\"\"Build a new amphora."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        :param amphora_type: The type of amphora to create.  For"}],"source_content_type":"text/x-python","patch_set":9,"id":"7a8c0949_0a303755","line":35,"updated":"2014-11-05 21:51:02.000000000","message":"missing parameters defined in the spec","commit_id":"0a2d91353ab48879d424294ba75f9c1060d9adb4"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"7a3c3648b81235e2f2007063a10d7a78fcb6e131","unresolved":false,"context_lines":[{"line_number":87,"context_line":""},{"line_number":88,"context_line":"        :param amphora_id: the id of the instance to suspend\t110"},{"line_number":89,"context_line":"        \"\"\""},{"line_number":90,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":9,"id":"7a8c0949_8a3b4737","line":90,"updated":"2014-11-05 21:51:02.000000000","message":"backup, start, stop, get_amphora methods were defined in the spec, but not here","commit_id":"0a2d91353ab48879d424294ba75f9c1060d9adb4"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"09013ca02f29eb2bcd17046be3188da748ebe21d","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        \"\"\"Retrieve an amphora object"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        The method should enforce at least one of the parameters be not None,"},{"line_number":73,"context_line":"        and provide one with priority assuming both are not None"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        :param amphora_id: the id of the desired amphora"},{"line_number":76,"context_line":"        :param amphora_name: the name of the desired amphora"}],"source_content_type":"text/x-python","patch_set":10,"id":"7a8c0949_072bba30","line":73,"updated":"2014-11-06 22:33:12.000000000","message":"I don\u0027t think it needs to enforce not None, mainly because if this only accepted one ordered parameter (not keyword) then would we check that the caller passed in None as the parameter?  This description should just say which parameter will take priority.  This also leads to an issue with having this in that implementations are not forced to use the priority.  We\u0027ll just act like that can\u0027t happen for now.","commit_id":"9bdd82d88cdcd85a1df40e5bbaa2400c87c60c25"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"c52f4f04443524fd0043b16864043a1d5ae2e3fc","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    @abc.abstractmethod"},{"line_number":34,"context_line":"    def build(self, amphora_type\u003dconstants.AMPHORA_VM, amphora_flavor\u003dNone,"},{"line_number":35,"context_line":"              image_id\u003dNone, keys\u003dNone, sec_groups\u003dNone, network_ids\u003dNone):"},{"line_number":36,"context_line":"        \"\"\"Build a new amphora."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        :param amphora_type: The type of amphora to create.  For"}],"source_content_type":"text/x-python","patch_set":12,"id":"5a890539_e0d8a855","line":35,"updated":"2014-11-11 05:16:36.000000000","message":"so now I\u0027m not sure we need the amphora_type kwarg, because nova will be used for VMs, magnum for containers, and ironic for bare metal.  So there could just be nova, magnum, and ironic implementations of this interface.  Of course, we\u0027d need to make an interface that works for all of them so need some research on that.  gonna -1 until that is figured out.","commit_id":"3652a4fb587f32c474694ac643abfda814a1702c"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"eeb1afbff06cb35cf7b90dccfa8d89cae966fb00","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        \"\"\"Build a new amphora."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        :param amphora_type: The type of amphora to create.  For\t38"},{"line_number":39,"context_line":"        version 0.5, only VM is supported.  In the future this\t39"},{"line_number":40,"context_line":"        may support Container, BareMetal, and HWLoadBalancer."},{"line_number":41,"context_line":"        :param amphora_flavor: Optionally specify a flavor"},{"line_number":42,"context_line":"        :param image_id: ID of the base image for the amphora instance"}],"source_content_type":"text/x-python","patch_set":16,"id":"5a890539_609f6fb5","line":39,"updated":"2014-11-18 23:22:44.000000000","message":"methinks you have a copy pasta fail here, with line numbers. :(\n\nplus i wouldn\u0027t put anything in these docstrings about what is supported now and what is possibly planned.","commit_id":"d103844c2444b03261741ca4680098d91cb6f3e5"},{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"7443cd5ae691dbcba48dde4081c3fc1df78e8731","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        \"\"\"Build a new amphora."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        :param amphora_type: The type of amphora to create.  For\t38"},{"line_number":39,"context_line":"        version 0.5, only VM is supported.  In the future this\t39"},{"line_number":40,"context_line":"        may support Container, BareMetal, and HWLoadBalancer."},{"line_number":41,"context_line":"        :param amphora_flavor: Optionally specify a flavor"},{"line_number":42,"context_line":"        :param image_id: ID of the base image for the amphora instance"}],"source_content_type":"text/x-python","patch_set":16,"id":"5a890539_be7177e2","line":39,"in_reply_to":"5a890539_609f6fb5","updated":"2014-11-19 01:37:37.000000000","message":"Giving a more concise example of what is valid here (eg. \"Type of amphora to create. (ex. \u0027VM\u0027)\" ) is probably sufficient. Also, I agree there\u0027s no need to mention in the docstring what is potentially planned eh.","commit_id":"d103844c2444b03261741ca4680098d91cb6f3e5"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"eeb1afbff06cb35cf7b90dccfa8d89cae966fb00","unresolved":false,"context_lines":[{"line_number":61,"context_line":"        \"\"\"Check whether the specified amphora is up"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"        :param amphora_id: the ID of the desired amphora"},{"line_number":64,"context_line":"        :returns: the nova response from the amphora"},{"line_number":65,"context_line":"        \"\"\""},{"line_number":66,"context_line":"        pass"},{"line_number":67,"context_line":""}],"source_content_type":"text/x-python","patch_set":16,"id":"5a890539_a086b711","line":64,"updated":"2014-11-18 23:22:44.000000000","message":"do you mean here it will return the string value nova responds with for \"status\"?","commit_id":"d103844c2444b03261741ca4680098d91cb6f3e5"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"0e5ee4098b41b28e159ee3d93f01e4955f064476","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        pass"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"    @abc.abstractmethod"},{"line_number":69,"context_line":"    def get_amphora(self, amphora_id\u003dNone, amphora_name\u003dNone):"},{"line_number":70,"context_line":"        \"\"\"Retrieve an amphora object"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        This method will prioritize the amphora_id parameter"}],"source_content_type":"text/x-python","patch_set":16,"id":"5a890539_bbaeea2d","line":69,"updated":"2014-11-19 00:10:20.000000000","message":"would anyone object to getting rid of the amphora_name parameter and only getting amphorae by id and not having to update the spec?  I don\u0027t see a use case where Octavia will not have the amphora_id available but the name would be.","commit_id":"d103844c2444b03261741ca4680098d91cb6f3e5"},{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"7443cd5ae691dbcba48dde4081c3fc1df78e8731","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        pass"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"    @abc.abstractmethod"},{"line_number":69,"context_line":"    def get_amphora(self, amphora_id\u003dNone, amphora_name\u003dNone):"},{"line_number":70,"context_line":"        \"\"\"Retrieve an amphora object"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        This method will prioritize the amphora_id parameter"}],"source_content_type":"text/x-python","patch_set":16,"id":"5a890539_1e57eb27","line":69,"in_reply_to":"5a890539_bbaeea2d","updated":"2014-11-19 01:37:37.000000000","message":"I also don\u0027t think we\u0027ll generally care about the amphora_name. So yes, I agree that we probably only need the amphora_id here.","commit_id":"d103844c2444b03261741ca4680098d91cb6f3e5"}]}
