vmware-archive / halite

DEPRECATED: A client-side web application interface to a running Salt infrastructure
Other
414 stars 117 forks source link

halite is broken when using the master with IPv6 #174

Closed Nibbler999 closed 6 years ago

Nibbler999 commented 10 years ago

This is basically a copy of https://github.com/saltstack/salt/issues/7568 which is now closed.

If it's not fixable then this needs to be documented since it's not at all obvious that this is not supported.

Let me know if there's anything I can do to help debug.

pass-by-value commented 10 years ago

Hi @Nibbler999

It surely is a duplicate of that salt issue. There was also #160 created in Halite for the same.

Do the comments in #160 provide any help? I was able to get it to work then. Please let me know what you see.

Nibbler999 commented 10 years ago

160 is not related as I am accessing halite over IPv4. The master supports minions connecting over IPv6, but when I enable this (ipv6: True in master config) I am unable to login to halite. When I click the login button I get 'Login Failed'. When I ran the salt-master from a terminal I see it start up halite:

[root@salt ~]# salt-master 

20140515_152659.428886 Bottle: Running web application server 'cherrypy' on 0.0.0.0:82.
20140515_152659.435274 Bottle: CORS is disabled.
20140515_152659.435453 Bottle: TLS/SSL is disabled.
20140515_152659.435835 Bottle: Server options: 
{}
Bottle v0.12-dev server starting up (using CherryPyServer())...
Listening on http://0.0.0.0:82/
Hit Ctrl-C to quit.

And when I click login I get the following

Exception AttributeError: "'SREQ' object has no attribute 'poller'" in <bound method SREQ.__del__ of <salt.payload.SREQ object at 0x7f713c0546d0>> ignored
pass-by-value commented 10 years ago

@Nibbler999 what is the value for interface in your salt master config file?

Nibbler999 commented 10 years ago

It's set to '::'

pass-by-value commented 10 years ago

Same as mine.

I was able to get it to work by changing this to

if master.startswith('tcp://::') or master.startswith('tcp://[') and hasattr(zmq, 'IPV4ONLY'):

I'm gonna verify that it does the right thing before I submit it as a patch. Will keep you posted @Nibbler999

Nibbler999 commented 10 years ago

I can confirm your suggestion does fix the login issue. Good job.

MTecknology commented 10 years ago

I ran into this same issue and this resolved the issue for me. Seems a nice and simple resolution. :+1:

rallytime commented 6 years ago

This repo is deprecated and archived. Therefore, this issue is now closed. Thank you.