Commit Graph

6530 Commits

Author SHA1 Message Date
Girish Ramakrishnan
59c51c5747 volume: hostPath must exist on server 2020-12-03 23:13:20 -08:00
Girish Ramakrishnan
ca17afc734 volumes: better hostPath validation 2020-12-03 23:05:06 -08:00
Girish Ramakrishnan
0b537fe163 error text: port is in use and not reserved 2020-12-03 22:27:59 -08:00
Girish Ramakrishnan
57c4d47657 Remove obsolete code 2020-12-03 17:36:32 -08:00
Girish Ramakrishnan
0371fe19ab Add back cn existence check 2020-12-03 13:35:50 -08:00
Girish Ramakrishnan
3de8fd5d92 fix issue where apps can sendmail with any username
a valid password is still required for this to work
2020-12-03 13:06:08 -08:00
Girish Ramakrishnan
ce86cb892d the ip is now available in the appdb 2020-12-03 11:48:25 -08:00
Girish Ramakrishnan
9789ae3374 Remove redundant check 2020-12-03 11:46:57 -08:00
Girish Ramakrishnan
e508893dcc mail: use env var to check if solr is enabled 2020-12-02 21:15:42 -08:00
Girish Ramakrishnan
699f04c9ff mail: disable solr if not enough memory 2020-12-02 17:56:49 -08:00
Girish Ramakrishnan
89c82fb001 send the raw healthcheck as part of status call 2020-12-02 17:07:33 -08:00
Girish Ramakrishnan
5e483e4f3a delete any solr index when removing mailbox 2020-12-02 00:26:38 -08:00
Girish Ramakrishnan
84374b955e mail fts: enable prefix search 2020-12-01 23:45:55 -08:00
Girish Ramakrishnan
5a5983cf96 mail: add solr to mail status 2020-12-01 22:45:33 -08:00
Girish Ramakrishnan
71c44a4c44 mail: only enable shared mailboxes when / is separator 2020-12-01 13:02:24 -08:00
Girish Ramakrishnan
41053d6857 validate backup folder and prefix 2020-12-01 12:46:02 -08:00
Girish Ramakrishnan
3934e59bd3 filemanager: allow downloading dirs as zip 2020-11-29 16:28:10 -08:00
Girish Ramakrishnan
3d5599cdd9 b2: reduce copy part size
'Error copying snapshot/app_8b22dc8f-3e15-4314-8108-bcf1908a24df.tar.gz.enc (482405284 bytes): InternalError InternalError: too busy to complete copy - please try again' }
2020-11-29 11:16:05 -08:00
Girish Ramakrishnan
138d01e755 mail: acl update for getting shared mailboxes to show correctly 2020-11-28 16:30:12 -08:00
Girish Ramakrishnan
ad8b9cfc9f mail: enable acl 2020-11-27 18:14:49 -08:00
Girish Ramakrishnan
de400dd652 mail: update mail container to remove explicit utf-8 on disk encoding 2020-11-26 22:42:11 -08:00
Girish Ramakrishnan
6218ee30a7 proxyAuth: inject CLOUDRON_PROXY_AUTH 2020-11-26 15:04:25 -08:00
Girish Ramakrishnan
976f072ef4 sftp: ubuntu 20 requires keys in legacy format 2020-11-26 11:53:28 -08:00
Girish Ramakrishnan
f4762be58b add TODO 2020-11-25 22:25:36 -08:00
Girish Ramakrishnan
1b92ce08aa scheduler: suspend/resume jobs when apptask is active
the cron job container was holding on to the volume any container changes.
2020-11-25 22:16:38 -08:00
Girish Ramakrishnan
77b965cada Add DNS to app containers as well
infra has to be bumped since we removed httpPort and moved to containerIp
2020-11-25 12:04:59 -08:00
Girish Ramakrishnan
bcc9eda66c Remove ununsed constant 2020-11-25 10:33:40 -08:00
Girish Ramakrishnan
3a0b9d7b3b turn: add note 2020-11-25 10:19:01 -08:00
Girish Ramakrishnan
e511b70d8f bring back resolvconf and unbound DNS
bd9c664b1a tried to remove it and use
the system resolver. However, we found that debian has a quirk that it adds
it adds the fqdn as 127.0.1.1. This means that the docker containers
resolve the my.example.com domain to that and can't connect.

