)]}'
{"etc/octavia.conf":[{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"53e1c88b2ad5e71f9daa4023751e93d50aa2e8c4","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"[haproxy_amphora]"},{"line_number":57,"context_line":"# username \u003d ubuntu"},{"line_number":58,"context_line":"# key_name \u003d /home/stack/.ssh/id_rsa"},{"line_number":59,"context_line":"# base_path \u003d /var/lib/octavia"},{"line_number":60,"context_line":"# base_cert_dir \u003d /var/lib/octavia/certs"},{"line_number":61,"context_line":"# haproxy_template \u003d /var/lib/octavia/custom_template"}],"source_content_type":"text/plain","patch_set":1,"id":"3acd31a7_4ae9a0e5","line":58,"updated":"2015-05-04 04:59:56.000000000","message":"This works with some devstack instances, I assume, though all of the devstack scripts I use (which are based on the official \"devstack/tools/create-stack-user.sh\") put the stack user\u0027s homedir in /opt/stack instead.\n\nAlso, was key_name originally supposed to be something other than the full path to the ssh key file? It\u0027s kind of a strange config name for this (though not your issue, and MAYBE a bit late to change).","commit_id":"9eeb7368c57891953f09d6311bf3015137a5b03c"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"11df93f80f9fca35080baddbd572e817b7d0e2b0","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"[haproxy_amphora]"},{"line_number":57,"context_line":"# username \u003d ubuntu"},{"line_number":58,"context_line":"# key_name \u003d /home/stack/.ssh/id_rsa"},{"line_number":59,"context_line":"# base_path \u003d /var/lib/octavia"},{"line_number":60,"context_line":"# base_cert_dir \u003d /var/lib/octavia/certs"},{"line_number":61,"context_line":"# haproxy_template \u003d /var/lib/octavia/custom_template"}],"source_content_type":"text/plain","patch_set":1,"id":"3acd31a7_aa93944e","line":58,"in_reply_to":"3acd31a7_4ae9a0e5","updated":"2015-05-04 05:02:49.000000000","message":"Found where this is explicitly set:\nhttps://github.com/openstack-dev/devstack/blob/master/stackrc#L12","commit_id":"9eeb7368c57891953f09d6311bf3015137a5b03c"},{"author":{"_account_id":11302,"name":"Phillip Toohill","email":"phillip.toohill@rackspace.com","username":"ptoohill1"},"change_message_id":"7c935afbe5dd397a4827d830ef78c51f41a15d9f","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"[haproxy_amphora]"},{"line_number":57,"context_line":"# username \u003d ubuntu"},{"line_number":58,"context_line":"# key_name \u003d /home/stack/.ssh/id_rsa"},{"line_number":59,"context_line":"# base_path \u003d /var/lib/octavia"},{"line_number":60,"context_line":"# base_cert_dir \u003d /var/lib/octavia/certs"},{"line_number":61,"context_line":"# haproxy_template \u003d /var/lib/octavia/custom_template"}],"source_content_type":"text/plain","patch_set":1,"id":"3acd31a7_986267ac","line":58,"in_reply_to":"3acd31a7_aa93944e","updated":"2015-05-04 13:30:17.000000000","message":"I\u0027ll change to /opt. This patch was made to start conversation about these questions. Key_name is a horrible name when ts actually a path that is required.","commit_id":"9eeb7368c57891953f09d6311bf3015137a5b03c"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"53e1c88b2ad5e71f9daa4023751e93d50aa2e8c4","unresolved":false,"context_lines":[{"line_number":62,"context_line":"# The following may need to be an absolute location:"},{"line_number":63,"context_line":"# base_log_dir \u003d /logs"},{"line_number":64,"context_line":"# connection_max_retries \u003d 10"},{"line_number":65,"context_line":"# connection_retry_interval \u003d 5.0"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"[controller_worker]"},{"line_number":68,"context_line":"# amp_active_wait_sec \u003d 10"}],"source_content_type":"text/plain","patch_set":1,"id":"3acd31a7_aad71422","line":65,"updated":"2015-05-04 04:59:56.000000000","message":"Did this become a float just to illustrate that passing a float value is possible?","commit_id":"9eeb7368c57891953f09d6311bf3015137a5b03c"},{"author":{"_account_id":11302,"name":"Phillip Toohill","email":"phillip.toohill@rackspace.com","username":"ptoohill1"},"change_message_id":"7c935afbe5dd397a4827d830ef78c51f41a15d9f","unresolved":false,"context_lines":[{"line_number":62,"context_line":"# The following may need to be an absolute location:"},{"line_number":63,"context_line":"# base_log_dir \u003d /logs"},{"line_number":64,"context_line":"# connection_max_retries \u003d 10"},{"line_number":65,"context_line":"# connection_retry_interval \u003d 5.0"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"[controller_worker]"},{"line_number":68,"context_line":"# amp_active_wait_sec \u003d 10"}],"source_content_type":"text/plain","patch_set":1,"id":"3acd31a7_98edc727","line":65,"in_reply_to":"3acd31a7_aad71422","updated":"2015-05-04 13:30:17.000000000","message":"That\u0027s what is required. If we don\u0027t want a float here the code will need to convert. I was only focused on updating the config.","commit_id":"9eeb7368c57891953f09d6311bf3015137a5b03c"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"bd8d02f99aaf30a824985d522913959e21c263b1","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"[haproxy_amphora]"},{"line_number":57,"context_line":"# username \u003d ubuntu"},{"line_number":58,"context_line":"# key_name \u003d /home/stack/.ssh/id_rsa"},{"line_number":59,"context_line":"# base_path \u003d /var/lib/octavia"},{"line_number":60,"context_line":"# base_cert_dir \u003d /var/lib/octavia/certs"},{"line_number":61,"context_line":"# haproxy_template \u003d /var/lib/octavia/custom_template"}],"source_content_type":"text/plain","patch_set":3,"id":"3acd31a7_6c36ad53","line":58,"updated":"2015-05-04 15:20:29.000000000","message":"Default changed in the other file but not here.","commit_id":"7334cdbdfa85f9c910c25b6453df89deb638951a"}],"octavia/amphorae/drivers/haproxy/ssh_driver.py":[{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"bd8d02f99aaf30a824985d522913959e21c263b1","unresolved":false,"context_lines":[{"line_number":169,"context_line":"                                    key_filename\u003dself.amp_config.key_name)"},{"line_number":170,"context_line":"            except socket.error:"},{"line_number":171,"context_line":"                LOG.warn(_LW(\"Could not ssh to instance\"))"},{"line_number":172,"context_line":"                time.sleep(float(self.amp_config.connection_retry_interval))"},{"line_number":173,"context_line":"                if attempts \u003e\u003d self.amp_config.connection_max_retries:"},{"line_number":174,"context_line":"                    raise exc.TimeOutException()"},{"line_number":175,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3acd31a7_8c08e992","line":172,"updated":"2015-05-04 15:20:29.000000000","message":"I think sleep() works with either a float or an integer, so casting probably isn\u0027t necessary -- my question before was really just curiosity (unless configparser loads in \"5.0\" as a string and not a float).","commit_id":"7334cdbdfa85f9c910c25b6453df89deb638951a"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"b9923fa4f3369c1caa3ae5f2ac3525b1f3c9ebd1","unresolved":false,"context_lines":[{"line_number":166,"context_line":"            try:"},{"line_number":167,"context_line":"                self.client.connect(hostname\u003dhostname,"},{"line_number":168,"context_line":"                                    username\u003dself.amp_config.username,"},{"line_number":169,"context_line":"                                    key_filename\u003dself.amp_config.Key_path)"},{"line_number":170,"context_line":"            except socket.error:"},{"line_number":171,"context_line":"                LOG.warn(_LW(\"Could not ssh to instance\"))"},{"line_number":172,"context_line":"                time.sleep(self.amp_config.connection_retry_interval)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3acd31a7_19df766a","line":169,"range":{"start_line":169,"start_character":0,"end_line":169,"end_character":36},"updated":"2015-05-04 15:55:06.000000000","message":"This got capitalized somehow. :(","commit_id":"2b3b4762a38d14fa0c42701a8707a3b9b1b08354"}],"octavia/common/config.py":[{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"53e1c88b2ad5e71f9daa4023751e93d50aa2e8c4","unresolved":false,"context_lines":[{"line_number":112,"context_line":"               help\u003d_(\u0027Retry threshold for connecting to amphorae.\u0027)),"},{"line_number":113,"context_line":"    cfg.FloatOpt(\u0027connection_retry_interval\u0027,"},{"line_number":114,"context_line":"                 default\u003d5.0,"},{"line_number":115,"context_line":"                 help\u003d_(\u0027Retry timeout between attempts.\u0027))"},{"line_number":116,"context_line":"]"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"controller_worker_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"3acd31a7_8a833804","line":115,"updated":"2015-05-04 04:59:56.000000000","message":"I am assuming this is in seconds, though it might be good to specify (not that it\u0027s your comment string, but while you\u0027re here, might be a useful update).","commit_id":"9eeb7368c57891953f09d6311bf3015137a5b03c"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"b9923fa4f3369c1caa3ae5f2ac3525b1f3c9ebd1","unresolved":false,"context_lines":[{"line_number":96,"context_line":"    cfg.StrOpt(\u0027username\u0027,"},{"line_number":97,"context_line":"               default\u003d\u0027ubuntu\u0027,"},{"line_number":98,"context_line":"               help\u003d_(\u0027Name of user for access to amphora.\u0027)),"},{"line_number":99,"context_line":"    cfg.StrOpt(\u0027key_name\u0027,"},{"line_number":100,"context_line":"               default\u003d\u0027/opt/stack/.ssh/id_rsa\u0027,"},{"line_number":101,"context_line":"               help\u003d_(\u0027Local absolute path to the pivate key \u0027"},{"line_number":102,"context_line":"                      \u0027loaded on amphora at boot.\u0027)),"}],"source_content_type":"text/x-python","patch_set":4,"id":"3acd31a7_b9e3e232","line":99,"updated":"2015-05-04 15:55:06.000000000","message":"key_path here too","commit_id":"2b3b4762a38d14fa0c42701a8707a3b9b1b08354"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"652a14cd98d81b813b93cad43a8515acbc3bc949","unresolved":false,"context_lines":[{"line_number":98,"context_line":"               help\u003d_(\u0027Name of user for access to amphora.\u0027)),"},{"line_number":99,"context_line":"    cfg.StrOpt(\u0027key_path\u0027,"},{"line_number":100,"context_line":"               default\u003d\u0027/opt/stack/.ssh/id_rsa\u0027,"},{"line_number":101,"context_line":"               help\u003d_(\u0027Local absolute path to the pivate key \u0027"},{"line_number":102,"context_line":"                      \u0027loaded on amphora at boot.\u0027)),"},{"line_number":103,"context_line":"    cfg.StrOpt(\u0027base_path\u0027,"},{"line_number":104,"context_line":"               default\u003d\u0027/var/lib/octavia\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3acd31a7_399d9259","line":101,"updated":"2015-05-04 16:01:58.000000000","message":"Oh no! pivate key! :)","commit_id":"eddd257bcdbf05ac9d298805b8caa74bcd8999e0"}]}
