)]}'
{"doc/source/contributor/api/haproxy-amphora-api.rst":[{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"b07a2d7d995b2dd5ce3eb7f00618b54f484b0cf5","unresolved":false,"context_lines":[{"line_number":1561,"context_line":"::"},{"line_number":1562,"context_line":""},{"line_number":1563,"context_line":"  PUT URL:"},{"line_number":1564,"context_line":"  https://octavia-haproxy-img-00328.local/v0.1/config"},{"line_number":1565,"context_line":"  (Upload PUT data should be a raw amphora-agent.conf file.)"},{"line_number":1566,"context_line":""},{"line_number":1567,"context_line":"  JSON Response:"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9fdfeff1_549a5e6e","line":1564,"updated":"2019-02-05 22:15:00.000000000","message":"isn\u0027t the lowest (and only prior) version that exists v0.5?","commit_id":"93974f2d7f7c8950107bc3ab33f72bac5a30ea7e"}],"octavia/amphorae/backends/health_daemon/health_sender.py":[{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"b07a2d7d995b2dd5ce3eb7f00618b54f484b0cf5","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"class UDPStatusSender(object):"},{"line_number":35,"context_line":"    def __init__(self):"},{"line_number":36,"context_line":"        self.dests \u003d []"},{"line_number":37,"context_line":"        self.current_controller_ip_port_list \u003d ("},{"line_number":38,"context_line":"            CONF.health_manager.controller_ip_port_list)"},{"line_number":39,"context_line":"        for ipport in CONF.health_manager.controller_ip_port_list:"},{"line_number":40,"context_line":"            try:"},{"line_number":41,"context_line":"                ip, port \u003d ipport.rsplit(\u0027:\u0027, 1)"},{"line_number":42,"context_line":"            except ValueError:"},{"line_number":43,"context_line":"                LOG.error(\"Invalid ip and port \u0027%s\u0027 in health_manager \""},{"line_number":44,"context_line":"                          \"controller_ip_port_list\", ipport)"},{"line_number":45,"context_line":"                break"},{"line_number":46,"context_line":"            self.update(ip, port)"},{"line_number":47,"context_line":"        self.v4sock \u003d socket.socket(socket.AF_INET, socket.SOCK_DGRAM)"},{"line_number":48,"context_line":"        self.v6sock \u003d socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)"},{"line_number":49,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9fdfeff1_74a1a295","line":46,"range":{"start_line":36,"start_character":8,"end_line":46,"end_character":33},"updated":"2019-02-05 22:15:00.000000000","message":"Would it be cleaner just to replace these lines with a call to _update_dests? So we only have one path for loading the port list? Stay DRY out there...","commit_id":"93974f2d7f7c8950107bc3ab33f72bac5a30ea7e"}],"octavia/amphorae/driver_exceptions/exceptions.py":[{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"b07a2d7d995b2dd5ce3eb7f00618b54f484b0cf5","unresolved":false,"context_lines":[{"line_number":118,"context_line":"    message \u003d _(\u0027couldn\\\u0027t provision Node\u0027)"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"class AmpDrvrNotImplementedError(AmphoraDriverError):"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    message \u003d _(\u0027Amphora does not implement this feature.\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fdfeff1_b4fe2a69","line":121,"updated":"2019-02-05 22:15:00.000000000","message":"Really? Is this abbrv. necessary?","commit_id":"93974f2d7f7c8950107bc3ab33f72bac5a30ea7e"}],"octavia/controller/worker/flows/amphora_flows.py":[{"author":{"_account_id":29621,"name":"Rufei Xu","email":"891872629@qq.com"},"change_message_id":"b12721a1310d15652c459b569630a4c3962bed0a","unresolved":false,"context_lines":[{"line_number":367,"context_line":""},{"line_number":368,"context_line":"        # Get a new amphora"},{"line_number":369,"context_line":"        # Note: Role doesn\u0027t matter here.  We will update it later."},{"line_number":370,"context_line":"        get_amp_subflow \u003d self.get_amphora_for_lb_subflow("},{"line_number":371,"context_line":"            prefix\u003dconstants.FAILOVER_AMPHORA_FLOW)"},{"line_number":372,"context_line":"        failover_amphora_flow.add(get_amp_subflow)"},{"line_number":373,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fdfeff1_d838733e","line":370,"range":{"start_line":370,"start_character":31,"end_line":370,"end_character":57},"updated":"2019-01-25 10:42:25.000000000","message":"Does flavor provided here?","commit_id":"27f83cd2514bc52750ff0fa4663c37130349e6d6"},{"author":{"_account_id":29621,"name":"Rufei Xu","email":"891872629@qq.com"},"change_message_id":"dd2b20dbf9e92356bfe7c2df5b134cf597a80572","unresolved":false,"context_lines":[{"line_number":367,"context_line":""},{"line_number":368,"context_line":"        # Get a new amphora"},{"line_number":369,"context_line":"        # Note: Role doesn\u0027t matter here.  We will update it later."},{"line_number":370,"context_line":"        get_amp_subflow \u003d self.get_amphora_for_lb_subflow("},{"line_number":371,"context_line":"            prefix\u003dconstants.FAILOVER_AMPHORA_FLOW)"},{"line_number":372,"context_line":"        failover_amphora_flow.add(get_amp_subflow)"},{"line_number":373,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fdfeff1_e9f782d2","line":370,"range":{"start_line":370,"start_character":31,"end_line":370,"end_character":57},"in_reply_to":"9fdfeff1_0ee52cdc","updated":"2019-01-29 01:24:15.000000000","message":"Thanks. I found it in _perform_amphora_failover, controller_workerr,py,Change \n\"Add compute flavor support to the amphora driver\".","commit_id":"27f83cd2514bc52750ff0fa4663c37130349e6d6"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"d31dde1ae33cb22603aef57fbb8522c86d943662","unresolved":false,"context_lines":[{"line_number":367,"context_line":""},{"line_number":368,"context_line":"        # Get a new amphora"},{"line_number":369,"context_line":"        # Note: Role doesn\u0027t matter here.  We will update it later."},{"line_number":370,"context_line":"        get_amp_subflow \u003d self.get_amphora_for_lb_subflow("},{"line_number":371,"context_line":"            prefix\u003dconstants.FAILOVER_AMPHORA_FLOW)"},{"line_number":372,"context_line":"        failover_amphora_flow.add(get_amp_subflow)"},{"line_number":373,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fdfeff1_0ee52cdc","line":370,"range":{"start_line":370,"start_character":31,"end_line":370,"end_character":57},"in_reply_to":"9fdfeff1_d838733e","updated":"2019-01-29 00:22:34.000000000","message":"Flavor is used in this subflow and is passed into it via the flow storage. Not sure if that answers your question.","commit_id":"27f83cd2514bc52750ff0fa4663c37130349e6d6"}]}