This affects any apps doing a turn test (CLOUDRON_TURN/STUN_SERVER)
and also apps like SOGo which use the mail server hostname directly (since
they require proper certs).

https://www.debian.org/doc/manuals/debian-reference/ch05.en.html#_the_hostname_resolution

So, the solution is to go back to unbound, now that port 53 binding is specially
handled anyway in docker.js
2020-11-25 10:02:43 -08:00
Girish Ramakrishnan
25cc60e648 mail: change the namespace separator to / 2020-11-24 12:55:58 -08:00
Johannes Zellner
d1e05dcb6f Make proxyauth login translatable 2020-11-24 20:57:13 +01:00
Girish Ramakrishnan
8cfd859711 mail: make eventlog search also searches type field
Fixes #740
2020-11-23 16:22:16 -08:00
Girish Ramakrishnan
195c9bd81f check the type of userIds array 2020-11-22 21:42:08 -08:00
Girish Ramakrishnan
a8928d26d1 Fix appdb get query
the get() query was wrong when we had multiple port bindings.

we did apps JOIN X JOIN Y JOIN Z. This will return apps times x times y times z rows.
this just accidentally worked in the past. when we have multiple mounts,
we get duplicate values now.

the fix is do the joins separately and then merge them together.

an alternate approach to this mega query is to SET TRANSACTION SERIALIZABLE and do
multiple selects. but that requires database.js support which is a bit of work (and not
sure how it works with "connections").
2020-11-22 16:03:41 -08:00
Johannes Zellner
ef287d4436 fix language test
Ideally we would use a copy of the dashboard, either way we kinda have
to rely on repo layouts to find it
2020-11-22 10:34:35 +01:00
Girish Ramakrishnan
6ae1de6989 test: make apps test work 2020-11-21 23:25:28 -08:00
Girish Ramakrishnan
ba913bb949 another console.error to debug 2020-11-21 18:32:38 -08:00
Girish Ramakrishnan
58487b729a use debug since it floods the test logs 2020-11-21 18:28:45 -08:00
Girish Ramakrishnan
bf73cbaf97 test: make the certs test pass again
generate certs for next 10 years
2020-11-21 18:17:37 -08:00
Girish Ramakrishnan
1db868bf9c httpPaths: add trailing slash to proxy_pass
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass

"If the proxy_pass directive is specified with a URI, then when a request
is passed to the server, the part of a normalized request URI matching the
location is replaced by a URI specified in the directive"
2020-11-21 14:37:39 -08:00
Girish Ramakrishnan
d331597bff proxyAuth: allow protecting specific subpath
while I don't think this is useful for apps, it is useful for e2e test atleast
2020-11-20 18:29:55 -08:00
Girish Ramakrishnan
71648d92ae proxyAuth: authorization logic 2020-11-20 17:54:17 -08:00
Girish Ramakrishnan
735485b539 rename variable 2020-11-20 17:52:22 -08:00
Girish Ramakrishnan
09c8248e31 move back docker network creation to start.sh
dockerproxy and unbound rely on it.
2020-11-20 17:22:57 -08:00
Girish Ramakrishnan
c0b0029935 statically allocate app container IPs
We removed httpPort with the assumption that docker allocated IPs
and kept them as long as the container is around. This turned out
to be not true because the IP changes on even container restart.

So we now allocate IPs statically. The iprange makes sure we don't
overlap with addons and other CI app or JupyterHub apps.

https://github.com/moby/moby/issues/6743
https://github.com/moby/moby/pull/19001
2020-11-20 16:19:59 -08:00
Johannes Zellner
64af278f39 add missing curly brackets 2020-11-21 00:13:07 +01:00
Johannes Zellner
57dabbfc69 Translate welcome and password reset email subjects 2020-11-20 22:38:52 +01:00
Girish Ramakrishnan
279f7a80c5 make appstatus work again for apps 2020-11-20 12:04:58 -08:00
Girish Ramakrishnan
b66fdb10f2 apptask: Use debugApp 2020-11-20 11:21:06 -08:00
Johannes Zellner
84c1703c1a Translate password reset email 2020-11-20 16:18:24 +01:00