Girish Ramakrishnan
e0c9658cb9
setup -> provision
2018-12-11 15:29:47 -08:00
Girish Ramakrishnan
0266a46b32
Ensure that location and domain are provided together
...
in our db, {location,domain} is unique. If we replace them one
by one in the database, it will cause conflicts.
2018-12-11 12:10:22 -08:00
Girish Ramakrishnan
e7294f2950
Make handleCertChanged take a callback
2018-12-11 11:02:32 -08:00
Girish Ramakrishnan
c9f325e75d
renewCerts does not call callback
2018-12-11 10:49:04 -08:00
Girish Ramakrishnan
0fa353c2e2
return taskId for renewCerts
2018-12-11 10:16:38 -08:00
Girish Ramakrishnan
c7da090882
tasks: remove auditSource from start/stop
2018-12-11 09:22:13 -08:00
Johannes Zellner
ee609c8ef0
renew certs task also needs an auditSource
2018-12-11 13:10:32 +01:00
Johannes Zellner
6891ce2bc8
Fix typos
2018-12-11 12:33:35 +01:00
Johannes Zellner
94f5adba04
Renew certs is a POST route so lets use the body
2018-12-11 11:55:59 +01:00
Johannes Zellner
b8f843993a
Fix typo
2018-12-11 11:26:45 +01:00
Girish Ramakrishnan
f9add21899
Add task route tests
2018-12-10 21:42:03 -08:00
Girish Ramakrishnan
1277da8bfe
Add tasks test
2018-12-10 21:17:30 -08:00
Girish Ramakrishnan
55650fb734
Fix crash when db got cleared
2018-12-10 20:56:38 -08:00
Girish Ramakrishnan
d2f4b68c9f
Make certificate renewal a task
2018-12-10 20:48:10 -08:00
Girish Ramakrishnan
a76731a991
remove old cloudron.conf and version field
2018-12-10 15:36:00 -08:00
Girish Ramakrishnan
536b8166ce
typo
2018-12-09 12:04:51 -08:00
Girish Ramakrishnan
d43106b0af
Add taskworker that runs funcs out of process
2018-12-09 10:06:22 -08:00
Girish Ramakrishnan
3688371ce8
Make tasks log to their own log file
2018-12-08 21:59:20 -08:00
Girish Ramakrishnan
6d66eb7759
Various fixes
2018-12-08 21:12:49 -08:00
Girish Ramakrishnan
8502bf4bfa
tasks: add route to list tasks
2018-12-08 20:18:20 -08:00
Girish Ramakrishnan
d8225ad653
Make tasks indexed by id instead of type
...
The caas migrate logic is broken at this point until it uses new
task framework
2018-12-08 19:41:53 -08:00
Girish Ramakrishnan
cfb68a0511
setAdmin -> setDashboardDomain
2018-12-08 18:19:49 -08:00
Girish Ramakrishnan
76677e0aea
Fix response
2018-12-07 16:39:22 -08:00
Girish Ramakrishnan
515ee891d3
refactor code to allow admin domain to be set
2018-12-07 16:15:21 -08:00
Girish Ramakrishnan
3aea1f3c9d
Fix error message
2018-12-07 15:41:02 -08:00
Girish Ramakrishnan
8d944f9a4a
Allow setup to be run again as long as not-activated
...
this is useful if the activation fails somewhere mid-way and we don't
need to re-setup the cloudron all over
2018-12-07 15:11:25 -08:00
Girish Ramakrishnan
331c8ae247
Add a new line
2018-12-07 11:28:23 -08:00
Girish Ramakrishnan
c71a429f61
Ask user before reboot
...
this is useful when installing on bare metal, don't want to reboot
server since the instructions get lost
2018-12-07 11:12:45 -08:00
Girish Ramakrishnan
3bad9e523c
Add option to toggle app automatic updates
2018-12-07 10:02:11 -08:00
Girish Ramakrishnan
dfa61f1b2d
rework how app mailboxes are allocated
...
Our current setup had a mailbox allocated for an app during app
install (into the mailboxes table). This has many issues:
* When set to a custom mailbox location, there was no way to access
this mailbox even via IMAP. Even when using app credentials, we
cannot use IMAP since the ldap logic was testing on the addon type
(most of our apps only use sendmail addon and thus cannot recvmail).
* The mailboxes table was being used to add hidden 'app' type entries.
This made it very hard for the user to understand why a mailbox conflicts.
For example, if you set an app to use custom mailbox 'blog', this is
hidden from all views.
The solution is to let an app send email as whatever mailbox name is
allocated to it (which we now track in the apps table. the default is in the
db already so that REST response contains it). When not using
Cloudron email, it will just send mail as that mailbox and the auth
checks the "app password" in the addons table. Any replies to that
mailbox will end up in the domain's mail server (not our problem).
When using cloudron email, the app can send mail like above. Any responses
will not end anywhere and bounce since there is no 'mailbox'. This is the
expected behavior. If user wants to access this mailbox name, he can
create a concrete mailbox and set himself as owner OR set this as
an alias.
For apps using the recvmail addon, the workflow is to actually create
a mailbox at some point. Currently, we have no UI for this 'flow'.
It's fine because we have only meemo using it.
Intuitive much!
2018-12-06 22:13:32 -08:00
Girish Ramakrishnan
6331fa5ced
Update mail addon (does not use ownerType)
2018-12-06 20:34:18 -08:00
Girish Ramakrishnan
707b03b8c8
mailbox: ownerType is now purely internal
2018-12-06 20:25:24 -08:00
Girish Ramakrishnan
f2f93ed141
ldap: nobody binds to mailboxes
2018-12-06 19:34:25 -08:00
Girish Ramakrishnan
37e16c7a4c
Force owner type to be user
2018-12-06 13:00:57 -08:00
Girish Ramakrishnan
41b0c3242e
Make function name clearer
2018-12-06 12:47:50 -08:00
Girish Ramakrishnan
48ed051edf
Use list verb
2018-12-06 10:23:10 -08:00
Girish Ramakrishnan
502642fd25
Add note on why we need universe
2018-12-06 09:32:02 -08:00
Johannes Zellner
4abe6a7a00
Ensure we have universe apt sources enabled
2018-12-06 13:23:30 +01:00
Girish Ramakrishnan
3f8fa64b98
wildcard must be outside the quotes
2018-12-05 16:39:29 -08:00
Johannes Zellner
527ff1b1fb
Support docker and unbound service logs through journalctl
2018-12-05 16:19:10 +01:00
Girish Ramakrishnan
804467dce2
StandardOutput=file does not work in ubuntu 16
...
ubuntu 16 has systemd 229 which does not support this. ubuntu 18
has systemd 239 which works ok
2018-12-04 15:02:48 -08:00
Girish Ramakrishnan
4d7f308821
translate TaskError to UpdateError
2018-12-04 14:04:43 -08:00
Girish Ramakrishnan
a5b8418845
Remove spurious success return
2018-12-04 09:34:00 -08:00
Johannes Zellner
93d428b8c5
Update cron node module
2018-12-04 14:53:08 +01:00
Johannes Zellner
7c424ad60c
Add netcup as provider
2018-12-04 09:51:40 +01:00
Girish Ramakrishnan
5b29a8680d
Add missing callback
2018-12-03 15:23:26 -08:00
Girish Ramakrishnan
8f57c44837
provision: force http1.1
...
for unknown reasons, we get a http2 framing error from curl at times.
2018-12-03 13:29:43 -08:00
Johannes Zellner
b23939127b
Ensure we always set the correct default value for TIMESTAMP types
...
So far it we rely on 0 default values in some case like the eventlog
This will not work in mysql strict mode with https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_no_zero_date
2018-12-03 14:09:57 +01:00
Johannes Zellner
3196322063
Add migration script to rename groups table to userGroups
2018-12-03 12:24:04 +01:00
Johannes Zellner
54c96d98d1
Remove all individual test timeouts and ignore timeouts toplevel
2018-12-03 12:24:04 +01:00