diff mbox

Write correct 'mon_host' with IPv6 addresses

Message ID 1399549483-14813-1-git-send-email-wido@widodh.nl (mailing list archive)
State New, archived
Headers show

Commit Message

Wido den Hollander May 8, 2014, 11:44 a.m. UTC
When the IP-address from a monitor is a IPv6 address, encapsulate
it with [ and ]

Fixes: #8309

Signed-off-by: Wido den Hollander <wido@widodh.nl>
---
 ceph_deploy/new.py |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/ceph_deploy/new.py b/ceph_deploy/new.py
index 3680821..fc4c5f4 100644
--- a/ceph_deploy/new.py
+++ b/ceph_deploy/new.py
@@ -5,6 +5,7 @@  import uuid
 import struct
 import time
 import base64
+import socket
 
 from ceph_deploy.cliutil import priority
 from ceph_deploy import conf, hosts, exc
@@ -90,7 +91,12 @@  def new(args):
         ip = net.get_nonlocal_ip(host)
         LOG.debug('Monitor %s at %s', name, ip)
         mon_initial_members.append(name)
-        mon_host.append(ip)
+        try:
+            socket.inet_pton(socket.AF_INET6, ip)
+            mon_host.append("[" + ip + "]")
+        except socket.error:
+            mon_host.append(ip)
+
         if args.ssh_copykey:
             ssh_copy_keys(host, args.username)