zulip / zulip Goto Github PK
View Code? Open in Web Editor NEWZulip server and web application. Open-source team chat that helps teams stay productive and focused.
Home Page: https://zulip.com
License: Apache License 2.0
Zulip server and web application. Open-source team chat that helps teams stay productive and focused.
Home Page: https://zulip.com
License: Apache License 2.0
I just wondered around in the application. And it started to say that couldn't connect to the server. At the time cpu usage jump up to 100%. The reloading of the page give only 500 error page. Error log ful of meesages of this kind:
2015-09-26 13:06:47,982 ERROR Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/decorator.py", line 85, in wrapper
return func(request, *args, **kwargs)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/decorator.py", line 474, in _wrapped_view_func
return view_func(request, *args, **kwargs)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/decorator.py", line 301, in _wrapped_view_func
return authenticate_log_and_execute_json(request, view_func, *args, **kwargs)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/decorator.py", line 288, in authenticate_log_and_execute_json
process_client(request, user_profile, True)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/decorator.py", line 134, in process_client
update_user_activity(request, user_profile)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/decorator.py", line 69, in update_user_activity
queue_json_publish("user_activity", event, lambda event: None)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/lib/queue.py", line 259, in queue_json_publish
get_queue_client().json_publish(queue_name, event)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/lib/queue.py", line 240, in get_queue_client
queue_client = SimpleQueueClient()
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/lib/queue.py", line 25, in __init__
self._connect()
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/lib/queue.py", line 29, in _connect
self.connection = pika.BlockingConnection(self._get_parameters())
File "/usr/lib/python2.7/dist-packages/pika/adapters/blocking_connection.py", line 107, in __init__
super(BlockingConnection, self).__init__(parameters, None, False)
File "/usr/lib/python2.7/dist-packages/pika/adapters/base_connection.py", line 62, in __init__
on_close_callback)
File "/usr/lib/python2.7/dist-packages/pika/connection.py", line 590, in __init__
self.connect()
File "/usr/lib/python2.7/dist-packages/pika/adapters/blocking_connection.py", line 206, in connect
if not self._adapter_connect():
File "/usr/lib/python2.7/dist-packages/pika/adapters/blocking_connection.py", line 275, in _adapter_connect
raise exceptions.AMQPConnectionError(1)
AMQPConnectionError: 1
The application runs on the clean Ubuntu 14.04 on VM with 2Gb and 2 cpu cores. For installation I followed instructions from here https://zulip.org/server.html
ps
output:
root@ubuntu:/var/log/zulip# ps aux | sort -rk 3,3 | head -n 20
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
zulip 2109 9.7 4.9 225748 50168 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue user_activity
zulip 2119 9.2 4.7 221452 47972 ? S 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue message_sender 2
zulip 2095 9.2 5.0 226124 50792 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue slow_queries
zulip 2088 9.2 5.0 226128 50796 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue message_sender 1
zulip 2144 9.1 4.2 192272 42892 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue invites
zulip 2269 9.0 0.9 44264 10088 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py deliver_email
zulip 2224 9.0 2.2 136548 23308 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue feedback_messages
zulip 2148 9.0 4.1 191760 42564 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue missedmessage_mobile_notifications
zulip 2121 8.6 4.5 220012 46476 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue digest_emails
zulip 2263 8.0 1.0 44264 10176 ? S 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue error_reports
zulip 2257 8.0 1.0 44264 10180 ? S 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue user_activity_interval
zulip 2190 8.0 3.1 166184 32168 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py runtornado localhost:9993
zulip 2213 7.8 2.6 149264 27232 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue signups
zulip 2248 7.3 1.5 125404 16160 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue message_sender 0
zulip 2305 7.0 1.2 118128 12544 ? R 23:23 0:00 python /home/zulip/deployments/current/bin/log-management-command /home/zulip/deployments/current/manage.py process_queue user_activity_interval
zulip 2252 7.0 1.4 122092 14776 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue email_mirror
zulip 2240 6.7 2.0 134140 20768 ? R 23:23 0:00 python /home/zulip/deployments/current/manage.py process_queue missedmessage_emails
root 97 19.5 0.0 0 0 ? S 20:05 38:45 [kswapd0]
paralle+ 32502 1.6 2.1 335860 21952 ? Sl 23:21 0:02 /usr/bin/python3 /usr/share/oneconf/oneconf-service
I followed installation from guide on the main site of the project. After installing server I couldn't create account, because I hadn't got confirmation emails. I use smtp.gmail.com
. In the logs the servers response was:
[530-5.5.1 Authentication Required. Learn more at 530 5.5.1 http://mail.google.com/support/bin/answer.py?answer=14257 ffa3y7ap9sgytsh1]
After small research I did one small dirty hack: I placed my login and password from smtp in the confimations/models.py
:
Before https://github.com/zulip/zulip/blob/master/confirmation/models.py#L95:
send_mail(subject, body, settings.DEFAULT_FROM_EMAIL, [email_address])
After:
send_mail(subject, body, settings.DEFAULT_FROM_EMAIL, [email_address],
auth_user='user_name', auth_password='password')
After my fix sending via smtp.gmail.com
works fine.
Offtopic. I had to turn option Allow less secure apps
in my google-account to be able to send emails. Maybe this information will be useful to someone:
We need a good way to notify users running upgrade-zulip of any backwards-compatible updates (e.g. to configuration).
Shouldn't be too hard, and will make zulip.wmflabs.org nice to use :D
When I try to send a message to other user he don't recieve it. In the error-log I've got:
2015-09-26 10:33:29,381 ERROR WebSocket
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/sockjs/tornado/transports/websocket.py", line 59, in on_message
self.session.on_messages(msg)
File "/usr/lib/python2.7/dist-packages/sockjs/tornado/session.py", line 420, in on_messages
self.conn.on_message(msg)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/lib/socket.py", line 167, in on_message
self.authenticate_client(msg)
File "/home/zulip/deployments/2015-09-26-19-22-05/zerver/lib/socket.py", line 139, in authenticate_client
status = redis_client.hgetall(req_redis_key(inquiry))
File "/usr/lib/python2.7/dist-packages/redis/client.py", line 1228, in hgetall
return self.execute_command('HGETALL', name)
File "/usr/lib/python2.7/dist-packages/redis/client.py", line 364, in execute_command
connection.send_command(*args)
File "/usr/lib/python2.7/dist-packages/redis/connection.py", line 301, in send_command
self.send_packed_command(self.pack_command(*args))
File "/usr/lib/python2.7/dist-packages/redis/connection.py", line 283, in send_packed_command
self.connect()
File "/usr/lib/python2.7/dist-packages/redis/connection.py", line 231, in connect
raise ConnectionError(self._error_message(e))
ConnectionError: Error 111 connecting 127.0.0.1:6379. Connection refused.
I installed server on the virtual machine (Ubuntu 14.04) I followed instructions from here https://zulip.org/server.html. Also I created self-signed ssl-certificate for ip-address of my vm.
Settings file states to use one thing while code looks for another.
zulip/zproject/local_settings_template.py
Line 51 in a625ca4
Line 914 in b59b5ca
zulip-secrets.conf, and your cleitn ID here
+ /root/zulip/scripts/zulip-puppet-apply -f
./scripts/lib/install: /root/zulip/scripts/zulip-puppet-apply: /usr/bin/python: bad interpreter: No such file or directory
Here's a Dockerfile
to reproduce:
FROM ubuntu:trusty
ENV DEBIAN_FRONTEND noninteractive
# Bump when you want to re-run apt-get upgrade
ENV LAST_UPDATE 2
RUN apt-get update
RUN apt-get -y upgrade
RUN apt-get -y install wget
ENV ZULIP_VERSION "1.3.4"
RUN wget https://www.zulip.com/dist/releases/zulip-server-$ZULIP_VERSION.tar.gz
RUN tar -xvf zulip-server-$ZULIP_VERSION.tar.gz
RUN rm zulip-server-$ZULIP_VERSION.tar.gz
RUN mv zulip-server-$ZULIP_VERSION /root/zulip
WORKDIR /root/zulip
RUN ./scripts/setup/install
Hello!
I didn't find any scripts for the full stop of the server. There is only script for the restarting.
./tools/test-all will run all the tests and takes just a few minutes to run; the tricky part will be getting all the Zulip dependencies running in the Travis CI environment. http://docs.travis-ci.com/user/installing-dependencies/ suggests they only support Ubuntu 12.04; so it'll take a bit of work to get the packages available there. If someone's interested in working on this I can provide some info and hackishly built packages for precise we could use for this.
When i try to register a user acount i get an internal error "500: Internal server error."
i configured the email server in the settings.py and the user password for the smtp connection in the zulip-secrets.conf (email_host_password = #password#)
email clients are working with hat config...
please give me some advice to get it work, thanks
settings.py:
# Enable at least one of the following authentication backends.
AUTHENTICATION_BACKENDS = (
'zproject.backends.EmailAuthBackend', # Email and password
# 'zproject.backends.ZulipRemoteUserBackend', # Local SSO
# 'zproject.backends.GoogleMobileOauth2Backend', # Google Apps, setup below
)
# Configure the outgoing SMTP server below. For outgoing email
# via a GMail SMTP server, EMAIL_USE_TLS must be True and the
# outgoing port must be 587. The EMAIL_HOST is prepopulated
# for GMail servers, change it for other hosts, or leave it unset
# or empty to skip sending email.
#
# A common problem you may encounter when trying to get this working
# is many hosting providers block outgoing SMTP traffic.
EMAIL_HOST = 'bsmtp.server.at'
EMAIL_HOST_USER = '[email protected]'
# If you're using password auth, you will need to put the password in
# /etc/zulip/zulip-secrets.conf as email_host_password.
EMAIL_PORT = 587
EMAIL_USE_TLS = True
the error in the error.log:
2015-09-28 10:51:08,762 ERROR Internal Server Error: /register/
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/zulip/deployments/2015-09-28-16-19-20/zerver/views/__init__.py", line 843, in accounts_home
send_registration_completion_email(email, request)
File "/home/zulip/deployments/2015-09-28-16-19-20/zerver/views/__init__.py", line 829, in send_registration_completion_email
additional_context=context)
File "/home/zulip/deployments/2015-09-28-16-19-20/confirmation/models.py", line 95, in send_confirmation
send_mail(subject, body, settings.DEFAULT_FROM_EMAIL, [email_address])
File "/usr/lib/python2.7/dist-packages/django/core/mail/__init__.py", line 62, in send_mail
return mail.send()
File "/usr/lib/python2.7/dist-packages/django/core/mail/message.py", line 303, in send
return self.get_connection(fail_silently).send_messages([self])
File "/usr/lib/python2.7/dist-packages/django/core/mail/backends/smtp.py", line 100, in send_messages
new_conn_created = self.open()
File "/usr/lib/python2.7/dist-packages/django/core/mail/backends/smtp.py", line 58, in open
self.connection = connection_class(self.host, self.port, **connection_params)
File "/usr/lib/python2.7/smtplib.py", line 256, in __init__
(code, msg) = self.connect(host, port)
File "/usr/lib/python2.7/smtplib.py", line 316, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/usr/lib/python2.7/smtplib.py", line 291, in _get_socket
return socket.create_connection((host, port), timeout)
File "/usr/lib/python2.7/socket.py", line 553, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
gaierror: [Errno -2] Name or service not known
Librato.com is a real-time cloud monitoring tool with a fully documented API: http://dev.librato.com/v1
Integrating Librato would help a lot of SaaS developers monitor the load on their service.
So, I get clone of this repo (revision 0d12dfd) and started VM by vargant up
.
But not all processes inside VM are finished correctly and here the last lines of long log.
==> default: [email protected] /usr/lib/node_modules/cssstyle
==> default: ��������� [email protected]
==> default: /bin/sh: 0:
==> default: Illegal option -
==> default: /bin/sh: 0:
==> default: Illegal option -
==> default: /usr/bin/env:
==> default: python
==> default: : No such file or directory
==> default: /bin/sh: 0:
==> default: Illegal option -
==> default: Traceback (most recent call last):
==> default: File "/srv/zulip/provision.py", line 169, in <module>
==> default:
==> default: sys.exit(main())
==> default: File "/srv/zulip/provision.py", line 162, in main
==> default:
==> default: sh.configure_rabbitmq(**LOUD)
==> default: File "/usr/lib/python2.7/dist-packages/pbs.py", line 424, in __call__
==> default:
==> default: return RunningCommand(command_ran, process, call_args, actual_stdin)
==> default: File "/usr/lib/python2.7/dist-packages/pbs.py", line 137, in __init__
==> default:
==> default: if rc != 0: raise get_rc_exc(rc)(self.command_ran, self._stdout, self._stderr)
==> default: pbs
==> default: .
==> default: ErrorReturnCode_2
==> default: :
==> default:
==> default:
==> default: Ran: '/srv/zulip/scripts/setup/configure-rabbitmq'
==> default:
==> default: STDOUT:
==> default:
==> default: <redirected>
==> default:
==> default: STDERR:
==> default:
==> default: <redirected>
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.
And the several similar errors in the middle.
Gocd is an continous delivery system. It is similiar to systems like jenkins and teamcity.
It'll be good to have gocd integration.
There are some issues with how you are using Puppet.
The /etc/puppet/puppet.conf you are dropping on the system contains:
[main]
server = puppet.zulip.com
As Ubuntu automatically starts the puppet agent after the package is installed (via your install script) all servers will try to connect to puppet.zulip.com.
Thankfully that server does not exist but it is a serious security risk.
If someone were to setup a server at that address he could control all servers which installed via that install script.
Also, it is nowhere mentioned that you shouldn't run the installer on a system which is already running Puppet.
The installer will overwrite your /etc/puppet/puppet.conf and break your setup.
In my opinion you shouldn't replace the puppet.conf at all.
As far as I can tell you are using puppet apply ...
and you should be able to specify all options directly there.
Using up/down works everywhere, and enter can be used to reply to a message when a stream is selected but not in "Home", while click does work.
After clicking once, enter works too.
(Chrome 45, windows)
Traceback (most recent call last):
File "manage.py", line 21, in <module>
execute_from_command_line(sys.argv)
File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
utility.execute()
File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 330, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 393, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 444, in execute
output = self.handle(*args, **options)
File "/home/zulip/deployments/2015-09-26-00-25-59/zerver/management/commands/initialize_voyager_db.py", line 39, in handle
Realm.objects.create(domain="zulip.com")
File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 348, in create
obj.save(force_insert=True, using=self.db)
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 710, in save
force_update=force_update, update_fields=update_fields)
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 738, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 822, in _save_table
result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 861, in _do_insert
using=using, raw=raw)
File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 922, in _insert
return query.get_compiler(using=using).execute_sql(return_id)
File "/usr/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 986, in execute_sql
cursor.execute(sql, params)
File "/usr/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 97, in __exit__
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/usr/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/home/zulip/deployments/2015-09-26-00-25-59/zerver/lib/db.py", line 23, in execute
return wrapper_execute(self, super(TimeTrackingCursor, self).execute, query, vars)
File "/home/zulip/deployments/2015-09-26-00-25-59/zerver/lib/db.py", line 11, in wrapper_execute
return action(sql, params)
django.db.utils.IntegrityError: duplicate key value violates unique constraint "zerver_realm_domain_key"
DETAIL: Key (domain)=(zulip.com) already exists.
I'm having trouble figuring out how to register a user. It seems to want me to be from a specific organization, but it's never explained in the setup what that is.
How do I enable registration for me (gmail email), and others (not-gmail emails)?
2015-09-25 21:35:34,092 ERROR Internal Server Error: /register/
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/zulip/deployments/2015-09-26-01-18-40/zerver/views/__init__.py", line 855, in accounts_home
context_instance=RequestContext(request))
File "/usr/lib/python2.7/dist-packages/django/shortcuts.py", line 45, in render_to_response
using=using)
File "/usr/lib/python2.7/dist-packages/django/template/loader.py", line 116, in render_to_string
template_name, context, context_instance, dirs, dictionary)
File "/usr/lib/python2.7/dist-packages/django/template/engine.py", line 221, in render_to_string
return t.render(context_instance)
File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 208, in render
with context.bind_template(self):
File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__
return self.gen.next()
File "/usr/lib/python2.7/dist-packages/django/template/context.py", line 241, in bind_template
updates.update(processor(self.request))
File "/home/zulip/deployments/2015-09-26-01-18-40/zerver/context_processors.py", line 24, in add_settings
'password_auth_enabled': password_auth_enabled(realm),
File "/home/zulip/deployments/2015-09-26-01-18-40/zproject/backends.py", line 22, in password_auth_enabled
for backend in django.contrib.auth.get_backends():
File "/usr/lib/python2.7/dist-packages/django/contrib/auth/__init__.py", line 38, in get_backends
return _get_backends(return_tuples=False)
File "/usr/lib/python2.7/dist-packages/django/contrib/auth/__init__.py", line 27, in _get_backends
backend = load_backend(backend_path)
File "/usr/lib/python2.7/dist-packages/django/contrib/auth/__init__.py", line 21, in load_backend
return import_string(path)()
File "/usr/lib/python2.7/dist-packages/django/utils/module_loading.py", line 33, in import_string
six.reraise(ImportError, ImportError(msg), sys.exc_info()[2])
File "/usr/lib/python2.7/dist-packages/django/utils/module_loading.py", line 29, in import_string
return getattr(module, class_name)
ImportError: Module "zproject.backends" does not define a "GoogleBackend" attribute/class
if I set the backend by uncommenting the GoogleBackend in settings.py
(From reading the HN thread)
Or the other way around, but I really like Redis :)
It'd be great if someone could test a newer version of virtualbox for the Mac development instructions, and see if it works well. Empirically, it appears that virtualbox 4.3 on Mac feels a lot slower than what I'm used it (e.g. it takes 6.6s to run tools/lint-all, in comparison to 2.2s for my 2012 era Linux laptop and even faster for a newer laptop running under LXC).
Since we do SSL termination at a generic proxy level, not requiring SSL to setup Zulip itself would be nice.
Some folks have written into the mailing list suggesting we get Zulip working on CentOS. This issue tracks work towards making that happen.
I was running owncloud using nginx on the same server I installed zulip and it broke the own could installation. For example, nginx main configuration is overridden to use "zulip" user rather than the default "www-data" user.
Please make sure that installation doesn't override any other configuration files. Unless these issues are addressed, it'd be wise to put a warning on the README file and the installation guide indicating the list of files that's going to change.
Ideally, there should be an uninstallation script as well.
FROM ubuntu:14.04
MAINTAINER Steven Smith <[email protected]>
RUN apt-get update && apt-get install -y git python-pbs wget
RUN git clone https://github.com/zulip/zulip /srv/zulip
WORKDIR /srv/zulip
RUN python provision.py
EXPOSE 9991
This installs all dependencies, but services (e.g rabbitmq) don't appear to start, so later parts of provision.py (i.e sh.configure_rabbitmq(**LOUD)
) fail. Also emoji generation seems to be failing too, due to a missing dependency. I'm burned out from working on this, if anyone else can offer a suggestion it would be appreciated.
The current zulip installation, Install anything in the host. What if I want to use external Rabbitmq, redis, memcache or postgresql. If just there is an option to disable this.
I want to create a container for this (Docker) to run it on the CoreOS, but this is a huge container, and I think, its a good idea to break it to multile linked container.
Running on
prox@test:~/zulip$ lsb_release -d
Description: Ubuntu 14.04.3 LTS
How it looks in terminal - https://www.dropbox.com/s/0ezckuzslxj6pxm/Screenshot%202015-09-27%2013.53.13.png?dl=0
How it looks in virtualbox - https://www.dropbox.com/s/93u22czp9ncehmu/Screenshot%202015-09-27%2013.53.53.png?dl=0
prox@test:~/zulip$ vagrant ssh -- -L9991:localhost:9991
VM must be running to open SSH connection. Run vagrant up
to start the virtual machine.
Running into issues with Supervisor, this little work-around seems to fix it
sudo touch /var/run/supervisor.sock
sudo chmod 777 /var/run/supervisor.sock
sudo service supervisor restart
+ sudo rabbitmqctl delete_user zulip
Deleting user "zulip" ...
Error: unable to connect to node rabbit@e611e15f9c9d: nodedown
DIAGNOSTICS
===========
nodes in question: [rabbit@e611e15f9c9d]
hosts, their running nodes and ports:
- e611e15f9c9d: [{rabbitmqctl7195,42064}]
current node details:
- node name: rabbitmqctl7195@e611e15f9c9d
- home dir: /var/lib/rabbitmq
- cookie hash: xCFdbNsgD1SPwNlmRbq/ZA==
+ true
+ sudo rabbitmqctl delete_user guest
Deleting user "guest" ...
Error: unable to connect to node rabbit@e611e15f9c9d: nodedown
DIAGNOSTICS
===========
nodes in question: [rabbit@e611e15f9c9d]
hosts, their running nodes and ports:
- e611e15f9c9d: [{rabbitmqctl7240,40403}]
current node details:
- node name: rabbitmqctl7240@e611e15f9c9d
- home dir: /var/lib/rabbitmq
- cookie hash: xCFdbNsgD1SPwNlmRbq/ZA==
+ true
+ sudo rabbitmqctl add_user zulip 58cfc28bf881b28310986a8a5d1306c2fab8af5aff63562df93456b5cce3b0b7
Creating user "zulip" ...
Error: unable to connect to node rabbit@e611e15f9c9d: nodedown
DIAGNOSTICS
===========
nodes in question: [rabbit@e611e15f9c9d]
hosts, their running nodes and ports:
- e611e15f9c9d: [{rabbitmqctl7286,53989}]
current node details:
- node name: rabbitmqctl7286@e611e15f9c9d
- home dir: /var/lib/rabbitmq
- cookie hash: xCFdbNsgD1SPwNlmRbq/ZA==
This occurs with the following Dockerfile:
FROM ubuntu:trusty
ENV DEBIAN_FRONTEND noninteractive
# Bump when you want to re-run apt-get upgrade
ENV LAST_UPDATE 2
RUN apt-get update
RUN apt-get -y upgrade
RUN apt-get -y install wget
ENV ZULIP_VERSION "1.3.5"
RUN wget https://www.zulip.com/dist/releases/zulip-server-$ZULIP_VERSION.tar.gz
RUN tar -xvf zulip-server-$ZULIP_VERSION.tar.gz
RUN rm zulip-server-$ZULIP_VERSION.tar.gz
RUN mv zulip-server-$ZULIP_VERSION /root/zulip
WORKDIR /root/zulip
RUN ./scripts/setup/install
When running ./scripts/setup/install
:
+ dpkg -i ./python-django-guardian_1.3-1~zulip4_all.deb
Selecting previously unselected package python-django-guardian.
(Reading database ... 22158 files and directories currently installed.)
Preparing to unpack .../python-django-guardian_1.3-1~zulip4_all.deb ...
Unpacking python-django-guardian (1.3-1~zulip4) ...
dpkg: dependency problems prevent configuration of python-django-guardian:
python-django-guardian depends on python-six; however:
Package python-six is not installed.
dpkg: error processing package python-django-guardian (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
python-django-guardian
this was on a totally vanilla ubuntu trusty; all that had happened was install wget
, wget
the zulip tarball, and execute the install
script.
Zulip looks awesome, and it's great that it's joining the leagues of FOSS software, but it kind of sucks that there's no super-slick GitLab integration. Lots of projects and companies use GitLab, and GitLab continues to be full of win. So now, it'd be awesome if Zulip worked well with it.
The current server installation instructions are more finicky than they need to be in a few ways:
(1) We tell you to generate an SSL certificate but don't provide a good explanation for how
(2) We don't provide copyable code that does the unpacking properly and it's a bit finicky (e.g. having to rename a directory).
(3) We don't use "sha1sum -c" for checking the hash so you kinda need to do it yourself which is annoying.
It'd be great if someone could fix these in README.prod.md and then I can port over to the zulip.org website...
I didn't find documentation, neither google gave me result. Anyway to horizontally scale for both high availability and high performance purposes?
Right now the first thing you see when launching Zulip in Firefox is two modal popups stacked on top of each other, one from Firefox asking for permission to show you notifications, and one from Zulip teaching you how to use it. And sometimes if you dismiss the notification popup and start clicking through the tutorial, the notification popup comes back to interrupt your interruption yet again. We should make sure we only show one of these things at a time.
Relatedly, the tutorial ought to be skippable.
pingdom.com is a real-time cloud monitoring tool with a fully documented API: https://www.pingdom.com/resources/api
Integrating pingdom would help a lot of SaaS developers monitor the uptime of their service.
This is what we run in production so it should be fairly easy. Challenges are similar to those in #41.
Can you add a description and a link to the website? I used google to find out. But I would have profited from the descripion and the link.
This should be relatively doable since we used to support it as recently as a couple weeks ago.
The main challenges here if we want to use the scripts/setup/install process are:
(1) Need to put the backported dependency packages (e.g. Django 1.8) into a PPA or otherwise make them available
(2) There are a couple differences in what configuration works between the two, e.g. the redis.conf options are not compatible, so we'll need to make
(3) Some testing and new conditionals around the debian/ubuntu version (at the very least we need to not hardcode trusty in the sources.list.d config).
I'm seeing a lot of tracebacks like these on zulip.com:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response
response = wrapped_callback(request, _callback_args, *_callback_kwargs)
File "/home/zulip/deployments/2015-09-25-22-35-44/zerver/views/init.py", line 695, in finish_google_oauth2
raise Exception('Could not convert google pauth2 code to access_token\r%r' % resp.text)
Exception: Could not convert google pauth2 code to access_token
u'{\n "error": "invalid_grant",\n "error_description": "Code was already redeemed."\n}\n'
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response
response = wrapped_callback(request, _callback_args, *_callback_kwargs)
File "/home/zulip/deployments/2015-09-25-22-35-44/zerver/views/init.py", line 695, in finish_google_oauth2
raise Exception('Could not convert google pauth2 code to access_token\r%r' % resp.text)
Exception: Could not convert google pauth2 code to access_token
u'{\n "error": "invalid_grant",\n "error_description": "Bad Request"\n}\n'
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response
response = wrapped_callback(request, _callback_args, *_callback_kwargs)
File "/home/zulip/deployments/2015-09-25-22-35-44/zerver/views/init.py", line 695, in finish_google_oauth2
raise Exception('Could not convert google pauth2 code to access_token\r%r' % resp.text)
Exception: Could not convert google pauth2 code to access_token
u'{\n "error": "invalid_grant",\n "error_description": "Invalid code."\n}\n'
Even if these are user error, they shouldn't be throwing exceptions. Any ideas what's going on?
The command vargant up
is failed (as I wrote here), so I'm trying to start services manually.
So apt-get | dpkg
section completted successfully.
And the problems are raises with next commands.
(zulip-venv)vagrant@vagrant-ubuntu-trusty-64:/srv/zulip$ ./scripts/setup/configure-rabbitmq
/bin/sh: 0: Illegal option -
(zulip-venv)vagrant@vagrant-ubuntu-trusty-64:/srv/zulip$ ./tools/postgres-init-db
: invalid option
(zulip-venv)vagrant@vagrant-ubuntu-trusty-64:/srv/zulip$ ./tools/do-destroy-rebuild-database
/bin/sh: 0: Illegal option -
(zulip-venv)vagrant@vagrant-ubuntu-trusty-64:/srv/zulip$ ./tools/emoji_dump/build_emoji
/bin/sh: 0: Illegal option -
And because of previous fail that command not working too of course.
(zulip-venv)vagrant@vagrant-ubuntu-trusty-64:/srv/zulip$ ./tools/run-dev.py
: No such file or directory
I'd like to see a documented process to make this happen, but don't really have time to look into it myself. It'd be even more rad if you could include a 'Deploy to Heroku' button right in the README.
For @ mentions a number is shown on stream, but it gives no indication that there are other unread messages on a stream. Is there a way to get that?
Looks like Zulip's currently installing a random (non-release) commit of a personal fork of Django:
git+https://github.com/rwbarton/django.git@59f1fc4c7b65d23fceffd5c87e2b6ea350030c56
Does anyone know if there are obstacles to using a release version? Looks like this is from the 1.7alpha period, not sure whether pre- or post-migrations landing. If it's after migrations, maybe 1.7.x would just work?
I've followed the setup instructions to the point and tired 3 different email-addresses.
These errors occur on the Ubuntu 14.04.
These are the errors I've been able to find in the log file:
Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/home/zulip/deployments/2015-09-28-12-30-58/zerver/views/__init__.py", line 703, in finish_google_oauth2 raise Exception('Google login failed making API call\r%r' % resp.text) Exception: Google login failed making API call^Mu'{\n "error": {\n "errors": [\n {\n "domain": "usageLimits",\n "reason": "accessNotConfigured",\n "message": "Access Not Configured. The API (Google+ API) is not enabled for your project. Please use the Google Developers Console to update your configuration.",\n "extendedHelp": "https://cons ole.developers.google.com"\n }\n ],\n "code": 403,\n "message": "Access Not Configured. The API (Google+ API) is not enabled for your project. Please use the Google Developers Console to update your configuration."\n }\n}\n'
2015-09-28 07:58:40,096 ERROR Internal Server Error: /register/ Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/home/zulip/deployments/2015-09-28-12-30-58/zerver/views/__init__.py", line 843, in accounts_home send_registration_completion_email(email, request) File "/home/zulip/deployments/2015-09-28-12-30-58/zerver/views/__init__.py", line 829, in send_registration_completion_email additional_context=context) File "/home/zulip/deployments/2015-09-28-12-30-58/confirmation/models.py", line 95, in send_confirmation send_mail(subject, body, settings.DEFAULT_FROM_EMAIL, [email_address]) File "/usr/lib/python2.7/dist-packages/django/core/mail/__init__.py", line 62, in send_mail return mail.send() File "/usr/lib/python2.7/dist-packages/django/core/mail/message.py", line 303, in send return self.get_connection(fail_silently).send_messages([self]) File "/usr/lib/python2.7/dist-packages/django/core/mail/backends/smtp.py", line 100, in send_messages new_conn_created = self.open() File "/usr/lib/python2.7/dist-packages/django/core/mail/backends/smtp.py", line 58, in open self.connection = connection_class(self.host, self.port, **connection_params) File "/usr/lib/python2.7/smtplib.py", line 256, in __init__ (code, msg) = self.connect(host, port) File "/usr/lib/python2.7/smtplib.py", line 317, in connect (code, msg) = self.getreply() File "/usr/lib/python2.7/smtplib.py", line 368, in getreply raise SMTPServerDisconnected("Connection unexpectedly closed") SMTPServerDisconnected: Connection unexpectedly closed 2015-09-28 07:58:40,106 INFO 83.183.210.173 POST 500 156.6s (db: 7ms/5q) /register/ (unauth via ?) 2015-09-28 07:58:40,120 INFO SimpleQueueClient connected (connecting took 0.014s)
Zulip actually has a pagerduty integration with a bunch of tests, but it's not documented in templates/zerver/integrations.
in provision.py an argument is expected, but the vagrant file calls it without any
==> default: if sys.argv[1] == "--travis":
==> default: IndexError
==> default: :
==> default: list index out of range
d2f5937#diff-9062cf0876d2eebbad6e97f59722b518R55
the same in line 164
On fresh Ubuntu 15.04 after apt-get update && apt-get dist-upgrade tried to install Zulip. Got following errors during installation.
Here are errors message
Also this warning occurs
Since it seems there's a good amount of interest in running Zulip in smaller environments, it's worth doing a bit of optimization on the Zulip memory footprint. I think this will also be pretty valuable for running the Zulip development environment on a laptop.
I think probably the simplest version of this implementation would be a way to run all the queue workers in a single process that just watches all the queues; that should be great for development and smaller servers, and easy to make work (no need to even make it multithreaded).
Part 2 would be to make that multithreaded.
While currently Zulip servers require a decent amount of memory, this is in no way fundamental, just something we haven't optimized for in the past. Now that Zulip is open source, it's worth fixing that.
The main issue is probably: #32
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.