Girish Ramakrishnan
4aae663b2e
typo
2021-03-10 15:32:46 -08:00
Girish Ramakrishnan
da00bce4b7
6.2.3 changes
2021-03-10 15:11:03 -08:00
Girish Ramakrishnan
0067766284
Fix addon crashes with missing databases
...
this happens because we have some bug in sftp container causing uninstall(s) to
fail. the database of those apps are gone but the export logic then tries to export
them and it all fails.
2021-03-10 15:09:15 -08:00
Girish Ramakrishnan
bb0b5550e0
Update mail container for LMTP cert fix
2021-03-10 09:50:09 -08:00
Girish Ramakrishnan
1db1f3faf4
Make it 30MB for good measure
2021-03-09 19:41:36 -08:00
Girish Ramakrishnan
9650a55c85
bump request timeouts
2021-03-09 14:45:22 -08:00
Girish Ramakrishnan
9451bcd38b
services: start mail first to reduce downtime
2021-03-05 19:31:38 -08:00
Girish Ramakrishnan
aa7dbdd1fa
Add 6.2.2 changes
2021-03-05 16:13:34 -08:00
Girish Ramakrishnan
ac18fb47b4
Fix ENOBUFS with large number of executable files
2021-03-05 15:09:56 -08:00
Girish Ramakrishnan
91a229305d
missing backups: check if the s3 end point is valid
...
s3 api never return NotFound or ENOENT - https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html
Sadly, DO/OVH etc just return NotFound instead of NoSuchKey. And we cannot
distinguish easily if we are talking to some s3 server or some random server.
This is applicable for things like say minio where maybe there is something
apache now just giving out 404 / NotFound.
2021-03-05 01:24:16 -08:00
Girish Ramakrishnan
70b0da9e38
ovh: revert incorrect URL migration
...
https://forum.cloudron.io/topic/4584/issue-with-backups-listings-and-saving-backup-config-in-6-2
2021-03-05 00:15:17 -08:00
Girish Ramakrishnan
4275114d28
s3: remove retry options for exists check
2021-03-04 23:40:23 -08:00
Girish Ramakrishnan
83872a0a1d
installer: is_update is not set correctly
2021-03-04 23:14:00 -08:00
Girish Ramakrishnan
4d4aad084c
remove hard dep on systemd-resolved
...
the start.sh script does a "systemctl restart systemd-resolved". this
ends up restarting the box code prematurely! and then later when mysql
restarts, the box code loses connection and bad things happen (tm)
especially during a platform update.
we don't log to journald anymore, so not sure if EPIPE is still an issue
2021-03-04 21:07:52 -08:00
Girish Ramakrishnan
8994a12117
6.2.1 changes
2021-03-04 15:53:40 -08:00
Girish Ramakrishnan
28b6a340f0
restore: skip dns setup
2021-03-04 15:50:02 -08:00
Girish Ramakrishnan
1724607433
apphealth: clamp health time to first run
...
the platform.start can take forever. this means that we start the
clock to include platform.start and this sends a lot of spurious
up/down notifications.
also, bump the down threshold to 20 mins.
2021-03-04 15:03:08 -08:00
Girish Ramakrishnan
39864fbbb9
use the curl that retries
2021-03-04 12:09:23 -08:00
Girish Ramakrishnan
94dcec9df1
while...do
2021-03-04 12:09:23 -08:00
Girish Ramakrishnan
10ca889de0
apphealthmonitor: better debugs
2021-03-04 11:42:43 -08:00
Girish Ramakrishnan
cfcc210f9c
try pulling images in a loop
2021-03-03 21:54:08 -08:00
Girish Ramakrishnan
38e5d2286e
typo
2021-03-03 14:34:55 -08:00
Girish Ramakrishnan
149e176cfd
better logs
2021-03-03 13:49:22 -08:00
Girish Ramakrishnan
3a19ab6866
better error message when update-info.json is old
2021-03-03 10:21:52 -08:00
Girish Ramakrishnan
aa71a734b9
Fix issue where mysql was restarting after new box code has started up
...
not 100% sure because of missing log timestamps, but mysql restarts after the box
has started up. As seen from logs below, we try to mark the apps for restart on
platform update. But this failed because mysql was restarting at that time.
This ended up with e2e test failing.
box:apps restartAppsUsingAddons: marking nc4801.autoupdatetest.domain.io for restart
box:apps restartAppsUsingAddons: error marking nc4801.autoupdatetest.domain.io for restart: {"name":"BoxError","reason":"Database Error","details":{"fatal":true,"code":"PROTOCOL_CONNECTION_LOST"},"message":"Connection lost: The server closed the connection.","nestedError":{"fatal":true,"code":"PROTOCOL_CONNECTION_LOST"}}
box:apps restartAppsUsingAddons: marking wekan1398.autoupdatetest.domain.io for restart
box:database Connection 51 error: Connection lost: The server closed the connection. PROTOCOL_CONNECTION_LOST
box:database Connection 52 error: Connection lost: The server closed the connection. PROTOCOL_CONNECTION_LOST
Box GET /api/v1/cloudron/status 500 Internal Server Error connect ECONNREFUSED 127.0.0.1:3306 41.251 ms - 217
2021-03-02 23:27:31 -08:00
Girish Ramakrishnan
d81ee7d99a
timestamp the setup and installer logs
...
at some point, mysql disconnects the box code and it becomes hard to
debug without the timestamps
2021-03-02 23:06:37 -08:00
Girish Ramakrishnan
2946657889
stopAllTasks: the box dir might disappear
...
during update, we stop the box code which ends up trying to stop all tasks.
this gives warning like below:
box:shell stopTask (stdout): shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
box:shell stopTask (stdout): job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
box:shell stopTask (stdout): box-task-8.service loaded active running /home/yellowtent/box/src/scripts/../taskworker.js 8 /home/yellowtent/platformdata/logs/tasks/8.log
box:shell stopTask (stdout): job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
box:shell stopTask (stdout): job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
box:shell stopTask (stdout): job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
2021-03-02 22:26:43 -08:00
Girish Ramakrishnan
fc6f91157d
Fix progress indicator
2021-03-02 21:25:23 -08:00
Girish Ramakrishnan
315d721174
Fix accumulation logic
2021-03-02 21:23:20 -08:00
Girish Ramakrishnan
ed7f2e7bb5
more changes
2021-03-02 19:11:56 -08:00
Girish Ramakrishnan
53cb9b1f7a
fix registry config setter
...
* default registry provider is noop
* when testing config, skip noop provider
2021-03-02 18:34:06 -08:00
Girish Ramakrishnan
cccdf68cec
backups: preserve symlinks in rsync mode
2021-03-02 18:11:59 -08:00
Girish Ramakrishnan
f04654022a
add to changes
2021-03-02 13:01:49 -08:00
Girish Ramakrishnan
2b92310d24
call exitHandler to remove motd before reboot
2021-03-02 13:01:19 -08:00
Girish Ramakrishnan
c21155f07b
Add to changes
2021-03-02 08:15:27 -08:00
Girish Ramakrishnan
baded52c96
return BoxError and not Error
2021-03-01 11:31:22 -08:00
Girish Ramakrishnan
476f348693
restore: resolve any boxdata directory symilnk before downloading
...
the tar-fs module cannot handle symlinks and must be given a resolved directory
since it uses lstat()
2021-03-01 11:02:43 -08:00
Girish Ramakrishnan
dd58c174a8
change default referrer policy to same-origin
...
https://forum.cloudron.io/topic/4546/referrer-policy-header-is-overwritten
2021-03-01 09:34:23 -08:00
Girish Ramakrishnan
376e070b72
update mail container
...
new solr and higher concurrency
2021-02-28 18:45:43 -08:00
Girish Ramakrishnan
f0e0372127
Update addons (move code to /app/code convention)
2021-02-28 15:52:06 -08:00
Girish Ramakrishnan
5e2c655ccb
update mongodb
...
fixes #767
2021-02-28 12:49:44 -08:00
Girish Ramakrishnan
4a158c559e
Fix typo: overwrite -> overwriteDns
2021-02-26 11:43:00 -08:00
Girish Ramakrishnan
03a59cd500
mysql: disable binlogs altogether
...
this is useful primarily for replication
http://dimitrik.free.fr/blog/archives/2018/04/mysql-performance-testing-80-with-less-blood.html
2021-02-26 09:53:37 -08:00
Girish Ramakrishnan
b71ab187ff
mysql: update binlog in addon
2021-02-25 19:10:28 -08:00
Girish Ramakrishnan
bbed7c1d8a
stack scripts: add hint that cloudron is installing
...
with linode, user has no clue that cloudron is installing when they SSH in.
2021-02-25 13:36:57 -08:00
Girish Ramakrishnan
c496d994c0
remove unused createAMI and digitalocean.sh
2021-02-25 10:33:41 -08:00
Girish Ramakrishnan
7a6a170451
remove retire.sh
2021-02-25 10:32:53 -08:00
Girish Ramakrishnan
5a6b261ba2
add to changes
2021-02-24 22:38:40 -08:00
Girish Ramakrishnan
70fbcf8ce4
add route to sync dns records
...
merge the mail dns route with this one as well
fixes #737
2021-02-24 22:37:59 -08:00
Girish Ramakrishnan
93712c0f03
emit progress message in register/unregister locations
2021-02-24 18:32:28 -08:00
Girish Ramakrishnan
e78abe2fab
move register* to domains
2021-02-24 17:54:19 -08:00
Girish Ramakrishnan
e190076f1a
apptask: skip waiting for dns propagation
...
part of #737
2021-02-24 16:57:51 -08:00
Girish Ramakrishnan
4a85207dba
remove debug
2021-02-24 16:39:41 -08:00
Girish Ramakrishnan
b0e80de9ec
add missing arg
2021-02-24 16:36:13 -08:00
Girish Ramakrishnan
a546914796
mysql: keep binlog to couple of days
2021-02-24 16:00:46 -08:00
Girish Ramakrishnan
3af6012779
typo
2021-02-24 15:03:49 -08:00
Girish Ramakrishnan
5b51f73be4
restore: add skipDnsSetup flag
...
part of #737
2021-02-24 14:56:09 -08:00
Girish Ramakrishnan
d74537868a
apps: add skipDnsSetup to install/restore/clone routes
...
these are not used in the UI but added for completeness
part of #737
2021-02-24 14:51:18 -08:00
Girish Ramakrishnan
2056ede942
apptask: add skipDnsSetup flag to skip dns setup
...
Part of #737
2021-02-24 14:47:05 -08:00
Girish Ramakrishnan
f2d366c35d
dkim: use a hash for the selector instead of domain name directory
...
we use a hash instead of random so that it is the same (unless admin domain changed)
within the same server. hash also ensures one cannot reverse it.
fixes #770
2021-02-24 11:41:58 -08:00
Girish Ramakrishnan
0bb2da8a04
better error message
2021-02-24 09:53:57 -08:00
Girish Ramakrishnan
38607048ee
mysql: make binlog have 5 day expiry
2021-02-24 09:19:26 -08:00
Girish Ramakrishnan
9c413ffe3d
do not overwrite existing dmarc
...
fixes #769
2021-02-24 09:08:56 -08:00
Girish Ramakrishnan
14e1cb5ad6
Update packages
2021-02-24 09:08:22 -08:00
Girish Ramakrishnan
aaf93cb772
proxyAuth: check for basicAuth flag to permit basic auth
...
fixes #765
2021-02-23 21:54:49 -08:00
Girish Ramakrishnan
8f08c52103
not required anymore to uninstall gnome-shell
2021-02-23 18:57:15 -08:00
Girish Ramakrishnan
9ccd82ce4e
set binlog config in mysql
...
keep max binlog file size to 100M. and rotate then in 10 days
2021-02-23 14:24:58 -08:00
Girish Ramakrishnan
013669e872
Update mail container
...
this disables TLSv1 and 1.1 in dovecot
2021-02-22 14:16:55 -08:00
Girish Ramakrishnan
9ebdeca3ad
add another changelog
2021-02-22 11:50:47 -08:00
Johannes Zellner
8823487bc1
Rebuild lock file with npm version 6.14.10
2021-02-22 10:43:52 +01:00
Girish Ramakrishnan
c4dffa393b
backups: remove entries from database that don't exist in storage
...
fixes #772
2021-02-19 11:34:22 -08:00
Girish Ramakrishnan
a5c4b5d8a1
tls addon: restart apps on cert change
2021-02-18 09:44:13 -08:00
Girish Ramakrishnan
2f58092af2
Fix .well-known not served up properly for redirection
2021-02-18 09:30:39 -08:00
Johannes Zellner
1f7877e0e5
Do not specify random node engines in package.json
2021-02-18 11:07:49 +01:00
Girish Ramakrishnan
a304c7f4a5
implement tls addon
2021-02-17 23:20:08 -08:00
Girish Ramakrishnan
601fc9a202
it is uuid.v4() now
2021-02-17 23:18:36 -08:00
Girish Ramakrishnan
32e00bdf47
cloudron-support: print the admin fqdn
2021-02-17 20:29:56 -08:00
Girish Ramakrishnan
83fa83a709
cloudron-support: typo
2021-02-17 20:04:43 -08:00
Girish Ramakrishnan
895ccdb549
allow port 853 for DoT
2021-02-17 13:11:00 -08:00
Girish Ramakrishnan
fd8741be16
add to changes
2021-02-17 09:24:50 -08:00
Johannes Zellner
3206afcd7c
Do not remove accessRestriction from install app listing
2021-02-17 14:43:25 +01:00
Girish Ramakrishnan
ab2d246945
Update graphite to base image
2021-02-16 16:56:33 -08:00
Girish Ramakrishnan
41ec22e8c3
clear timeout when getting service status
2021-02-16 11:13:41 -08:00
Johannes Zellner
af54142997
Add ldap debug for unhandled routes
2021-02-16 17:20:41 +01:00
Girish Ramakrishnan
c8c4f99849
Reduce gzip_min_length to keep tools like semrush happy
2021-02-15 11:46:36 -08:00
Girish Ramakrishnan
48c52533c4
firewall: syntax cleanup
2021-02-12 08:13:47 -08:00
Johannes Zellner
1a98d6d2bd
iptables --dports only supports up to 15 ports apparently
2021-02-12 15:56:19 +01:00
Girish Ramakrishnan
615198cd36
mail: use latest base image
2021-02-11 15:35:04 -08:00
Girish Ramakrishnan
664b3ab958
sftp: multiparty fix for node 14
2021-02-09 23:35:32 -08:00
Girish Ramakrishnan
dac677df06
sftp: force rebuild when infra changes
2021-02-09 22:57:21 -08:00
Girish Ramakrishnan
fd2087d7e4
Fix mysql auth issue
...
only PHP 7.4 supports the caching_sha2_password mechanism. so we
make the default as mysql_native_password
2021-02-09 17:31:45 -08:00
Girish Ramakrishnan
d5087ff0c2
registry config: add provider
2021-02-09 14:33:20 -08:00
Girish Ramakrishnan
1d0ad3cb47
proxyAuth: Fix docker UA detection
2021-02-09 13:45:00 -08:00
Girish Ramakrishnan
30c3acaed9
change debug string
2021-02-08 23:20:45 -08:00
Girish Ramakrishnan
afd938abdf
update more modules
2021-02-08 23:14:32 -08:00
Girish Ramakrishnan
38ca8926af
createReleaseTarball: bump node version
2021-02-06 22:00:13 -08:00
Girish Ramakrishnan
283f1aac21
Update base image because of mongodb issue
2021-02-06 21:57:37 -08:00
Girish Ramakrishnan
8ba1f3914c
Update postgresql for latest base image
2021-02-06 11:14:23 -08:00
Girish Ramakrishnan
a262b08887
Update redis for latest base image
2021-02-06 10:26:54 -08:00
Girish Ramakrishnan
925408ffcd
Update turn image to use latest base image
2021-02-06 10:20:31 -08:00
Girish Ramakrishnan
04d4375297
Update sftp image to use latest base image
2021-02-06 10:10:03 -08:00
Girish Ramakrishnan
691b15363a
base image: fix yq typo
2021-02-05 21:15:07 -08:00
Girish Ramakrishnan
caadb1d418
new base image 3.0
2021-02-05 20:25:17 -08:00
Girish Ramakrishnan
382ae7424d
async 3: the whilst and doWhilst test funcs are async
2021-02-04 16:39:47 -08:00
Girish Ramakrishnan
6073d2ba7e
Use new base image 3.0.0
2021-02-04 16:22:23 -08:00
Girish Ramakrishnan
6ecbd4a0fd
update packages
2021-02-04 11:01:32 -08:00
Girish Ramakrishnan
92c43e58c7
update docker to 20.10.3
2021-02-04 11:01:30 -08:00
Girish Ramakrishnan
dc91abb800
update node to 14.15.4
2021-02-04 11:01:08 -08:00
Girish Ramakrishnan
e19ab45e81
ovh: add url migration from s3. to storage.
2021-02-04 10:21:54 -08:00
Girish Ramakrishnan
72daaa9ff0
ionos: add profitbricks object storage
2021-02-04 10:14:35 -08:00
Girish Ramakrishnan
8106fa3b7d
Add to changes
2021-02-03 16:34:14 -08:00
Girish Ramakrishnan
282040ed1b
gcs: use delete concurrency
2021-02-01 14:23:15 -08:00
Girish Ramakrishnan
bcd04715c0
updater: set the backup memory limit
2021-02-01 14:07:23 -08:00
Johannes Zellner
14b2fa55c3
Update sftp 3.1.0 addon image
2021-02-01 19:20:58 +01:00
Johannes Zellner
04e103a32d
Do not bump infra version
2021-02-01 19:06:13 +01:00
Johannes Zellner
0b0c02e421
Update sftp image for copy function
2021-02-01 16:13:46 +01:00
Girish Ramakrishnan
196a5cfb42
Add missing require
2021-01-31 20:47:33 -08:00
Girish Ramakrishnan
fc408b8288
Fix app auto-update breakage
2021-01-31 20:46:55 -08:00
Girish Ramakrishnan
e2c342f242
apptaskmanager: Fix crash
2021-01-30 21:16:41 -08:00
Girish Ramakrishnan
19fcabd32b
mail: data.headers is now headers
2021-01-29 00:02:03 -08:00
Girish Ramakrishnan
a842d77b6d
Fix SOGo login
...
listAllMailboxes query was mangled
2021-01-28 22:21:44 -08:00
Girish Ramakrishnan
ef68cb70c0
email autoconfig
2021-01-28 16:58:37 -08:00
Girish Ramakrishnan
adfb506af4
Fix disk usage graphs
2021-01-27 21:48:06 -08:00
Girish Ramakrishnan
1d188297f9
6.1.1 changes
2021-01-27 13:10:40 -08:00
Girish Ramakrishnan
141a32315f
ignore any applyServiceConfig failures when starting services
2021-01-27 11:33:27 -08:00
Girish Ramakrishnan
8f7b224846
proxyauth: make auth error handler return 401 for docker client
2021-01-27 00:33:27 -08:00
Girish Ramakrishnan
4610e05ca1
Fix well-known migration
2021-01-26 21:10:06 -08:00
Johannes Zellner
cc4407a438
adminMaxCount is not a feature for now, since we have roles feature
2021-01-25 19:14:32 +01:00
Girish Ramakrishnan
5d9568eb91
Fix typo
2021-01-22 11:24:24 -08:00
Johannes Zellner
a9f52ba305
Ensure to rebuild reverse proxy config if http port changes on update
2021-01-22 11:25:32 +01:00
Girish Ramakrishnan
9f9575f46a
Fixes to service configuration
...
restart service does not rebuild automatically, we should add a route
for that. we need to figure where to scale services etc if we randomly
create containers like that.
2021-01-21 17:41:22 -08:00
Girish Ramakrishnan
47a598a494
rename getService to getServiceStatus
2021-01-21 12:40:41 -08:00
Girish Ramakrishnan
d294dea84d
rename getServices to getServiceIds
2021-01-21 12:38:12 -08:00
Girish Ramakrishnan
304fe45ee8
getServicesConfig -> getServiceConfig
...
it gets setting of a single service. the settings API returns multiple
ones, so it makes sense to call that one getServicesConfig
2021-01-21 12:22:06 -08:00
Girish Ramakrishnan
0edb673dc6
rename platform config to services config
2021-01-21 12:19:57 -08:00
Girish Ramakrishnan
cd1b46848e
Fix bug where graphite and sftp are not incrementally upgraded
2021-01-21 12:00:23 -08:00
Girish Ramakrishnan
6bd87485c6
rename addons.js to services.js
...
services is the named container (services view)
addons is more like a heroku concept
2021-01-21 11:31:35 -08:00
Girish Ramakrishnan
d5952fafc3
Update changes
2021-01-20 20:32:22 -08:00
Girish Ramakrishnan
7660e90d51
read ratio from swap-ratio
2021-01-20 20:20:00 -08:00
Girish Ramakrishnan
4d482d11ee
add apps.getMemoryLimit
2021-01-20 19:16:21 -08:00
Girish Ramakrishnan
a14dbbe77a
refactor into docker.update
2021-01-20 18:58:23 -08:00
Girish Ramakrishnan
0d535d2d5c
allocate swap size for containers based on system ratio
2021-01-20 18:41:51 -08:00
Girish Ramakrishnan
7b24239d38
update the service config in addons code
2021-01-20 11:10:50 -08:00
Girish Ramakrishnan
10d7c47576
Fix typo
2021-01-19 19:58:44 -08:00
Girish Ramakrishnan
025eb18411
Use a single memoryLimit instead of memory and memorySwap
...
We will make the percent allocation dynamic depending on the system.
When we have servers with a large amount of RAM but little swap, we
seem to use a lot of swap because of 50% allocation strategy. In such
systems, we run out of swap and thus have OOM errors even though there
is a lot of RAM available!
2021-01-19 19:43:41 -08:00
Girish Ramakrishnan
24db6630ee
platform config settings route is obsolete (now under services)
2021-01-19 19:35:06 -08:00
Girish Ramakrishnan
0930683366
Fix failing tests
2021-01-19 19:35:06 -08:00
Girish Ramakrishnan
67bdf47ef6
rename hostname to vhost to make the code less magical
2021-01-19 14:09:31 -08:00
Girish Ramakrishnan
de869b90ee
replace * in alias domain with _ for better filenames
...
this is similar to what we do for cert filenames
2021-01-19 13:36:31 -08:00
Girish Ramakrishnan
9e2f52caef
Add changes
2021-01-19 08:51:20 -08:00
Johannes Zellner
b06432824c
Add netcup dns provider
...
Fixes #763
2021-01-19 16:17:10 +01:00
Girish Ramakrishnan
07642f0c56
make multiDomain a boolean
2021-01-18 23:01:39 -08:00
Girish Ramakrishnan
f17899d804
allow wilcard in alias domains
2021-01-18 22:59:31 -08:00
Girish Ramakrishnan
88cd857f97
rename main to primary
2021-01-18 22:31:10 -08:00
Girish Ramakrishnan
195fb198dd
implement domain aliases
2021-01-18 17:34:39 -08:00
Girish Ramakrishnan
ad2219dd43
merge subdomain query into main query
2021-01-18 15:27:42 -08:00
Girish Ramakrishnan
55eb999821
Add to changes
2021-01-17 18:18:27 -08:00
Girish Ramakrishnan
aedc8e8087
do not send flurry of down notification on box restart
2021-01-16 11:27:19 -08:00
Girish Ramakrishnan
de7d27cd08
more module updates
2021-01-16 10:05:24 -08:00
Girish Ramakrishnan
e4c7985e10
update many modules
2021-01-16 10:03:57 -08:00
Johannes Zellner
fbcfa647ef
Add basic owner transfer test
2021-01-15 21:13:13 +01:00
Girish Ramakrishnan
953c65788c
mail: haraka update
2021-01-15 11:22:27 -08:00
Johannes Zellner
b6473bc8f0
Add route to transfer ownership
2021-01-15 14:28:41 +01:00
Johannes Zellner
a5cdd6087a
Revert "To allow transfer ownership, a user has to be able to update its role if permissions are granted by current role"
...
This reverts commit c2f8da5507 .
2021-01-15 14:16:55 +01:00
Johannes Zellner
24ffe5ec26
change volume test paths to not easily conflict
2021-01-14 21:15:54 +01:00
Johannes Zellner
c2f8da5507
To allow transfer ownership, a user has to be able to update its role if permissions are granted by current role
2021-01-14 21:15:54 +01:00
Girish Ramakrishnan
dbf3d3abd7
mail: better event log for bounces
2021-01-13 23:12:14 -08:00
Girish Ramakrishnan
9ee4692215
updatechecker: clear box update after update is done
2021-01-13 17:10:07 -08:00
Johannes Zellner
126f5e761b
Ensure we have some default values for userRoles and adminMaxCount
2021-01-13 16:29:25 +01:00
Johannes Zellner
6874792670
Ensure features.userGroups has a default value
2021-01-13 14:48:58 +01:00
Johannes Zellner
6b3b4eb8b3
Use correct error variable
2021-01-13 12:33:40 +01:00
Girish Ramakrishnan
d67598ab7e
turn: use correct base image
2021-01-12 17:06:48 -08:00
Girish Ramakrishnan
d8fd6be832
turn: fix for CVE-2020-26262
2021-01-12 17:03:30 -08:00
Girish Ramakrishnan
a5dc65bda7
blacklist couchpotato on demo
2021-01-11 22:29:21 -08:00
Girish Ramakrishnan
6c8be9a47a
add sickchill to demo blacklist
2021-01-11 22:04:12 -08:00
Girish Ramakrishnan
1a5fc894d6
Fix proxyAuth nginx config
2021-01-11 21:52:41 -08:00
Girish Ramakrishnan
7f324793b5
typo
2021-01-10 11:31:25 -08:00
Girish Ramakrishnan
0735353ab4
cloudron-setup: add --env unstable
...
this installs the latest unstable code but with prod appstore
2021-01-10 11:26:17 -08:00
Johannes Zellner
6ff2c5f757
Add apparmor as install dependency
...
Some hetzner images do not include that by default
2021-01-10 20:00:51 +01:00
Girish Ramakrishnan
29ab352846
proxyAuth: add exclusion path
...
had to move the ~ login/logout regexp inside. This is because of
https://www.ruby-forum.com/t/proxy-pass-location-inheritance/239135
What it says is that a regexp inside a matching location prefix is
given precedence regardless of how it appears in the file. This means
that the negative regexp got precedence over login|logout and thus
went into infinite redirect. By moving it to same level, the regexps
are considered in order.
Some notes on nginx location:
* First, it will match the prefixes (= and the /). If =, the matching stops.
If /xx then the longest match is "remembered"
* It will then match the regex inside the longest match. First match wins
* It will then match the rest of the regex locations. First match win
* If no regex matched, it will then do the remembered longest prefix
fixes #762
2021-01-08 21:16:49 -08:00
Girish Ramakrishnan
4a6f36bc0e
make the notfound page customizable
...
fixes #755
2021-01-08 11:02:09 -08:00
Girish Ramakrishnan
0ef0c77305
rename splash to notfound
...
part of #755
2021-01-08 10:13:01 -08:00
Girish Ramakrishnan
05c331172a
Fix test
2021-01-07 22:21:41 -08:00
Girish Ramakrishnan
2414b44b6d
Add to changes
2021-01-07 22:03:19 -08:00
Girish Ramakrishnan
ca53449141
mailbox: list mailbox with alias info with a self join
...
fixes #738
2021-01-07 22:03:19 -08:00
Johannes Zellner
9342b2f0e3
Increase cloudron name to 64
2021-01-07 22:49:52 +01:00
Girish Ramakrishnan
d15aa68bd7
eventlog: only merge ldap login events (and not dashboard)
...
fixes #758
2021-01-06 22:09:37 -08:00
Girish Ramakrishnan
624e34d02d
eventlog: add logout
...
fixes #757
2021-01-06 21:57:56 -08:00
Girish Ramakrishnan
af683b5fa4
add to changes
2021-01-06 21:47:48 -08:00
Girish Ramakrishnan
f9c6c0102e
mail: https://github.com/haraka/Haraka/pull/2893
2021-01-06 17:51:51 -08:00
Girish Ramakrishnan
f71fbce249
mail: do not send client certs
2021-01-06 17:08:26 -08:00
Girish Ramakrishnan
a184012205
apptask: set the memory limit based on the backup config
...
fixes #759
2021-01-06 15:26:51 -08:00
Girish Ramakrishnan
3bf50af09a
mail: update haraka
2021-01-06 11:43:49 -08:00
Girish Ramakrishnan
29c513df78
apt: do not install recommended packages, only deps
2021-01-04 23:30:41 -08:00
Girish Ramakrishnan
d2e03c009a
redis: remove dead code
2021-01-04 19:36:43 -08:00
Girish Ramakrishnan
a541c0e048
Fix installation on atlantic.net
2021-01-04 17:56:14 -08:00
Girish Ramakrishnan
ead832ac73
volumes: collect du data
...
part of #756
2021-01-04 15:14:00 -08:00
Girish Ramakrishnan
370485eee6
avatar: use copy instead of rename
...
this is safer since rename() might fail with EXDEV on some servers
if /tmp and /home are on different filesystems.
2021-01-04 07:51:10 -08:00
Girish Ramakrishnan
f3165c4e3b
installer: move unzip to base image
2021-01-03 15:09:58 -08:00
Girish Ramakrishnan
a8187216af
installer: ipset is now in base image
2021-01-03 15:08:44 -08:00
Girish Ramakrishnan
cf79e7f1ec
Do not install xorg-server package
...
~# aptitude why xserver-xorg
i collectd Recommends libnotify4 (>= 0.7.0)
i A libnotify4 Recommends gnome-shell | notification-daemon
i A gnome-shell Recommends gdm3 (>= 3.10.0.1-3~)
i A gdm3 Recommends xserver-xorg
2021-01-03 14:53:47 -08:00
Girish Ramakrishnan
353369c1e9
mailer: make oom mail contain link to dashboard instead of docs
2021-01-02 12:26:34 -08:00
Girish Ramakrishnan
6507d95b98
rebuild mail container
...
https://github.com/haraka/Haraka/issues/2883
2021-01-02 12:12:08 -08:00
Girish Ramakrishnan
294413b798
Fix comment
2021-01-02 12:12:08 -08:00
Girish Ramakrishnan
51fd959e9d
filemanager: better error message
2020-12-30 11:22:31 -08:00
Girish Ramakrishnan
8ddc72704e
no need to bold version
2020-12-29 17:56:41 -08:00
Girish Ramakrishnan
d1f9ae3df8
fix subject of the emails
2020-12-29 17:51:41 -08:00
Girish Ramakrishnan
28dee54a39
updates: only send email notifications when not auto-updating
...
fixes #749
2020-12-29 17:47:51 -08:00
Girish Ramakrishnan
ff5702efc3
Better error message
2020-12-29 17:40:01 -08:00
Girish Ramakrishnan
663e0952fc
move wellKnownJson to domains
...
after some more thought:
* If app moves to another location, user has to remember to move all this config
* It's not really associated with an app. It's to do with the domain info
* We can put some hints in the UI if app is missing.
part of #703
2020-12-23 17:13:22 -08:00
Girish Ramakrishnan
8a17e13ec4
automate wellknown setup
...
the main reason this is under app and not domain is because it let's
the user know that an app has to be installed for the whole thing to work.
part of #703
2020-12-23 15:20:53 -08:00
Girish Ramakrishnan
a8436f8784
Fix external ldap test
2020-12-22 16:57:21 -08:00
Girish Ramakrishnan
93313abf33
test: emails are not sent anymore
2020-12-22 16:38:30 -08:00
Girish Ramakrishnan
246956fd0e
groupMembers: add unique constraint
...
fixes #696
2020-12-22 16:18:15 -08:00
Girish Ramakrishnan
b2fe43184c
more changes
2020-12-22 10:13:17 -08:00
Girish Ramakrishnan
7bdeaca75b
secure the provision and activation routes with a token
...
fixes #751
2020-12-21 23:33:31 -08:00
Girish Ramakrishnan
e905c1edbe
make function a bit more readable
2020-12-21 18:07:39 -08:00
Girish Ramakrishnan
88f24afae6
assume code 1 task 9 is oom
...
Fixes #750
2020-12-21 18:07:21 -08:00
Girish Ramakrishnan
33fb093aeb
remove extra arg
2020-12-21 15:30:15 -08:00
Girish Ramakrishnan
ac6c9e9b15
hasSubscription is always true
...
dashboard has logic for showing popup
2020-12-21 15:25:24 -08:00
Girish Ramakrishnan
df5a333f30
add version to the updatechecker file
2020-12-21 12:41:23 -08:00
Girish Ramakrishnan
65290e52f7
persist update indicator across restarts
...
part of #749
2020-12-21 12:36:02 -08:00
Girish Ramakrishnan
9683bb6408
remove email notification for user add/remove
...
it's just very noisy. we anyway raise notifications
2020-12-21 08:45:18 -08:00
Girish Ramakrishnan
e5209a1392
fix some typos
2020-12-20 14:41:16 -08:00
Girish Ramakrishnan
56707ac86a
proxyauth: add 2fa
...
Fixes #748
2020-12-20 13:14:21 -08:00
Girish Ramakrishnan
64a4b712cc
proxyAuth: add a hack to invalidate cache
...
when user goes to /logout and then goes to /, the browser will
serve up the cached / based on cache-control. This might make the
user believe they are not logged out.
fixes #753
2020-12-19 22:09:14 -08:00
Girish Ramakrishnan
3ccd527c8b
acme2: fix logs
2020-12-19 16:24:56 -08:00
Girish Ramakrishnan
85d37233a2
proxyAuth: redirect to /login when logout
...
part of #753
2020-12-19 14:49:34 -08:00
Girish Ramakrishnan
eff9d378e5
nfs: chown the backups for hardlinks to work
2020-12-18 17:14:42 -08:00
Girish Ramakrishnan
0f9a5c6b9a
nfs: is prefix is empty, it errors
2020-12-18 14:41:59 -08:00
Girish Ramakrishnan
a20bcbd570
mail: update haraka to 2.8.26
2020-12-17 17:57:19 -08:00
Girish Ramakrishnan
583c544cae
regenerate nginx config when proxyAuth changes
2020-12-17 10:25:23 -08:00
Girish Ramakrishnan
f55300eba5
reduce DO spaces copy part size
2020-12-15 14:37:18 -08:00
Girish Ramakrishnan
a68ddcbbc4
Fix progress message
2020-12-14 19:58:44 -08:00
Girish Ramakrishnan
0723b7d672
reduce copy concurrency to keep most providers happy
2020-12-14 17:26:44 -08:00
Girish Ramakrishnan
f5ed17e3d8
add ack flag to the debug
2020-12-14 16:07:09 -08:00
Girish Ramakrishnan
5ecf457a35
proxy auth: be explicit it is a 302 (default)
2020-12-13 13:24:59 -08:00
Girish Ramakrishnan
79a7e5d4a1
Also blacklist transmission on the demo
2020-12-13 12:36:13 -08:00
Girish Ramakrishnan
7d157b9343
Various 6.0.2 changes
2020-12-09 22:03:18 -08:00
Girish Ramakrishnan
67ccb180c9
update: set/unset appStoreId from the update route
2020-12-09 16:51:49 -08:00
Girish Ramakrishnan
822964116f
remove dead code
...
appStoreId is never set to be cleared
2020-12-09 16:47:58 -08:00
Girish Ramakrishnan
360c3112ef
use docker.inspect
2020-12-08 11:42:00 -08:00
Girish Ramakrishnan
f2fba18860
scheduler: fix crash when container already exists
2020-12-08 11:36:57 -08:00
Girish Ramakrishnan
cae9921159
sftp: use docker.inspect instead
2020-12-07 22:27:33 -08:00
Girish Ramakrishnan
f497d5d309
fix thp disable on kernels that have it disabled
2020-12-07 11:38:11 -08:00
Girish Ramakrishnan
51a165dc7a
add changes
2020-12-07 00:04:14 -08:00
Girish Ramakrishnan
9d4082356b
mail: on location change, ignore error if dns cannot be updated
2020-12-07 00:02:56 -08:00
Girish Ramakrishnan
3b8bc47ee5
Set and clear timeout for external requests
...
otherwise, the server crashes for a write after timeout
2020-12-06 23:31:57 -08:00
Girish Ramakrishnan
78752fde7a
app: add export route
...
Currently, the export route only creates the snapshot (the other side
of in-place import). In the future, the export route can export to a
custom backup config (like import).
2020-12-06 19:57:26 -08:00
Girish Ramakrishnan
c6fd922fcd
Blacklist adguard on the demo
2020-12-04 23:01:47 -08:00
Girish Ramakrishnan
e90a211820
use REPLACE to ensure the key is inserted
2020-12-04 18:49:03 -08:00
Girish Ramakrishnan
8529485837
sftp: require admin by default (breaking change)
2020-12-04 18:45:52 -08:00
Girish Ramakrishnan
6810d823f5
collectd(df): convert byte string to string
...
this makes the graphs work
2020-12-04 12:10:59 -08:00
Girish Ramakrishnan
3e62f1913a
acme2: issuer name has changed
...
There is now Let's Encrypt R3 and Let's Encrypt R4 etc
https://scotthelme.co.uk/lets-encrypts-new-root-and-intermediate-certificates/
2020-12-04 11:48:45 -08:00
Girish Ramakrishnan
d23662c464
acme2: better logs
2020-12-04 11:47:19 -08:00
Girish Ramakrishnan
922c1ea317
acme2: fix error messages
2020-12-04 11:42:18 -08:00
Girish Ramakrishnan
258d81d7e9
mongo: bring mem limit in-line with others
2020-12-04 11:04:21 -08:00
Girish Ramakrishnan
1363e02603
graphite: bump up memory limit
2020-12-04 10:59:06 -08:00
Girish Ramakrishnan
ccc65127f1
volumes: fix upload limit
2020-12-04 10:35:51 -08:00
Girish Ramakrishnan
3b38bb5d33
sftp: requireAdmin is true by default
...
for existing installs, it is off for backward compatibility
2020-12-04 00:25:37 -08:00
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
2a32bf3fc7
Add to changes
2020-12-03 21:58:27 -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
b7fed04c12
roll back ldapjs
...
There is a crash upstream - https://github.com/ldapjs/node-ldapjs/pull/686
2020-12-02 14:50:03 -08:00
Girish Ramakrishnan
0ec5714271
Add to changes
2020-12-02 09:46:13 -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
3a25c8da9f
remove old code
2020-12-01 22:49:59 -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
4287642308
firewall: add udp ports to allowed list
2020-11-30 10:26:39 -08:00
Girish Ramakrishnan
3934e59bd3
filemanager: allow downloading dirs as zip
2020-11-29 16:28:10 -08:00
Girish Ramakrishnan
9080e5c3ab
tests: do not require passphrase
2020-11-29 11:19:28 -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
213ce114e3
disable thp
...
https://docs.mongodb.com/manual/tutorial/transparent-huge-pages/
redis complains loudly and this oftens results in support requests
2020-11-28 16:30:04 -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
1d3d8288a9
unbound does not depend on box
2020-11-25 18:31:30 -08:00
Girish Ramakrishnan
eec54e93bf
Need nginx 1.18.0-2 for fresh ubuntu 16 installs
...
it fails with missing /run/nginx.pid message
2020-11-25 17:57:58 -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
7b3b826f87
DNS fixes that work on all ubuntu versions
2020-11-23 00:27:17 -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
9c810ce837
hack to make translation tests pass
2020-11-21 23:07:30 -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
Johannes Zellner
f324d50cef
Translate welcome mail
2020-11-20 16:10:13 +01:00
Johannes Zellner
93a1e6fca8
Avoid translation file caching
2020-11-20 16:10:13 +01:00
Girish Ramakrishnan
4d55783ed8
unbound: start it after docker
2020-11-19 23:22:11 -08:00
Girish Ramakrishnan
aad50fb5b2
add routes to get/set solr config
2020-11-19 20:19:24 -08:00
Johannes Zellner
fb4ba5855b
Make emails translatable
2020-11-20 00:43:12 +01:00
Johannes Zellner
fbe5f42536
Split welcome email between html and text version
2020-11-19 22:29:29 +01:00
Girish Ramakrishnan
7663360ce6
add to changes
2020-11-19 11:20:22 -08:00
Girish Ramakrishnan
0a3aad0205
Add httpPaths support
2020-11-19 11:02:53 -08:00
Girish Ramakrishnan
cde42e5f92
postgresql: rebuild (for new manifest)
2020-11-19 09:35:55 -08:00
Girish Ramakrishnan
fd965072c5
Remove custom dns when creating app container
2020-11-19 01:10:50 -08:00
Girish Ramakrishnan
d703d1cd13
remove httpPort
...
we can just use container IP instead of all this httpPort exporting magic.
this is also required for exposing httpPaths feature (we have to otherwise
have multiple httpPorts).
2020-11-19 00:38:52 -08:00
Girish Ramakrishnan
bd9c664b1a
Free up port 53
...
It's all very complicated.
Approach 1: Simple move unbound to not listen on 0.0.0.0 and only the internal
ones. However, docker has no way to bind only to the "public" interface.
Approach 2: Move the internal unbound to some other port. This required a PR
for haraka - https://github.com/haraka/Haraka/pull/2863 . This works and we use
systemd-resolved by default. However, it turns out systemd-resolved with hog the
lo and thus docker cannot bind again to port 53.
Approach 3: Get rid of systemd-resolved and try to put the dns server list in
/etc/resolv.conf. This is surprisingly hard because the DNS listing can come from
DHCP or netplan or wherever. We can hardcode some public DNS servers but this seems
not a good idea for privacy.
Approach 4: So maybe we don't move the unbound away to different port after all.
However, all the work for approach 2 is done and it's quite nice that the default
resolver is used with the default dns server of the network (probably a caching
server + also maybe has some home network firewalled dns).
So, the final solution is to bind to the make docker bind to the IP explicity.
It's unclear what will happen if the IP changes, maybe it needs a restart.
2020-11-18 23:25:56 -08:00
Johannes Zellner
ae94ff1432
Send Cloudron default language via status call
2020-11-18 23:45:16 +01:00
Johannes Zellner
b64acb412e
Add cloudron-translation-update script
2020-11-18 23:16:42 +01:00
Johannes Zellner
cbc5ec7d89
List languages from dashboard dist/translation
2020-11-18 18:39:55 +01:00
Johannes Zellner
5401dc9e18
Update ldapjs module
2020-11-18 09:33:06 +01:00
Girish Ramakrishnan
9b37597ac8
Bump up max_allowed_packet
...
https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_allowed_packet
has it already set to 64M by default. I also saw some mysql connection
drop issues and think this is the reason
2020-11-17 19:45:28 -08:00
Johannes Zellner
784c8b2bd2
Add route to get available languages
2020-11-18 00:10:06 +01:00
Johannes Zellner
2388fe5047
Add cloudron global language setting
2020-11-17 22:44:03 +01:00
Girish Ramakrishnan
064eff0ac1
add changes
2020-11-16 22:50:56 -08:00
Girish Ramakrishnan
b5c933494a
linode: cannot destructure null/undefined
...
if we have an error, the destructure will fail
2020-11-16 22:37:53 -08:00
Girish Ramakrishnan
8c0bd97064
mail: owner can be a group
2020-11-13 00:31:34 -08:00
Girish Ramakrishnan
2ca9534715
add some comments on the ldap routes
2020-11-12 22:13:24 -08:00
Girish Ramakrishnan
641704a741
proxyauth: support basic auth
...
this is required for apps like transmission
2020-11-11 15:11:36 -08:00
Girish Ramakrishnan
82d88d375e
sftp: fix crash
2020-11-11 11:13:30 -08:00
Johannes Zellner
751caa7b3b
Prefix base64 image data
2020-11-11 11:24:20 +01:00
Girish Ramakrishnan
7e16128b11
proxyauth: render as ejs tos end app title and icon
2020-11-11 00:36:02 -08:00
Girish Ramakrishnan
008fa09877
proxyauth: redirect correctly after login
2020-11-11 00:01:36 -08:00
Girish Ramakrishnan
045963afe5
serve proxyauth login file from the dashboard
2020-11-10 21:18:50 -08:00
Girish Ramakrishnan
b799df3626
authproxy -> proxyauth
2020-11-10 20:04:31 -08:00
Girish Ramakrishnan
772df6f9af
typo
2020-11-10 19:49:57 -08:00
Girish Ramakrishnan
72cb383f2c
proxy auth: create token secret
2020-11-10 17:20:27 -08:00
Girish Ramakrishnan
625dc7c49b
Add proxyAuth as an addon
2020-11-10 16:50:36 -08:00
Girish Ramakrishnan
86916a94de
allow 401 and 403 errors to pass health check
...
way too many WP sites use some plugin to block health check routes.
maybe some day we will have dynamic health check route settable by user.
2020-11-10 16:50:36 -08:00
Girish Ramakrishnan
71666a028b
add support for protected sites
...
https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-subrequest-authentication/
https://gock.net/blog/2020/nginx-subrequest-authentication-server/
https://github.com/andygock/auth-server
2020-11-10 01:06:39 -08:00
Girish Ramakrishnan
01e6301332
collectd: adjust collectd config when app is stopped and started
2020-11-09 10:37:22 -08:00
Johannes Zellner
13050f7bff
Give log files better names on download
2020-11-09 11:07:16 +01:00
Girish Ramakrishnan
bedcd6fccf
Disable the timeout altogether for chunk to upload
2020-11-06 14:47:14 -08:00
Girish Ramakrishnan
df8a71cd8b
Each chunk can take up to 30 mins to upload
2020-11-06 00:05:53 -08:00
Girish Ramakrishnan
a113ece22b
Still have to preserveEnv for the env vars to make it across sudo
2020-11-05 16:13:42 -08:00
Girish Ramakrishnan
a63c2cfdf2
reverse this since it makes better reading
2020-11-05 16:08:57 -08:00
Girish Ramakrishnan
8f78a9dcde
No need to pass --expose-gc
...
http://sambal.org/2014/02/passing-options-node-shebang-line/ was a cool trick but not needed at all.
https://bitbucket.org/chromiumembedded/cef/issues/483/dont-always-add-the-expose-gc-v8-flag
says it will change behavior in ways we don't want.
2020-11-05 16:07:28 -08:00
Girish Ramakrishnan
02eb362f37
Set the heap size with large backup memory limits
...
I had to also give the server some more swap for the backup to succeed
2020-11-05 16:06:12 -08:00
Girish Ramakrishnan
f79263a92a
backups: periodically dump heap space info
2020-11-05 16:06:09 -08:00
Girish Ramakrishnan
cd95da6d35
Typo in message
2020-11-05 09:59:13 -08:00
Johannes Zellner
5ab2c9afaa
Use new sftp image to fix chown
2020-11-04 15:11:41 +01:00
Johannes Zellner
e77201099d
Encode filemanager route paths correctly and do not expect starts with /
2020-11-04 13:58:53 +01:00
Johannes Zellner
30a4c00f35
Update sftp addon to avoid crash when overwrite property is missing
2020-11-03 21:27:24 +01:00
Girish Ramakrishnan
e68db4ce57
Aim for 60% used space
2020-11-02 23:42:53 -08:00
Girish Ramakrishnan
b5a83ab902
demo: blacklist alltube as well
2020-11-02 15:16:21 -08:00
Girish Ramakrishnan
2c9efea733
Use debug instead of console.error
2020-10-30 11:07:51 -07:00
Girish Ramakrishnan
9615dc1458
Mount volumes into the file browser
2020-10-30 11:05:47 -07:00
Girish Ramakrishnan
f50a8482c3
Fix error code handling
2020-10-30 10:04:00 -07:00
Girish Ramakrishnan
cd3dc00f2f
Do not allow duplicate mounts
2020-10-29 23:07:48 -07:00
Girish Ramakrishnan
65eae30a48
Mount API fixes
2020-10-29 22:04:38 -07:00
Girish Ramakrishnan
fa4392df09
Fix docker.getBinds()
2020-10-29 11:47:37 -07:00
Johannes Zellner
f8d6fd80d5
Do not crash if app.volumes does not exist
2020-10-29 12:09:15 +01:00
Girish Ramakrishnan
88ed545830
rename appVolumes to appMounts
2020-10-28 22:06:33 -07:00
Girish Ramakrishnan
4388f6e87c
Send volumes in REST response
2020-10-28 19:33:32 -07:00
Girish Ramakrishnan
6157364e20
Cannot update a volume (otherwise, we have to re-configure apps)
2020-10-28 17:04:24 -07:00
Girish Ramakrishnan
96999e399d
volume: use the load pattern
...
this way we can stash info in the eventlog
2020-10-28 15:56:54 -07:00
Girish Ramakrishnan
6a3df679fa
Add volume management
...
the volumes table can later have backup flag, mount options etc
2020-10-28 15:31:21 -07:00
Johannes Zellner
03e49c59e2
Revert "more changes"
...
This reverts commit d69af56c90 .
2020-10-28 16:16:10 +01:00
Girish Ramakrishnan
b525b6e4fa
fix code style
2020-10-27 17:15:19 -07:00
Girish Ramakrishnan
5541b89cf7
Revert "redis: add optional flag"
...
This reverts commit 0cac5610c8 .
2020-10-27 08:48:45 -07:00
Girish Ramakrishnan
aaeed5d18b
Revert "Another check for redis services configs"
...
This reverts commit d6c3c8a294 .
2020-10-27 08:48:17 -07:00
Johannes Zellner
d6c3c8a294
Another check for redis services configs
2020-10-27 14:47:52 +01:00
Johannes Zellner
d337fc6d47
Do not crash if an app does not have a redis service config
2020-10-27 09:32:22 +01:00
Johannes Zellner
2d897d8537
A task crash should be visible in the task log
2020-10-27 09:20:26 +01:00
Girish Ramakrishnan
12b101e04f
Make the timeout 30 seconds everywhere
2020-10-26 14:08:34 -07:00
Girish Ramakrishnan
d69af56c90
more changes
2020-10-26 10:04:37 -07:00
Girish Ramakrishnan
0cac5610c8
redis: add optional flag
2020-10-24 10:34:30 -07:00
Girish Ramakrishnan
d0afcf6628
Disable updating the cloudron user in demo mode
2020-10-23 11:41:39 -07:00
Girish Ramakrishnan
37fa27d54f
more changes
2020-10-22 10:04:27 -07:00
Girish Ramakrishnan
be4fed2c19
postgresql: whitelist pgcrypto extension for loomio
2020-10-22 08:56:55 -07:00
Johannes Zellner
47d02d8c4f
Update sftp addon container
2020-10-22 15:52:27 +02:00
Girish Ramakrishnan
4881d8e3a1
Add option to allow non-admins to access SFTP
2020-10-21 23:38:13 -07:00
Johannes Zellner
cc618abf58
Update sftp image
2020-10-20 12:44:38 +02:00
Girish Ramakrishnan
546e381325
skip downloading image if image present locally
...
if we use build service app locally (without push), then we can skip
the download altogether.
2020-10-19 22:22:29 -07:00
Girish Ramakrishnan
9d1bb29a00
sftp: Make extract work
2020-10-19 19:58:39 -07:00
Girish Ramakrishnan
876d0d5873
sftp: init and access API with a token
2020-10-19 19:13:54 -07:00
Girish Ramakrishnan
2aa5c387c7
branding: add template variables
...
we can now have %YEAR% and %VERSION% in the footer
2020-10-18 10:19:13 -07:00
Girish Ramakrishnan
9ca8e49a4e
More changes
2020-10-15 16:46:22 -07:00
Girish Ramakrishnan
6ceed03f6b
5.6.3 changes
2020-10-12 21:09:47 -07:00
Girish Ramakrishnan
4836b16030
postgresql: make the locale configurable
2020-10-12 18:57:34 -07:00
Girish Ramakrishnan
f9f44b18ad
suppress reset-failed warning message
2020-10-12 10:08:07 -07:00
Girish Ramakrishnan
d4f5b7ca34
cloudron-setup: mention "After reboot"
2020-10-08 23:23:05 -07:00
Girish Ramakrishnan
9b57329f56
Ghost password can now only be used once
2020-10-08 22:19:18 -07:00
Girish Ramakrishnan
0064ac5ead
reduce the duration of self-signed certs
...
https://support.apple.com/en-us/HT210176
https://forum.cloudron.io/topic/3346/automatically-generated-self-signed-wildcard-certificate-doesn-t-appear-to-be-able-to-be-trusted-by-ios-13-or-greater
2020-10-08 14:39:23 -07:00
Girish Ramakrishnan
f2489c0845
some logs for tracking the cron issue
2020-10-07 14:47:51 -07:00
Girish Ramakrishnan
dca345b135
restore: disable IP based api calls after all activation tasks
...
the restore code relies on the status call to get the domain to
redirect. if the IP/v1/cloudron/status does not respond, it will
fail the redirection.
2020-10-07 10:57:19 -07:00
Johannes Zellner
645c1b9151
Limit log files to last 1000 lines
2020-10-07 17:42:35 +02:00
Johannes Zellner
678fca6704
For app tickets, send the log files along
2020-10-06 17:53:07 +02:00
Johannes Zellner
b74fae3762
Support SSH remote enabling on ticket submission
2020-10-06 16:01:59 +02:00
Johannes Zellner
2817ea833a
Add enableSshSupport option to support tickets
2020-10-06 16:01:59 +02:00
Girish Ramakrishnan
b7ed6d8463
add changes
2020-10-05 21:32:25 -07:00
Girish Ramakrishnan
005c33dbb5
locations (primary, secondary) of an app must be updated together
...
do the delete first to clear out all the domains. this way, you can
move primary to redirect in a single shot.
2020-10-05 16:16:58 -07:00
Girish Ramakrishnan
4176317250
Fix version in changes to prepare for 5.6.2
2020-10-05 12:45:12 -07:00
Girish Ramakrishnan
bbd562f711
Add changes
2020-10-04 16:40:47 -07:00
Girish Ramakrishnan
a19505a708
Fix postgresql template
2020-10-01 15:47:59 -07:00
Girish Ramakrishnan
1eed16bc97
postgresql: set collation order explicitly
2020-10-01 12:04:52 -07:00
Girish Ramakrishnan
d9f88985fe
rsync: create destination file only when source is available
...
if the source disappears, the upload() in the backend creates the file
as 'root'. the chown is never done because the read stream errored.
As a result of permissions, cp fails to hardlink because the hardlink
is run as yellowtent user.
fixes #741
2020-09-30 20:12:17 -07:00
Girish Ramakrishnan
a57e33e8d1
Update readme with hotfix instructions
2020-09-30 09:55:17 -07:00
Girish Ramakrishnan
b4552ddb5f
more changes
2020-09-29 14:46:52 -07:00
Girish Ramakrishnan
1da2450b10
gcs: use copy concurrency
2020-09-28 22:03:08 -07:00
Girish Ramakrishnan
9536b42244
Add changes
2020-09-28 10:27:34 -07:00
Johannes Zellner
dd75cdb37e
Don't explicitly sync the filesystems on reboot
...
This will happen during unmount anyways but will first terminate all
processes
2020-09-25 19:11:15 +02:00
Johannes Zellner
3b3e537797
Update ldapjs dependency to 2.2.0
2020-09-24 12:50:14 +02:00
Girish Ramakrishnan
0f9168052a
nginx: add separate endpoint for ip/setup screens
...
'setup' endpoint for setup/restore. we show the setup wizard.
'ip' endpoint is post activation. we show a splash screen here.
Also, the https://ip will not respond to any api calls anymore
(since this will leak the admin fqdn otherwise).
We should probably make this customizable at some point.
Fixes #739
2020-09-23 23:07:40 -07:00
Girish Ramakrishnan
eb47476c83
collectd: remove nginx status collection
...
we don't use this at all
2020-09-23 16:09:46 -07:00
Girish Ramakrishnan
7b04817874
rename writeAdmin to writeDashboard
2020-09-23 15:45:04 -07:00
Girish Ramakrishnan
c7a7456ec9
more test fixing
2020-09-23 15:31:07 -07:00
Girish Ramakrishnan
e422dd1198
turn service must be rebuilt on dashboard domain change
...
restart only restarts the container and does not affect the env
variables.
2020-09-23 15:18:28 -07:00
Girish Ramakrishnan
a75928d805
Fix coding style
2020-09-23 15:13:23 -07:00
Girish Ramakrishnan
fb2c5a85b6
Fix cloudron_ghost.json tests
2020-09-23 14:40:45 -07:00
Girish Ramakrishnan
4de2e381ff
npm update
2020-09-23 14:08:27 -07:00
Girish Ramakrishnan
4da8c8d6db
updateServiceConfig: remove retry from platform code
2020-09-22 21:46:11 -07:00
Girish Ramakrishnan
3c565defca
retry setting memory of services
2020-09-22 21:42:47 -07:00
Girish Ramakrishnan
191be658d5
firewall: fix race where blocklist was added after docker rules
2020-09-22 12:02:40 -07:00
Girish Ramakrishnan
1f209d0fb4
fix some comments
2020-09-22 11:43:14 -07:00
Girish Ramakrishnan
ba91e1dfb2
Add change
2020-09-21 22:10:58 -07:00
Girish Ramakrishnan
6766884cd8
Update changes
2020-09-21 16:50:13 -07:00
Girish Ramakrishnan
b075140e76
/dev/dri may not exist
...
In ubuntu 16, it doesn't exist.
See also https://forum.cloudron.io/topic/3189/error-server-error-http-code-500-server-error
2020-09-21 15:59:17 -07:00
Girish Ramakrishnan
aa8586d273
bump mysql for connection limit
2020-09-17 19:24:24 -07:00
Girish Ramakrishnan
9b2a3d23b2
cloudron-setup: there could be owners who have not selected a username yet
2020-09-17 13:56:04 -07:00
Girish Ramakrishnan
6a43a4bd20
unlink ghost file automatically on successful login
2020-09-17 10:46:32 -07:00
Girish Ramakrishnan
8c78889e88
namecheap: fix crash if server returns invalid response
2020-09-16 16:44:40 -07:00
Girish Ramakrishnan
873159b793
Add to changes
2020-09-16 16:05:09 -07:00
Girish Ramakrishnan
b5823d3210
use legacy password scheme in mysql 8
...
https://github.com/db-migrate/node-db-migrate/issues/610
part of #684
2020-09-16 00:03:13 -07:00
Girish Ramakrishnan
cd99c22f64
Fix collectd in focal
...
part of #684
2020-09-16 00:02:58 -07:00
Girish Ramakrishnan
baa5122fcb
Update mysql and docker
...
part of #684
2020-09-15 21:58:40 -07:00
Girish Ramakrishnan
5447aa7c80
missed this one
2020-09-15 14:46:47 -07:00
Girish Ramakrishnan
933918ea27
Fix docs url
2020-09-15 14:46:22 -07:00
Girish Ramakrishnan
cbbcdc5df1
regenerate nginx configs
...
Users are seeing SSL_ERROR_RX_UNEXPECTED_NEW_SESSION_TICKET. Probably related
some of the app configs had ssl_session_tickets off and some didn't . It seems nginx
has some issue if they are inconsistent (see also https://github.com/nginx-proxy/nginx-proxy/issues/580#issuecomment-249587149 ).
https://forum.cloudron.io/topic/3157/ssl-error-after-upgrading-to-5-6-0-on-ubuntu-16
2020-09-15 08:26:41 -07:00
Girish Ramakrishnan
4dfa7b132d
ignore duplicates
2020-09-14 13:53:58 -07:00
Girish Ramakrishnan
fb5bfaa2bd
read does not read last line without a newline
2020-09-14 13:52:10 -07:00
Girish Ramakrishnan
20e206fa43
migrate blocklist to a txt file
...
this allows easy copy/pasting of existing deny lists which contain
comments and blank lines
2020-09-14 12:10:29 -07:00
Girish Ramakrishnan
467fa59023
Fix timeout issue when adding lots of network ranges
2020-09-14 09:56:35 -07:00
Girish Ramakrishnan
166c06c628
log the partSize
2020-09-10 00:09:54 -07:00
Girish Ramakrishnan
5ff3c8961c
mail: log denial of max mail size
2020-09-09 22:48:43 -07:00
Girish Ramakrishnan
08f33f0e78
Add mail location audit log
2020-09-09 22:31:50 -07:00
Girish Ramakrishnan
0c5a637203
Fix progress indicator when mail location is being changed
2020-09-09 21:49:44 -07:00
Girish Ramakrishnan
e3b4fdb6b1
better logs of the scheduler
2020-09-09 20:09:16 -07:00
Girish Ramakrishnan
e730a6e282
log: do not show app update message for no updates
2020-09-09 19:26:45 -07:00
Girish Ramakrishnan
722808a0e4
firewall: make sure blocklist is first in the forward chain
2020-09-09 17:47:20 -07:00
Girish Ramakrishnan
eae33161c1
Forgot the CLOUDRON_ prefix
2020-09-08 19:33:59 -07:00
Girish Ramakrishnan
f14df141f7
Add MAIL_SERVER_HOST
...
This points to the mail fqdn
2020-09-08 19:33:23 -07:00
Girish Ramakrishnan
f7a4330cd1
Add CLOUDRON_LDAP_HOST
...
We have MYSQL_HOST, POSTGRESQL_HOST etc. Just this LDAP has _SERVER
2020-09-08 19:32:21 -07:00
Johannes Zellner
23474c9752
Only disable motd-news if file exists
2020-09-04 10:49:07 +02:00
Girish Ramakrishnan
fc08f9823e
s3: copy parts in parallel
2020-09-03 14:31:56 -07:00
Girish Ramakrishnan
639bddb4b7
Do not use app.manifest.title since it may not be set for custom apps
2020-09-03 13:49:38 -07:00
Girish Ramakrishnan
f87b32fc7b
do not allow setting blocklist in demo mode
2020-09-02 23:04:48 -07:00
Girish Ramakrishnan
468ad6d578
Add some new backup regions
2020-09-02 19:39:58 -07:00
Girish Ramakrishnan
8b5c7d3d87
make http redirect to https://final-destination
2020-09-02 18:56:22 -07:00
Girish Ramakrishnan
e791084793
bump timeout to 24 hours
2020-09-02 18:19:25 -07:00
Girish Ramakrishnan
316a1ae2c5
only scale back containers on infra change
2020-09-02 18:13:08 -07:00
Girish Ramakrishnan
71beca68dc
Fix nginx reload race
2020-09-02 18:02:22 -07:00
Johannes Zellner
aae79db27a
Mention that we use task types also in the dashboard
2020-09-02 17:06:25 +02:00
Girish Ramakrishnan
6f188da2a6
Do not call onActivated when not activated
...
regression caused by ba29889f54
2020-09-01 15:35:43 -07:00
Girish Ramakrishnan
9ae4ce82a7
scheduler: stash the containerId in the state
...
the container id will change when the app is re-configured.
in the future, maybe it's better to do this like sftp.rebuild()
2020-09-01 12:56:06 -07:00
Girish Ramakrishnan
5adfa722d4
Add some debug information
2020-09-01 12:35:31 -07:00
Girish Ramakrishnan
c26dda7cc9
require owner for network blocklist
2020-08-31 22:53:22 -07:00
Girish Ramakrishnan
b7440ee516
Do IP based check first before accepting port based checks
2020-08-31 21:55:45 -07:00
Girish Ramakrishnan
e4b06b16a9
firewall: implement blocklist
2020-08-31 21:46:07 -07:00
Girish Ramakrishnan
491af5bd9a
stop apps before updating the databases because postgres will "lock" them preventing import
2020-08-31 17:53:29 -07:00
Girish Ramakrishnan
9b67ab9713
typo
2020-08-31 08:58:38 -07:00
Girish Ramakrishnan
f0a62600af
No need to accept them here since the ports are managed by docker
2020-08-31 08:58:02 -07:00
Girish Ramakrishnan
dd5dfd98b7
ensure box update backups are also preserved for 3 weeks
2020-08-30 21:38:13 -07:00
Girish Ramakrishnan
d5ec38c4db
do not restrict postgresql db memory
...
see also 3ea6610923
2020-08-30 21:37:57 -07:00
Girish Ramakrishnan
f945463dbe
postgresql: enable uuid-ossp extension
2020-08-26 19:29:41 -07:00
Girish Ramakrishnan
cf9439fb3b
systemd 237 ignores --nice value in systemd-run
2020-08-26 17:30:47 -07:00
Girish Ramakrishnan
6901847c49
Update mail container for banner changes
...
fixes #341
2020-08-24 14:30:39 -07:00
Girish Ramakrishnan
c54c25c35e
fix task signature
2020-08-24 12:57:48 -07:00
Girish Ramakrishnan
5728bce6bc
Fix typos
2020-08-24 10:28:53 -07:00
Girish Ramakrishnan
d752403ed6
mail: add API to get/set banner
...
part of #341
2020-08-24 08:56:13 -07:00
Girish Ramakrishnan
a48c08bd23
Fix async loop
2020-08-23 18:21:00 -07:00
Girish Ramakrishnan
e46bbe8546
Add missing changes
2020-08-22 16:43:00 -07:00
Girish Ramakrishnan
f5c8f18980
spamassassin: custom configs and wl/bl
2020-08-22 15:57:26 -07:00
Johannes Zellner
2d2270a337
Ensure stderr and exceptions also go to logfile
...
Bring back supererror for stacktraces when no Error object is throwing
2020-08-21 10:40:32 +02:00
Johannes Zellner
d315c53ff8
Only rebuild sftp is something has changed
2020-08-21 09:24:06 +02:00
Girish Ramakrishnan
d36b06acf7
Fix mail location route
2020-08-20 23:12:43 -07:00
Girish Ramakrishnan
2299af1dba
Add route to set max email size
2020-08-20 22:18:27 -07:00
Girish Ramakrishnan
e25ccc5e9a
Double the timeout for upload now that chunks can have custom sizes
2020-08-20 16:50:58 -07:00
Girish Ramakrishnan
3ea6610923
do not restrict memory on startup of database addons
...
this helps the import case where we need all the memory we can get.
we scale the memory down once platform is ready in any case.
2020-08-20 11:16:35 -07:00
Girish Ramakrishnan
2d50f10fd6
Fix some typos
2020-08-19 23:14:05 -07:00
Girish Ramakrishnan
81d0637483
Allow box auto update pattern to be configurable
...
We just use the current app auto update pattern as the default.
There is now only one pattern for box and app updates.
Fixes #727
2020-08-19 22:09:41 -07:00
Girish Ramakrishnan
6c4df5abf0
unify update check into a single job
2020-08-19 21:43:12 -07:00
Girish Ramakrishnan
2eb0b5eedd
remove unused parse-links module
2020-08-19 15:53:12 -07:00
Girish Ramakrishnan
0e00492f54
backups: make part size configurable
2020-08-19 14:39:20 -07:00
Girish Ramakrishnan
b84a62eb5d
Add to changes
2020-08-19 13:35:42 -07:00
Johannes Zellner
c41ed95afe
Remove wrong assert
2020-08-19 19:22:10 +02:00
Johannes Zellner
fe07013383
Ensure only one sftp rebuild is in progress
2020-08-19 19:13:34 +02:00
Johannes Zellner
4f9cb9a8a1
sftp.rebuild does not need options anymore
2020-08-19 19:08:12 +02:00
Johannes Zellner
ec5129d25b
Rebuild sftp addon after an apptask
2020-08-19 18:23:44 +02:00
Johannes Zellner
6a781c62ec
Improve task progress values
...
0: not yet handled
1: queued
2: started
100: finished
2020-08-19 16:58:53 +02:00
Girish Ramakrishnan
c01ee83cd7
add note on why we delete
2020-08-18 23:53:14 -07:00
Girish Ramakrishnan
cc591e399d
scheduler: make the container run in same networking space to prevent further churn
...
idea comes from https://github.com/moby/moby/pull/9402#issuecomment-67259655
and https://github.com/moby/moby/pull/9402#issuecomment-67224239
see also:
https://github.com/moby/moby/issues/9098
https://github.com/moby/moby/pull/9167
https://github.com/moby/moby/issues/12899#issuecomment-97816048 (exec mem leak)
https://github.com/moby/moby/pull/38704
part of #732
2020-08-18 23:44:53 -07:00
Girish Ramakrishnan
7462c703f3
typo
2020-08-18 21:40:10 -07:00
Girish Ramakrishnan
879a6b4202
do not error if container already exists
2020-08-18 21:15:54 -07:00
Girish Ramakrishnan
0ae8dc1040
scheduler: reduce container churn
...
When we have a lot of app, docker has a tough time keeping up with
the container churn.
The reason why we don't use docker exec is that there is no way
to delete or manage exec containers.
Fixes #732
2020-08-18 20:26:19 -07:00
Girish Ramakrishnan
242548b36a
If swap file exists, do nothing
...
this gives users more control on how to allocate swap
2020-08-18 12:57:51 -07:00
Girish Ramakrishnan
252aedda25
remove verbose logs
2020-08-18 12:46:55 -07:00
Girish Ramakrishnan
3507269321
Allow mail server name to be configurable
...
Fixes #721
2020-08-17 21:49:59 -07:00
Girish Ramakrishnan
9a5dce33db
Be explicit about mailserver routes
2020-08-17 16:26:04 -07:00
Girish Ramakrishnan
c4101a62ed
rename function to setupDnsAndCert
...
this way, we can reuse this logic for the mail domain as well
2020-08-17 16:18:48 -07:00
Girish Ramakrishnan
f52037f305
Remove cloudron.setupDashboard
2020-08-17 16:18:19 -07:00
Girish Ramakrishnan
03bd67c4e7
coding style
2020-08-17 16:18:12 -07:00
Girish Ramakrishnan
1eef239392
setting dashboard domain now only updates dashboard domain (and not mail)
...
part of #721
2020-08-17 16:09:20 -07:00
Girish Ramakrishnan
d1e14ed691
rename function to setupDashboarDnsAndCert
2020-08-17 15:42:15 -07:00
Girish Ramakrishnan
60a787ce3d
If db name exists, re-use it (for repair mode)
2020-08-17 12:04:02 -07:00
Girish Ramakrishnan
f96bc6d5f4
keep mongodb database names short
2020-08-17 10:28:49 -07:00
Girish Ramakrishnan
5d439d9e79
Revert "Update mongodb to 4.2.8"
...
This reverts commit 9d2284add7 .
We started updating because some users hit this error
MongoError: namespace name generated from index name "f6d689d0-0098-4ee5-b3ed-a812a75d9ae8.rocketchat_livechat_inquiry.$queueOrder_1_estimatedWaitingTimeQueue_1_estimatedServiceTimeAt_1" is too long (127 byte max)
MongoDB 4.4 bumps up the indices length but the real issue is that database
name that cloudron generates is big enough to make the whole thing exceed.
We will make a fix to make those db names shorter.
2020-08-17 09:44:06 -07:00
Girish Ramakrishnan
1453178693
settings.setAdmin -> setAdminLocation
2020-08-15 19:24:32 -07:00
Girish Ramakrishnan
510121bf54
remove support for hyphentated domains
...
this has not been used for a long time
2020-08-15 18:50:07 -07:00
Girish Ramakrishnan
2d607b394c
Fix the exporting style
2020-08-15 18:19:01 -07:00
Girish Ramakrishnan
bd12b0e441
These fields are now in the subdomains table
2020-08-15 17:25:51 -07:00
Girish Ramakrishnan
738b4e60fa
notification: we do not retry update/backup every 4 hours anymore
2020-08-15 10:07:05 -07:00
Girish Ramakrishnan
1ae2f55c04
Remove verbose debug
2020-08-15 09:12:52 -07:00
Girish Ramakrishnan
2ebdf9673d
Add VAAPI caps for transcoding
2020-08-14 18:48:53 -07:00
Girish Ramakrishnan
0427d790e5
Explain the command more clearly
2020-08-14 10:27:23 -07:00
Girish Ramakrishnan
90add7cf47
Add changes
2020-08-14 09:39:50 -07:00
Girish Ramakrishnan
26b1f8dfdb
Do not automatically update to unstable release
...
fixes #726
2020-08-13 14:26:42 -07:00
Girish Ramakrishnan
ba29889f54
remove IP nginx configuration that redirects to dashboard after activation
...
fixes #728
2020-08-13 14:10:17 -07:00
Girish Ramakrishnan
9d2284add7
Update mongodb to 4.2.8
...
Fixes #725
2020-08-13 11:32:48 -07:00
Girish Ramakrishnan
dd44edde0a
only clear backup cache if specific fields changed
2020-08-11 14:01:29 -07:00
Girish Ramakrishnan
885e90e810
add a todo
2020-08-11 12:57:37 -07:00
Girish Ramakrishnan
9cdf5dd0f3
backups: time the rotation and total as well
2020-08-11 10:28:11 -07:00
Girish Ramakrishnan
df6e3eb1e6
Add deleteConcurrency setting
2020-08-11 09:14:09 -07:00
Girish Ramakrishnan
05026771e1
add memoryLimit, copyConcurrency, downloadConcurrency to backup config
2020-08-10 22:12:01 -07:00
Girish Ramakrishnan
7039108438
pass memory limit as argument to starttask.sh
2020-08-10 21:53:07 -07:00
Girish Ramakrishnan
02ee13cfb2
return empty array when listing
2020-08-10 21:32:54 -07:00
Girish Ramakrishnan
096e244252
Fix typo that causes aliases in lists to bounce
...
https://forum.cloudron.io/topic/2890/bug-with-mailing-lists-that-point-to-aliases
2020-08-10 17:49:27 -07:00
Girish Ramakrishnan
bf5b7294a0
Add missing debugs
2020-08-10 14:54:37 -07:00
Girish Ramakrishnan
a5da266643
groups: when listing, return members as well
2020-08-10 13:50:18 -07:00
Girish Ramakrishnan
cf7bb49e15
More missing 5.5 changes
2020-08-10 10:16:09 -07:00
Girish Ramakrishnan
208b732bda
yet more 5.5 changes
2020-08-10 10:07:50 -07:00
Girish Ramakrishnan
c73d93b8bd
more 5.5 changes
2020-08-10 10:05:47 -07:00
Girish Ramakrishnan
98a96eae2b
Update mongodb
...
part of #725
2020-08-10 09:36:56 -07:00
Girish Ramakrishnan
2f9fe30c9d
sftp: only mount data dirs that exist
...
when restoring, the platform starts first and the sftp container
goes and creates app data dirs with root permission. this prevents
the app restore logic from downloading the backup since it expects
yellowtent perm
2020-08-09 12:10:20 -07:00
Girish Ramakrishnan
aeee8afc02
export database: fix async logic
2020-08-09 11:14:11 -07:00
Girish Ramakrishnan
e85f0a4f52
Rename to box-task
...
this way we can do systemctl stop box*
2020-08-09 11:14:11 -07:00
Johannes Zellner
da98649667
Ensure group listAllWitMembers also returns an ordered list
2020-08-09 11:34:53 +02:00
Girish Ramakrishnan
5ac08cc06b
sftp: fix home directory path
2020-08-08 18:16:35 -07:00
Girish Ramakrishnan
da72597dd3
Fix start/stop task scripts for ubuntu 16
2020-08-08 11:10:02 -07:00
Girish Ramakrishnan
1f1c94de70
Fix certificate ordering logic
...
* app certs set by user are always preferred
* If fallback, choose fallback certs. ignore others
* If LE, try to pick LE certs. Otherwise, provider fallback.
Fixes #724
2020-08-07 23:02:24 -07:00
Girish Ramakrishnan
60b3fceea6
reset-failed state of tasks during startup
2020-08-07 22:41:09 -07:00
Girish Ramakrishnan
5073809486
More 5.5.0 changes
2020-08-07 22:20:20 -07:00
Girish Ramakrishnan
debd779cfd
new public gpg key that doesn't expire
...
gpg --export admin@cloudron.io > releases.gpg
2020-08-07 22:17:30 -07:00
Girish Ramakrishnan
6b9454100e
certs: remove caas backend
2020-08-07 17:58:27 -07:00
Girish Ramakrishnan
779ad24542
domains: remove caas backend, it is unused
2020-08-07 17:57:48 -07:00
Girish Ramakrishnan
b94dbf5fa3
remove restricted fallback cert
...
this feature was never used. iirc, it was for managed hosting
2020-08-07 17:57:25 -07:00
Girish Ramakrishnan
45c49c9757
route53: verifyDnsConfig lists zones using old API
...
It should be using the listHostedZonesByName API but it was using the old
API (which has a 100 zone limitation) because it was using old credentials.
2020-08-07 09:54:02 -07:00
Girish Ramakrishnan
91288c96b1
s3: set queue size to 3
...
fixes #691
2020-08-07 00:28:00 -07:00
Girish Ramakrishnan
f8e22a0730
Fix tests
2020-08-07 00:21:15 -07:00
Girish Ramakrishnan
114b45882a
Set memory limit to 400M for tasks
2020-08-07 00:21:15 -07:00
Girish Ramakrishnan
b1b6f70118
Kill all tasks on shutdown and startup
...
BindsTo will kill all the tasks when systemctl stop box is executed.
But when restarted, it keeps the tasks running. Because of this behavior,
we kill the tasks on startup and stop of the box code.
2020-08-06 23:47:40 -07:00
Girish Ramakrishnan
648d42dfe4
Empty debug prints as undefined for some reason
2020-08-06 23:23:56 -07:00
Girish Ramakrishnan
99f989c384
run apptask and backup task with a nice
...
A child process inherits whatever nice value is held by the parent at the time that it is forked
2020-08-06 16:46:39 -07:00
Girish Ramakrishnan
2112c7d096
sudo: remove the nice support
2020-08-06 16:44:35 -07:00
Girish Ramakrishnan
ac63d00c93
run tasks as separate cgroup via systemd
...
this allows us to adjust the nice value and memory settings per task
part of #691
2020-08-06 16:43:14 -07:00
Girish Ramakrishnan
e04871f79f
pass log file as argument to task worker
...
initially, i thought i can hardcode the log file into taskworker.js
depending on the task type but for apptask, it's not easy to get the
appId from the taskId unless we introspect task arguments as well.
it's easier for now to pass it as an argument.
2020-08-05 00:46:34 -07:00
Girish Ramakrishnan
182c162dc4
hardcode logging of box code to box.log
2020-08-04 13:30:18 -07:00
Johannes Zellner
822b38cc89
Fallback to NOOP callback if not supplied
2020-08-04 14:32:01 +02:00
Girish Ramakrishnan
d564003c87
backup cleaner: referenced backups must be counted as part of period
...
otherwise, we end up in a state where box backups keeps referencing
app backups and app backup cleanup is only performed on the remaining
app backups.
2020-08-03 21:22:27 -07:00
Girish Ramakrishnan
1b307632ab
Use debug instead of console.* everywhere
...
No need to patch up console.* anymore
also removes supererror
2020-08-02 12:04:55 -07:00
Girish Ramakrishnan
aa747cea85
update postgresl for pg_stat_statements,plpgsql extensions (loomio)
2020-08-02 11:36:42 -07:00
Girish Ramakrishnan
f4a322478d
cloudron.target is not needed
2020-08-01 20:00:20 -07:00
Girish Ramakrishnan
d2882433a5
run backup uploader with a nice of 15
...
the gzip takes a lot of cpu processing and hogs the CPU. With a nice
level, we give other things higher priority.
An alternate idea that was explored was to use cpulimit. This is to
send SIGSTOP and SIGCONT periodically but this will not make use of the
CPU if it's idle (unlike nice).
Another idea is to use cgroups, but it's not clear how to use it with
the dynamic setup we have.
part of #691
2020-07-31 18:23:36 -07:00
Girish Ramakrishnan
a94b175805
Add timing information for backups
2020-07-31 12:59:15 -07:00
Girish Ramakrishnan
37d81da806
do system checks once a day
2020-07-31 11:20:17 -07:00
Girish Ramakrishnan
d089444441
db upgrade: stop containers only after exporting
...
we cannot export if the containers were nuked in the platform logic.
for this reason, move the removal near the place where they get started.
2020-07-30 15:28:53 -07:00
Girish Ramakrishnan
b0d65a1bae
rename startApps to markApps
2020-07-30 15:28:50 -07:00
Girish Ramakrishnan
16288cf277
better debug
2020-07-30 11:42:03 -07:00
Girish Ramakrishnan
7ddbabf781
Make the error message clearer
2020-07-30 11:29:43 -07:00
Girish Ramakrishnan
fe35f4497b
Fix two typos
2020-07-30 10:58:24 -07:00
Girish Ramakrishnan
625463f6ab
export the database before upgrade
...
it's possible that
a) backups are completely disabled
b) skip backup option is selected when upgrading
in the above cases, the dump file is not generated and thus any addon
upgrade will fail. to fix, we dump the db fresh for database upgrades.
2020-07-30 10:23:08 -07:00
Johannes Zellner
ff632b6816
Add more external ldap tests
2020-07-30 15:22:03 +02:00
Johannes Zellner
fbc666f178
Make externalldap sync more robust
2020-07-30 15:08:01 +02:00
Girish Ramakrishnan
d89bbdd50c
Update to PostgreSQL 11
2020-07-29 21:54:05 -07:00
Girish Ramakrishnan
96f9aa39b2
add note on why we check for app updates separately
2020-07-29 20:27:06 -07:00
Girish Ramakrishnan
7330814d0f
More 5.5 changes
2020-07-29 16:11:09 -07:00
Johannes Zellner
312efdcd94
Fix debug message
2020-07-29 20:38:46 +02:00
Girish Ramakrishnan
5db78ae359
Fix more usages of backup.intervalSecs
2020-07-29 11:25:59 -07:00
Girish Ramakrishnan
97967e60e8
remove yahoo from smtp test list
2020-07-29 11:25:59 -07:00
Johannes Zellner
9106b5d182
Avoid using extra /data dir for filemanager
2020-07-29 20:14:14 +02:00
Johannes Zellner
74bdb6cb9d
Only mount app data volumes if localstorage is used
2020-07-29 19:58:41 +02:00
Johannes Zellner
0a44d426fa
Explicitly mount all apps into the sftp container
2020-07-29 19:47:37 +02:00
Johannes Zellner
e1718c4e8d
If app.dataDir is set, first unmount from sftp before deleting on uninstall
2020-07-29 17:54:32 +02:00
Girish Ramakrishnan
f511a610b5
backups: take a pattern instead of interval secs
...
part of #699
2020-07-28 21:54:56 -07:00
Girish Ramakrishnan
4d5715188d
Increase invite link expiry to a week
2020-07-28 14:19:19 -07:00
Johannes Zellner
2ea21be5bd
Add basic backup check route tests
2020-07-28 17:23:21 +02:00
Johannes Zellner
5bb0419699
Add backup check route
...
Part of #719
2020-07-28 17:18:50 +02:00
Johannes Zellner
a8131eed71
Run initial backup configuration check only after activation
...
Part of #719
2020-07-28 17:12:38 +02:00
Girish Ramakrishnan
ed09c06ba4
Add option to remove mailbox data
...
Fixes #720
2020-07-27 22:55:09 -07:00
Girish Ramakrishnan
3c59a0ff31
make it clear it is exported for testing
2020-07-27 22:07:25 -07:00
Girish Ramakrishnan
a6d24b3e48
postgresql: add btree_gist,postgres_fdw extensions for gitlab
2020-07-24 22:30:45 -07:00
Girish Ramakrishnan
060135eecb
Next release is 5.5
2020-07-24 09:33:53 -07:00
Johannes Zellner
ef296c24fe
Mount data custom app data location specifically into sftp addon
...
Fixes #722
2020-07-24 15:43:26 +02:00
Girish Ramakrishnan
707aaf25ec
Add note on underscore in usernames
2020-07-23 16:29:54 -07:00
Girish Ramakrishnan
7edeb0c358
nginx displays version in stderr
2020-07-22 17:57:55 -07:00
Girish Ramakrishnan
e516af14b2
typo
2020-07-22 17:53:04 -07:00
Girish Ramakrishnan
4086f2671d
Disable ldap/directory config/2fa in demo mode
2020-07-22 16:18:22 -07:00
Girish Ramakrishnan
23c4550430
Update postgresql addon to have citext extension for loomio
2020-07-22 08:29:44 -07:00
Johannes Zellner
31d25cd6be
Add 5.4.1 changes
2020-07-19 21:11:05 +02:00
Johannes Zellner
07b3c7a245
Use sftp addon with fixed symlinks
2020-07-18 19:27:02 +02:00
Girish Ramakrishnan
a00b7281a7
Fixup changelog
2020-07-17 10:43:22 -07:00
Girish Ramakrishnan
ddeee0c970
Add note that links expire in 24 hours
2020-07-16 15:17:51 -07:00
Johannes Zellner
8aad71efd0
Add more feature flags
2020-07-16 18:14:25 +02:00
Johannes Zellner
2028f6b984
Do not reassign ubunt_codename in base image init
2020-07-16 16:42:15 +02:00
Girish Ramakrishnan
bff4999d27
mail: add mailbox count route
2020-07-15 15:48:30 -07:00
Johannes Zellner
d429015f83
Add more 3.4.0 changes
2020-07-15 14:57:06 +02:00
Johannes Zellner
e2628e2d43
Use latest filemanager addon
...
Fixes dot- and json-files
2020-07-14 17:16:41 +02:00
Girish Ramakrishnan
05dcbee7e3
backups: add b2 provider
...
part of #508
2020-07-13 14:52:35 -07:00
Johannes Zellner
a81919262e
Use addon with chown functionality
2020-07-13 18:48:42 +02:00
Girish Ramakrishnan
b14b5f141b
Hide nginx version
2020-07-13 09:27:57 -07:00
Girish Ramakrishnan
1259d11173
Add back provider field into getStatus
2020-07-13 08:46:05 -07:00
Johannes Zellner
0a7b132be8
Remove or increase timeouts for filemanager
2020-07-13 17:05:22 +02:00
Girish Ramakrishnan
ed9210eede
Add mandatory 2FA flag
...
part of #716
2020-07-10 10:25:04 -07:00
Girish Ramakrishnan
9ee6aa54c6
avatar is not part of the profile lock
...
this is because avatar is not exposed via LDAP anyways. it's purely
a personal dashboard thing.
2020-07-10 09:43:42 -07:00
Girish Ramakrishnan
7cfc455cd3
make tests pass again
...
also disable column statistics on ubuntu 20
2020-07-10 09:33:35 -07:00
Johannes Zellner
a481ceac8c
Allow larger file uploads for filemanager
2020-07-10 18:23:55 +02:00
Girish Ramakrishnan
8c7eff4e24
user: add routes to set/clear avatar
2020-07-10 07:23:38 -07:00
Girish Ramakrishnan
c6c584ff74
user: move avatar handling into model code
2020-07-10 07:01:15 -07:00
Johannes Zellner
ba50eb121d
Use new sftp addon
2020-07-10 14:13:16 +02:00
Johannes Zellner
aa8ebbd7ea
Add filemanager proxy routes
2020-07-10 14:10:52 +02:00
Girish Ramakrishnan
64bc9c6dbe
disable profile view for all users to avoid confusion
2020-07-09 21:54:09 -07:00
Girish Ramakrishnan
bba9963b7c
Add directoryConfig feature flag
...
Fixes #704
2020-07-09 21:51:22 -07:00
Girish Ramakrishnan
6ea2aa4a54
return profileLocked in config route
...
part of #704
2020-07-09 17:28:44 -07:00
Girish Ramakrishnan
3c3f81365b
add route to get/set directory config
...
part of #704
2020-07-09 17:12:07 -07:00
Girish Ramakrishnan
3adeed381b
setup account based on directory config
...
part of #704
2020-07-09 16:39:34 -07:00
Girish Ramakrishnan
0f5b7278b8
add directory config setting
...
part of #704
2020-07-09 16:02:58 -07:00
Girish Ramakrishnan
f94ff49fb9
users: replace modifiedAt with ts
2020-07-09 16:02:49 -07:00
Girish Ramakrishnan
d512a9c30d
rename function
2020-07-09 16:02:43 -07:00
Girish Ramakrishnan
0c5113ed5b
email is never used in account setup
2020-07-09 15:37:35 -07:00
Girish Ramakrishnan
2469f4cdff
rename function to sendPasswordResetByIdentifier
2020-07-09 15:37:35 -07:00
Girish Ramakrishnan
9c53bfb7fb
Do not show LDAP logs, it spams a lot
2020-07-07 11:16:47 -07:00
Girish Ramakrishnan
8b8144588d
list must search members
2020-07-05 11:44:46 -07:00
Girish Ramakrishnan
77553da4c1
mail: add search param for mailbox and mailing list api
2020-07-05 11:23:53 -07:00
Girish Ramakrishnan
cbcf943691
mail: parameterize the query
2020-07-05 10:48:08 -07:00
Girish Ramakrishnan
725a19e5b5
mail: Add pagination to lists API
...
Fixes #712
2020-07-05 10:48:04 -07:00
Girish Ramakrishnan
f9115f902a
Do not send alive status
...
we used to do this for managed hosting to track scaling but we don't
need this info anymore
2020-07-03 19:13:27 -07:00
Girish Ramakrishnan
e4faf26d74
5.3.4 changes
...
(cherry picked from commit 77785097c1 )
2020-07-03 14:23:20 -07:00
Girish Ramakrishnan
1c96fbb533
Fixes for tests
2020-07-03 13:47:56 -07:00
Girish Ramakrishnan
3dc163c33d
database: rework connection logic
2020-07-03 13:14:00 -07:00
Girish Ramakrishnan
edae94cf2e
Bump max_connection for postgres addon to 200
2020-07-02 15:47:26 -07:00
Girish Ramakrishnan
d1ff8e9d6b
Fix crash when mysql crashes
2020-07-02 15:10:05 -07:00
Girish Ramakrishnan
70743bd285
database: Fix event emitter warning
...
the connection object gets reused after release. this means that we keep
attaching the 'error' event and not unlistening.
--trace-warnings can be added to box.service to get the stack trace
2020-07-02 12:00:56 -07:00
Johannes Zellner
493f1505f0
Check also for mountpoint on filesystem with external disk
2020-07-02 19:08:27 +02:00
Girish Ramakrishnan
007e3b5eef
Add changes
2020-07-01 14:29:40 -07:00
Johannes Zellner
d9bf6c0933
also support uniqueMember property next to member for ldap groups
2020-07-01 17:08:17 +02:00
Johannes Zellner
324344d118
Reusue the single correct ldap.createClient call also in auth
2020-07-01 14:59:26 +02:00
Johannes Zellner
5cb71e9443
No need to return externalLdapConfig in getClient()
2020-07-01 14:52:11 +02:00
Johannes Zellner
cca19f00c5
Fallback to mailPrimaryAddress in ldap sync
2020-07-01 14:34:41 +02:00
Girish Ramakrishnan
6648f41f3d
nginx: [warn] the "ssl" directive is deprecated, use the "listen ... ssl" directive
2020-06-30 16:00:52 -07:00
Girish Ramakrishnan
c1e6b47fd6
Fix sogo aliases
...
Fixes cloudron/sogo#18
2020-06-30 14:29:50 -07:00
Girish Ramakrishnan
0f103ccce1
Add ping capability (for statping)
2020-06-30 07:40:17 -07:00
Girish Ramakrishnan
bc6e652293
5.3.3 changes
2020-06-29 19:52:08 -07:00
Girish Ramakrishnan
85b4f2dbdd
print sudo command to check failures
2020-06-29 14:03:34 -07:00
Girish Ramakrishnan
d47b83a63b
Package lock mystery
2020-06-29 14:03:15 -07:00
Girish Ramakrishnan
b2e9fa7e0d
aschema: dd servicesConfigJson
2020-06-26 15:48:39 -07:00
Girish Ramakrishnan
a9fb444622
Use nginx 1.18 for security fixes
2020-06-26 14:57:53 -07:00
Girish Ramakrishnan
33ba22a021
Put this in 5.3.2 itself
2020-06-26 10:41:32 -07:00
Girish Ramakrishnan
57de0282cd
remove provider from trackBeginSetup
2020-06-26 09:55:39 -07:00
Girish Ramakrishnan
8568fd26d8
Fix failing test
2020-06-26 09:48:10 -07:00
Girish Ramakrishnan
84f41e08cf
Add mlock capability to manifest (for vault app)
2020-06-26 09:27:35 -07:00
Johannes Zellner
a96da20536
TODO is done for filesystem backend moutnpoint check
2020-06-26 17:57:26 +02:00
Johannes Zellner
5199a9342e
Add missing ldap client error handling
2020-06-26 17:55:42 +02:00
Girish Ramakrishnan
893ecec0fa
redis: Set maxmemory and maxmemory-policy
2020-06-26 08:54:47 -07:00
Girish Ramakrishnan
e3da6419f5
Add 5.3.2 changes
2020-06-26 08:48:01 -07:00
Girish Ramakrishnan
0750d2ba50
More changes
2020-06-25 16:48:11 -07:00
Girish Ramakrishnan
f1fcb65fbe
Do not install sshfs. user will install it if they want
...
we don't use sshfs anywhere in our code ourselves
2020-06-25 12:21:49 -07:00
Girish Ramakrishnan
215aa65d5a
Fix provider usage
...
* do not send to appstore anymore
* do not set in getStatus/getConfig
* provider is not needed when registering cloudron
2020-06-25 11:20:05 -07:00
Girish Ramakrishnan
85f67c13da
remove unused registerWithLicense
2020-06-25 11:11:52 -07:00
Girish Ramakrishnan
6dcc478aeb
add to changes
2020-06-25 09:20:37 -07:00
Johannes Zellner
3f2496db6f
Support self-signed certs for external ldap/ad
2020-06-25 17:45:59 +02:00
Johannes Zellner
612f79f9e0
Copy over changes for 5.3.1
2020-06-25 14:22:44 +02:00
Johannes Zellner
90fb1cd735
We also need enableBackup property for app listing api
2020-06-25 12:31:00 +02:00
Girish Ramakrishnan
7c24d9c6c6
Give graphite more memory
2020-06-22 09:55:01 -07:00
Johannes Zellner
60f1b2356a
Also make nfs storage provider same as cifs and sshfs
2020-06-22 15:51:05 +02:00
Johannes Zellner
0b8f21508f
Add more changes
2020-06-22 12:04:34 +02:00
Johannes Zellner
ae128c0fa4
If no appstore account is setup restrict features to free plan
2020-06-22 12:02:10 +02:00
Girish Ramakrishnan
1b4ec9ecf9
Update changes
2020-06-18 10:25:45 -07:00
Girish Ramakrishnan
b0ce0b61d6
logging: fix crash when router errors
2020-06-18 09:27:09 -07:00
Girish Ramakrishnan
e1ffdaddfa
Fix timeout issues in postgresql and mysql addon
2020-06-17 16:39:30 -07:00
Johannes Zellner
af8344f482
remove unused requires
2020-06-16 14:37:06 +02:00
Johannes Zellner
7dc2596b3b
Ensure we support pre 5.3 Cloudron installation
2020-06-16 14:10:14 +02:00
Johannes Zellner
0109956fc2
do not rely on some argument passed through for infraversion base path
2020-06-16 14:09:55 +02:00
Johannes Zellner
945fe3f3ec
Do not spam install logs with nodejs tarball contents
2020-06-16 13:58:23 +02:00
Johannes Zellner
9c868135f3
app sso flag is not restricted now
2020-06-16 13:09:06 +02:00
Girish Ramakrishnan
5be288023b
update mail container to record separator and spam folder
2020-06-15 13:50:46 -07:00
Girish Ramakrishnan
a03f97186c
Make mail auth case insensitive
2020-06-15 09:58:55 -07:00
Johannes Zellner
0aab891980
Support nginx logs
2020-06-15 17:30:16 +02:00
Johannes Zellner
5268d3f57d
Fix test for systems without swap
2020-06-15 16:06:54 +02:00
Girish Ramakrishnan
129cbb5beb
backups: fix cleanup
...
The various changes are:
* Latest backup is always kept for box and app backups
* If the latest backup is part of the policy, it is not counted twice
* Latest backup comes into action only when all backups are outside the retention policy
* For uninstalled apps, latest backup is not preserved
* This way the latest backup of apps that are not referenced in box backup is preserved.
(for example, for stopped apps)
fixes #692
2020-06-14 22:06:00 -07:00
Girish Ramakrishnan
2601d2945d
Fix backup tests
2020-06-14 14:01:01 -07:00
Girish Ramakrishnan
e3829eb24b
typo
2020-06-14 14:00:29 -07:00
Girish Ramakrishnan
f6cb1a0863
backups: query using identifier instead of type
...
this allows us to move the enums into backups.js instead of backupdb.js
2020-06-14 12:27:41 -07:00
Girish Ramakrishnan
4f964101a0
add identifier to backups table
2020-06-14 11:39:44 -07:00
Girish Ramakrishnan
f6dcba025f
auditSource is not used in the worker
2020-06-14 09:09:41 -07:00
Johannes Zellner
d6ec65d456
Do not remove alternateDomains to allow apps view filter to work
2020-06-14 13:39:15 +02:00
Girish Ramakrishnan
65d8074a07
Fix failing backup test
2020-06-12 12:58:11 -07:00
Girish Ramakrishnan
e3af61ca4a
Fix failing test
2020-06-12 12:52:32 -07:00
Girish Ramakrishnan
a58f1268f0
mail: Add Auto-Submitted header to NDRs
2020-06-11 19:48:37 -07:00
Girish Ramakrishnan
41eacc4bc5
postgresql: Add unaccent extension
2020-06-11 09:53:53 -07:00
Girish Ramakrishnan
aabb9dee13
Fix transaction rollback logic
2020-06-11 09:50:49 -07:00
Girish Ramakrishnan
c855d75f35
remove mkdirp use
...
node 10.12 has { recursive: true }
2020-06-11 08:27:48 -07:00
Girish Ramakrishnan
8f5cdcf439
backups: some logs for debugging
2020-06-10 23:00:23 -07:00
Girish Ramakrishnan
984559427e
update manifest format to 5.3.0
2020-06-09 11:35:54 -07:00
Johannes Zellner
89494ced41
Check for sshfs and cifs backup backends, if they are mounted
2020-06-08 17:46:52 +02:00
Johannes Zellner
ef764c2393
Merge sshfs.js into filesystem.js
2020-06-08 17:08:26 +02:00
Johannes Zellner
8624e2260d
add storage api to make preflight checks
...
Currently there is only disk space checking but sshfs and cifs need
mount point checking as well
2020-06-08 16:25:05 +02:00
Johannes Zellner
aa011f4add
add ldap group tests and fixes for the found issues
2020-06-07 13:49:01 +02:00
Girish Ramakrishnan
3df61c9ab8
do not automatically update unstable updates
...
part of #698
2020-06-05 16:26:23 -07:00
Girish Ramakrishnan
a4516776d6
make canAutoupdateApp take updateInfo object
...
part of #698
2020-06-05 16:06:37 -07:00
Girish Ramakrishnan
54d0ade997
curl uses -s and not -q
2020-06-05 13:50:40 -07:00
Johannes Zellner
3557fcd129
Add sshfs quirks to shared code in filesytstem.js
2020-06-05 13:45:25 +02:00
Johannes Zellner
330b4a613c
Retrieve the backupPath from the storage provider itself
2020-06-05 13:27:18 +02:00
Johannes Zellner
7ba3412aae
Add some sshfs config tests
2020-06-05 12:43:09 +02:00
Johannes Zellner
6f60495d4d
Initial version of sshfs storage backend
2020-06-05 11:39:51 +02:00
Johannes Zellner
0b2eb8fb9e
Sync users into groups
...
This does not yet remove users from groups
Part of #685
2020-06-05 11:28:57 +02:00
Johannes Zellner
48af17e052
Groups are lowercase on Cloudron
2020-06-05 10:13:19 +02:00
Johannes Zellner
b7b1055530
Avoid the pyramid
2020-06-05 09:26:52 +02:00
Johannes Zellner
e7029c0afd
Remove unsused and poorly named groups.getGroups() API
2020-06-05 09:24:00 +02:00
Johannes Zellner
cba3674ac0
Stop ldap syncing if we hit some internal error
2020-06-05 09:03:30 +02:00
Girish Ramakrishnan
865a549885
say connected
2020-06-04 11:27:11 -07:00
Girish Ramakrishnan
50dcf827a5
remove console.error use in many places
...
the backtraces just flood the logs
apphealthtask: remove console.error
remove spurious console.dir
cleanup scheduler error logging
2020-06-04 11:21:56 -07:00
Girish Ramakrishnan
f5fb582f83
log status and message in morgan
...
connect lastmile does not forward final handler to express anymore.
otherwise, express logs using console.error()
https://github.com/expressjs/express/issues/2263
2020-06-04 09:17:58 -07:00
Girish Ramakrishnan
dbba502f83
remove message from debug
2020-06-04 09:17:58 -07:00
Girish Ramakrishnan
aae49f16a2
database: do no reconnect in query
2020-06-04 09:17:58 -07:00
Girish Ramakrishnan
45d5f8c74d
make rollback return an error
...
fixes #690
2020-06-04 09:17:58 -07:00
Girish Ramakrishnan
6cfd64e536
database: do not crash if connection errors
...
Part of #690
2020-06-04 09:17:58 -07:00
Girish Ramakrishnan
c5cc404b3e
do not retry here
...
Part of #690
2020-06-04 09:17:58 -07:00
Johannes Zellner
42cbcc6ce3
groups.create() now needs source argument
2020-06-04 14:20:05 +02:00
Johannes Zellner
812bdcd462
Fix groups test by ensuring we order by name
2020-06-04 14:03:06 +02:00
Johannes Zellner
f275409ee8
Fix cloudron api tests
2020-06-04 13:55:47 +02:00
Johannes Zellner
8994ac3727
Fix backup retention tests
2020-06-04 13:43:25 +02:00
Johannes Zellner
7c5ff5e4d5
Create user groups for ldap groups
2020-06-04 13:26:13 +02:00
Johannes Zellner
c5e84d5469
Add source property to userGroups
2020-06-04 13:25:55 +02:00
Johannes Zellner
c143450dc6
WIP
2020-06-04 12:59:27 +02:00
Johannes Zellner
07b95c2c4b
Add groups.getByName()
2020-06-04 12:48:35 +02:00
Johannes Zellner
c30734f7f3
Show in the logs if group sync is disabled
2020-06-04 12:40:28 +02:00
Johannes Zellner
91f506c17b
Explicitly enable/disable ldap group sync
2020-06-04 12:28:31 +02:00
Girish Ramakrishnan
7a17695ad5
Retry in 10 seconds to not make things worse
...
Part of #690
2020-06-03 16:05:48 -07:00
Girish Ramakrishnan
f5076c87d4
add to changes
2020-06-03 13:52:53 -07:00
Girish Ramakrishnan
a47d6e1f3a
cloudron-setup: --provider is dead
...
Long live --provider
Part of #693
2020-06-03 13:47:30 -07:00
Girish Ramakrishnan
f6ff1abb00
cloudron-setup: remove --license arg. unused
2020-06-03 13:16:39 -07:00
Johannes Zellner
386aaf6470
Initial code to fetch LDAP groups during sync
2020-06-03 22:12:38 +02:00
Johannes Zellner
2b3c4cf0ff
avatar blob now comes in only via branding api calls
2020-06-02 15:13:50 +02:00
Girish Ramakrishnan
b602e921d0
better error message if domains exists
2020-06-01 16:11:02 -07:00
Girish Ramakrishnan
2fc3cdc2a2
remove superfluous debug
2020-06-01 09:40:56 -07:00
Girish Ramakrishnan
e2cadbfc30
Fix uniqueness constraint in app passwords table
...
Fixes #688
2020-05-30 13:25:29 -07:00
Girish Ramakrishnan
3ffa935da7
Revert "part focal support"
...
This reverts commit 7d36533524 .
not ready yet
2020-05-30 10:58:28 -07:00
Girish Ramakrishnan
5f539e331a
5.3.0 changes
2020-05-30 09:45:24 -07:00
Girish Ramakrishnan
356d0fabda
Add note that pattern must match dashboard code
2020-05-30 09:44:33 -07:00
Girish Ramakrishnan
122ec75cb6
Fix links
2020-05-29 19:10:42 -07:00
Girish Ramakrishnan
a3a48e1a49
poll for updates a bit more often
2020-05-29 13:39:16 -07:00
Girish Ramakrishnan
4ede765e1f
typo: memoryLimit -> memory
2020-05-29 13:29:01 -07:00
Girish Ramakrishnan
4fa181b346
re-use the latest backup id for non-backupable apps
...
for stopped apps, as an example
2020-05-28 14:16:38 -07:00
Johannes Zellner
4f76d91ae9
Add backup_config settings API tests
2020-05-28 21:42:25 +02:00
Girish Ramakrishnan
20d1759fa5
Run update checker on stopped apps, we just don't update them
2020-05-28 12:41:51 -07:00
Girish Ramakrishnan
433e783ede
do not allow backup, import, update in stopped state
2020-05-28 12:41:51 -07:00
Johannes Zellner
47f47d916d
Fixup tests
2020-05-28 21:05:21 +02:00
Johannes Zellner
b31ac7d1fd
Revert backup policy fallback and check in rest api
...
Check is now in proper location at backups.testConfig()
2020-05-28 20:44:44 +02:00
Johannes Zellner
ea47fb7305
Properly check for backup policy in testConfig()
2020-05-28 20:44:44 +02:00
Girish Ramakrishnan
82170f8f1b
Fix failing test
2020-05-28 11:04:39 -07:00
Girish Ramakrishnan
acb2655f58
rename variable (it ensures backup and may not actually backup)
2020-05-28 11:03:49 -07:00
Girish Ramakrishnan
b1464517e6
centralize all the cron patterns in one place
2020-05-28 11:01:46 -07:00
Girish Ramakrishnan
151e6351f6
add couple of 5.2 changes
2020-05-28 09:37:57 -07:00
Johannes Zellner
154f768281
Forgot .length
2020-05-28 16:44:45 +02:00
Johannes Zellner
90c857e8fc
Further validate retentionPolicy api input
2020-05-28 16:27:07 +02:00
Johannes Zellner
7a3efa2631
Ensure we get a proper retention policy for backups
2020-05-28 16:26:21 +02:00
Girish Ramakrishnan
38cc767f27
move up the backup cron to not overlap auto-updates
2020-05-27 23:04:04 -07:00
Girish Ramakrishnan
e1a718c78f
remove redundant call to canBackupApp
2020-05-27 22:48:48 -07:00
Girish Ramakrishnan
32a4450e5e
5.2.4 changes
...
(cherry picked from commit 2dc7342f09 )
2020-05-27 22:35:30 -07:00
Girish Ramakrishnan
fca3f606d2
Do not backup stopped apps
2020-05-27 21:04:01 -07:00
Girish Ramakrishnan
4a0a934a76
start using vhost style for accessing s3 style storage
...
if bucket name has a '.', accept self-signed
fixes #680
2020-05-27 17:50:37 -07:00
Girish Ramakrishnan
f7c406bec9
s3: bucket name cannot contain _ or capitals or .
...
we can make it more elaborate, but not sure if it's needed
https://blogs.easydynamics.com/2016/10/24/aws-s3-bucket-name-validation-regex/
2020-05-27 17:01:42 -07:00
Girish Ramakrishnan
f4807a6354
update many node modules
2020-05-27 16:52:22 -07:00
Girish Ramakrishnan
0960008b7b
5.2.4 changes
...
(cherry picked from commit 4267f5ea0a )
2020-05-26 17:07:03 -07:00
Girish Ramakrishnan
04a1aa38b4
Add CIFS as storage provider
...
part of #686
2020-05-26 15:31:45 -07:00
Girish Ramakrishnan
f84622efa1
fs: add create/unlink tests
2020-05-26 15:31:41 -07:00
Girish Ramakrishnan
f6c4614275
Do not restart stopped apps
...
(cherry picked from commit 2e76b8bed9 )
2020-05-26 07:54:35 -07:00
Girish Ramakrishnan
7d36533524
part focal support
...
part of #684
2020-05-25 19:49:15 -07:00
Girish Ramakrishnan
5cd3df4869
better nginx config for higher loads
2020-05-25 15:25:00 -07:00
Girish Ramakrishnan
b0480f48f3
Add changes
2020-05-24 20:12:19 -07:00
Girish Ramakrishnan
2e820c343a
remove meaningless debug
2020-05-24 20:11:03 -07:00
Girish Ramakrishnan
ce927a2247
Set dmode in tar extract
2020-05-24 20:08:17 -07:00
Girish Ramakrishnan
ae810d59e9
mail: fix crash in audit logs
2020-05-24 18:50:10 -07:00
Girish Ramakrishnan
1438ee52a1
import: fix crash because encryption is unset
2020-05-24 18:42:04 -07:00
Girish Ramakrishnan
de4b3e55fa
Use apps.getAll so that app.fqdn is valid
2020-05-24 18:21:35 -07:00
Girish Ramakrishnan
d2cd78c5cb
more debug() removal
2020-05-24 12:30:48 -07:00
Girish Ramakrishnan
d000719fa2
app health monitor is too verbose
2020-05-24 11:43:17 -07:00
Girish Ramakrishnan
efea4ed615
more debug() removal
2020-05-24 11:35:31 -07:00
Girish Ramakrishnan
67a931c4b8
Remove verbose logs
2020-05-24 11:33:53 -07:00
Girish Ramakrishnan
bdcc5c0629
Mbps -> MBps
...
Fixes #682
2020-05-23 13:31:23 -07:00
Girish Ramakrishnan
d113cfc0ba
add comment on how often du value is stored
2020-05-22 20:06:45 -07:00
Girish Ramakrishnan
4a3ab50878
5.2.1 changes
2020-05-22 18:49:28 -07:00
Girish Ramakrishnan
b39261c8cf
remove extra $
2020-05-22 16:56:01 -07:00
Girish Ramakrishnan
7efb57c8da
restart apps on addon container change
...
when the IP changes on addon container re-create, the apps don't
detect this (maybe there is some large DNS cache timeout in docker)
2020-05-22 16:45:03 -07:00
Girish Ramakrishnan
90c24cf356
add cleanup policy test
2020-05-21 14:30:21 -07:00
Girish Ramakrishnan
54abada561
backups: add progressCallback to cleanup funcs
2020-05-21 13:46:16 -07:00
Girish Ramakrishnan
f1922660be
add a new line
2020-05-21 10:57:57 -07:00
Girish Ramakrishnan
795e3c57da
Add a header for encrypted backup files
...
this is required to identify old backups and new backups for decryption
2020-05-20 22:44:26 -07:00
Girish Ramakrishnan
3f201464a5
Fix bug where SRS translation was done on the main domain instead of mailing list domain
2020-05-20 21:55:48 -07:00
Girish Ramakrishnan
8ac0be6bb5
Update postgresql for schema ownership fix
2020-05-20 16:44:32 -07:00
Johannes Zellner
130805e7bd
Add changes
2020-05-19 14:59:28 +02:00
Girish Ramakrishnan
b8c7357fea
redis: if container inactive, return stopped status
2020-05-18 14:43:23 -07:00
Girish Ramakrishnan
819f8e338f
stop app now stops it's services as well
2020-05-18 14:33:07 -07:00
Girish Ramakrishnan
9569e46ff8
use docker.restart instead of start/stop since it is atomic
2020-05-18 13:35:42 -07:00
Girish Ramakrishnan
b7baab2d0f
restore: set encryption to null
2020-05-18 09:07:18 -07:00
Girish Ramakrishnan
e2d284797d
set HOME explicity when calling migrate script
2020-05-17 21:50:50 -07:00
Girish Ramakrishnan
a3ac343fe2
installer: print from and to versions
2020-05-17 21:34:39 -07:00
Girish Ramakrishnan
dadde96e41
remove login events from addons
...
more often then not this just spams the eventlog
2020-05-15 21:40:34 -07:00
Girish Ramakrishnan
99475c51e8
fix encryption of 0-length files
2020-05-15 16:05:12 -07:00
Girish Ramakrishnan
cc9b4e26b5
use done event to signal write success (just like in extract)
2020-05-15 15:24:12 -07:00
Girish Ramakrishnan
32f232d3c0
destroy input stream on error
2020-05-15 15:21:24 -07:00
Girish Ramakrishnan
235047ad0b
bind to source stream error event immediately
...
download() is async and the source stream error is missed
2020-05-15 14:54:05 -07:00
Girish Ramakrishnan
228f75de0b
better error messages
2020-05-15 14:35:19 -07:00
Girish Ramakrishnan
2f89e7e2b4
drop NET_RAW since this allows packet sniffing
...
this however breaks ping
2020-05-15 12:47:36 -07:00
Girish Ramakrishnan
437f39deb3
More changes
2020-05-15 09:16:24 -07:00
Girish Ramakrishnan
59582f16c4
skip validation in the route
2020-05-14 21:45:13 -07:00
Girish Ramakrishnan
af9e3e38ce
apply backup retention policy
...
part of #441
2020-05-14 21:31:24 -07:00
Girish Ramakrishnan
d992702b87
rename to keepWithinSecs
...
part of #441
2020-05-14 16:45:28 -07:00
Girish Ramakrishnan
6a9fe1128f
move retentionSecs inside retentionPolicy
...
part of #441
2020-05-14 16:33:29 -07:00
Johannes Zellner
573da29a4d
Once upon a time where settings worked
2020-05-14 23:35:03 +02:00
Johannes Zellner
00cff1a728
Mention that SECRET_PLACEHOLDER is also used in dashboard client.js
2020-05-14 23:04:08 +02:00
Johannes Zellner
9bdeff0a39
Always use constants.SECRET_PLACEHOLDER
2020-05-14 23:02:02 +02:00
Girish Ramakrishnan
a1f263c048
stash the backup password in filesystem for safety
...
we will add a release note asking the user to nuke it
2020-05-14 12:59:37 -07:00
Girish Ramakrishnan
346eac389c
bind ui is hidden for this release
2020-05-14 11:57:12 -07:00
Johannes Zellner
f52c16b209
Ensure encryption property on backup config always exists
2020-05-14 20:22:10 +02:00
Girish Ramakrishnan
4faf880aa4
Fix crash with unencrypted backups
2020-05-14 11:18:41 -07:00
Girish Ramakrishnan
f417a49b34
Add encryptionVersion to backups
...
this will identify the old style backups and warn user that a restore
doesn't work anymore
2020-05-13 22:37:02 -07:00
Girish Ramakrishnan
66fd713d12
rename version to packageVersion
2020-05-13 21:55:50 -07:00
Girish Ramakrishnan
2e7630f97e
remove stale logs
2020-05-13 19:23:04 -07:00
Girish Ramakrishnan
3f10524532
cleanup cache file to start encrypted rsync backups afresh
2020-05-13 16:35:13 -07:00
Johannes Zellner
51f9826918
Strip quotes for TXT records on name.com
...
The docs and support claim quotes are needed, but the actual API usage
shows otherwise. We do this to not break users, but ideally name.com
gives a correct and clear answer
2020-05-14 01:03:10 +02:00
Girish Ramakrishnan
f5bb76333b
do hmac validation on filename iv as well
...
also, pass encryption object instead of config
2020-05-13 10:11:07 -07:00
Girish Ramakrishnan
4947faa5ca
update mail container
2020-05-12 23:19:31 -07:00
Girish Ramakrishnan
101dc3a93c
s3: do not retry when testing config
2020-05-12 22:45:01 -07:00
Girish Ramakrishnan
bd3ee0fa24
add changes
2020-05-12 22:00:05 -07:00
Girish Ramakrishnan
2c52668a74
remove format validation in provider config
2020-05-12 22:00:01 -07:00
Girish Ramakrishnan
03edd8c96b
remove max_old_space_size
...
we have limited understanding of this option
2020-05-12 20:14:35 -07:00
Girish Ramakrishnan
37dfa41e01
Add hmac to the file data
...
https://stackoverflow.com/questions/10279403/confused-how-to-use-aes-and-hmac
https://en.wikipedia.org/wiki/Padding_oracle_attack
part of #579
2020-05-12 19:59:06 -07:00
Girish Ramakrishnan
ea8a3d798e
create encryption keys from password during app import & restore
2020-05-12 15:53:18 -07:00
Girish Ramakrishnan
1df94fd84d
backups: generate keys from password
...
this also removes storage of password from db
part of #579
2020-05-12 15:14:51 -07:00
Girish Ramakrishnan
5af957dc9c
add changes
...
part of #579
2020-05-12 10:56:07 -07:00
Girish Ramakrishnan
21073c627e
rename backup key to password
...
Fixes #579
2020-05-12 10:55:10 -07:00
Girish Ramakrishnan
66cdba9c1a
remove chat link in readme
2020-05-12 10:21:21 -07:00
Girish Ramakrishnan
56d3b38ce6
read/write iv in the encrypted files
...
part of #579
2020-05-11 22:35:25 -07:00
Girish Ramakrishnan
15d0275045
key must atleast be 8 chars
...
part of #579
2020-05-11 16:11:41 -07:00
Girish Ramakrishnan
991c1a0137
check if manifest property is present in network response
2020-05-11 14:52:55 -07:00
Girish Ramakrishnan
7d549dbbd5
logrotate: add some comments
2020-05-11 14:38:50 -07:00
Johannes Zellner
e27c5583bb
Apps without dockerImage cannot be auto-updated
2020-05-11 23:20:17 +02:00
Girish Ramakrishnan
650c49637f
logrotate: Add turn service logs
2020-05-11 13:14:52 -07:00
Girish Ramakrishnan
eb5dcf1c3e
typo
2020-05-11 11:58:14 -07:00
Girish Ramakrishnan
ed2b61b709
Add to changes
2020-05-10 15:35:06 -07:00
Girish Ramakrishnan
41466a3018
No need to poll every hour for updates!
2020-05-06 18:58:35 -07:00
Girish Ramakrishnan
2e130ef99d
Add automatic flag for update checks
...
The appstore can then known if a user clicked the check for updates
button manually or if it was done by the automatic updater.
We will fix appstore so that updates are always provided for manual checks.
automatic updates will follow our roll out plan.
We do have one issue that the automatic update checker will reset the manual
updates when it runs, but this is OK.
2020-05-06 18:57:59 -07:00
Girish Ramakrishnan
a96fb39a82
mail relay: fix delivery event log
2020-05-05 20:34:45 -07:00
Girish Ramakrishnan
c9923c8d4b
spam: large emails were not scanned
2020-05-05 15:23:27 -07:00
Girish Ramakrishnan
74b0ff338b
Disallow cloudtorrent in demo mode
2020-05-04 14:56:10 -07:00
Girish Ramakrishnan
dcaccc2d7a
add redis status
...
part of #671
2020-05-03 19:46:07 -07:00
Johannes Zellner
d60714e4e6
Use webmaster@ instead of support@ as LetsEncrypt fallback
2020-05-03 11:02:18 +02:00
Girish Ramakrishnan
d513d5d887
appstore: Better error messages
2020-05-02 18:30:44 -07:00
Girish Ramakrishnan
386566fd4b
Fcf: ix crash when no email provide with global key
2020-05-02 18:06:21 -07:00
Girish Ramakrishnan
3357ca76fe
specify the invalid bind name in error message
2020-05-02 11:07:58 -07:00
Girish Ramakrishnan
a183ce13ee
put the status code in the error message
2020-04-30 09:24:22 -07:00
Girish Ramakrishnan
e9d0ed8e1e
Add binds support to containers
2020-04-29 22:51:46 -07:00
Girish Ramakrishnan
66f66fd14f
docker: clean up volume API
2020-04-29 21:28:49 -07:00
Girish Ramakrishnan
b49d30b477
Add OVH Object Storage backend
2020-04-29 12:47:57 -07:00
Girish Ramakrishnan
73d83ec57e
Ensure stopped apps are getting backed up
2020-04-29 12:05:01 -07:00
Girish Ramakrishnan
efb39fb24b
refactor for addon/service/container consistency
...
addon - app manifest thing. part of app lifecycle
services - implementation of addon (may have containers assoc)
2020-04-28 15:32:02 -07:00
Girish Ramakrishnan
73623f2e92
add serviceConfig to appdb
...
part of #671
2020-04-28 15:31:58 -07:00
Girish Ramakrishnan
fbcc4cfa50
Rename KNOWN_ADDONS to ADDONS
2020-04-27 22:59:35 -07:00
Girish Ramakrishnan
474a3548e0
Rename KNOWN_SERVICES to SERVICES
2020-04-27 22:59:11 -07:00
Girish Ramakrishnan
2cdf68379b
Revert "add volume support"
...
This reverts commit b8bb69f730 .
Revert this for now, we will try a simpler non-object volume first
2020-04-27 22:55:43 -07:00
Girish Ramakrishnan
cc8509f8eb
More 5.2 changes
2020-04-26 22:28:43 -07:00
Girish Ramakrishnan
a520c1b1cb
Update all docker images to use base image 2.0.0
2020-04-26 17:09:31 -07:00
Girish Ramakrishnan
75fc2cbcfb
Update base image
2020-04-25 10:37:08 -07:00
Girish Ramakrishnan
b8bb69f730
add volume support
...
part of #668 , #569
2020-04-24 22:09:07 -07:00
Girish Ramakrishnan
b46d3e74d6
Fix crash in cloudflare error handling
2020-04-23 12:07:54 -07:00
Girish Ramakrishnan
77a1613107
test: fix alias routes
2020-04-22 18:16:33 -07:00
Girish Ramakrishnan
62fab7b09f
mail: allow alternate mx
2020-04-22 17:36:34 -07:00
Johannes Zellner
5d87352b28
backupId cannot be null during restore
2020-04-21 16:00:19 +02:00
Girish Ramakrishnan
ff60f5a381
move aliases route under mailbox
...
since aliases can now span domains
fixes #577
2020-04-20 19:17:55 -07:00
Girish Ramakrishnan
7f666d9369
mail: implement aliases across domains
...
part of #577
2020-04-20 15:19:48 -07:00
Girish Ramakrishnan
442f16dbd0
more changes
2020-04-18 22:56:38 -07:00
Girish Ramakrishnan
2dcab77ed1
Fix issue where app with oauth addon will not backup or uninstall
2020-04-18 10:08:20 -07:00
Girish Ramakrishnan
13be04a169
Deny non-member email immediately
2020-04-18 02:51:31 -07:00
Girish Ramakrishnan
e3767c3a54
remove obsolete isadmin flag
2020-04-18 02:32:17 -07:00
Girish Ramakrishnan
ce957c8dd5
update mail container
2020-04-18 02:31:59 -07:00
Girish Ramakrishnan
0606b2994c
add membersOnly flag to a mailing list
2020-04-17 17:44:14 -07:00
Girish Ramakrishnan
33acccbaaa
only check the p key for dkim
...
this less-strict DKIM check allows users to set a stronger DKIM key
2020-04-17 12:45:21 -07:00
Girish Ramakrishnan
1e097abe86
Add note on dkim key length
2020-04-17 10:29:14 -07:00
Girish Ramakrishnan
e51705c41d
acme: request ECC certs
2020-04-17 10:22:01 -07:00
Girish Ramakrishnan
7eafa661fe
check .well-known presence upstream
...
this is required for apps like nextcloud which have caldav/cardav
routes
2020-04-15 16:56:41 -07:00
Girish Ramakrishnan
2fe323e587
remove bogus internal route
2020-04-14 23:11:44 -07:00
Girish Ramakrishnan
4e608d04dc
5.1.4 changes
2020-04-11 18:45:39 -07:00
Girish Ramakrishnan
531d314e25
Show error message if gpg failed
2020-04-11 17:11:55 -07:00
Girish Ramakrishnan
1ab23d2902
fix indexOf value comparison
2020-04-11 14:21:05 -07:00
Girish Ramakrishnan
b3496e1354
Add ECDHE-RSA-AES128-SHA256 to cipher list
...
one of our users had the site reverse proxied. it broke after the
5.1 cipher change and they nailed it down to using this cipher.
https://security.stackexchange.com/questions/72926/is-tls-ecdhe-rsa-with-aes-128-cbc-sha256-a-safe-cipher-suite-to-use
says this is safe
The following prints the cipher suite:
log_format combined2 '$remote_addr - [$time_local] '
'$ssl_protocol/$ssl_cipher '
'"$request" $status $body_bytes_sent $request_time '
'"$http_referer" "$host" "$http_user_agent"';
2020-04-10 09:49:06 -07:00
Girish Ramakrishnan
2efa0aaca4
serve custom well-known documents via nginx
2020-04-09 00:15:56 -07:00
Girish Ramakrishnan
ef9aeb0772
Bump default version for tests
2020-04-08 14:24:58 -07:00
Girish Ramakrishnan
924a0136eb
5.1.3 changes
2020-04-08 13:52:53 -07:00
Girish Ramakrishnan
c382fc375e
Set the resetTokenCreationTime in invitation links
2020-04-08 13:11:24 -07:00
Girish Ramakrishnan
2544acddfa
Fix crash with misconfigured reverse proxy
...
https://forum.cloudron.io/topic/2288/mastodon-terminal-not-starting
2020-04-08 09:43:43 -07:00
Johannes Zellner
58072892d6
Add 5.1.2 changes
2020-04-08 11:52:32 +02:00
Johannes Zellner
85a897c78c
Remove console.log debug leftover
2020-04-08 11:48:12 +02:00
Girish Ramakrishnan
6adf5772d8
update turn config to prevent internal access
...
https://www.rtcsec.com/2020/04/01-slack-webrtc-turn-compromise/
2020-04-07 15:37:31 -07:00
Girish Ramakrishnan
f98e3b1960
more 5.1.1 changes
2020-04-03 10:41:37 -07:00
Johannes Zellner
671a967e35
Add 5.1.1 changes
2020-04-03 13:33:03 +02:00
Johannes Zellner
950ef0074f
Add libcurl3-gnutls as explicit dependency
2020-04-03 09:45:03 +02:00
Girish Ramakrishnan
5515324fd4
coturn -> turn in docker repo name
2020-04-02 19:51:14 -07:00
Girish Ramakrishnan
e72622ed4f
Fix crash during auto-update
2020-04-02 19:47:29 -07:00
Girish Ramakrishnan
e821733a58
add note on exposed ports
2020-04-02 18:09:26 -07:00
Girish Ramakrishnan
a03c0e4475
mail: disable hostname validation
2020-04-02 15:00:11 -07:00
Girish Ramakrishnan
3203821546
typo
2020-04-02 12:29:20 -07:00
Girish Ramakrishnan
16f3cee5c5
install custom nginx only on xenial
...
https://nginx.org/en/linux_packages.html#Ubuntu
http://nginx.org/packages/ubuntu/pool/nginx/n/nginx/
2020-04-02 11:54:22 -07:00
Johannes Zellner
57afb46cbd
Ensure nginx installation will not overwrite our conf files
2020-04-02 16:57:55 +02:00
Johannes Zellner
91dde5147a
add-apt-repository does not call apt-get update
2020-04-02 13:54:39 +02:00
Johannes Zellner
d0692f7379
Ensure we have latest nginx
2020-04-02 12:37:02 +02:00
Girish Ramakrishnan
e360658c6e
More changes
2020-04-01 17:00:01 -07:00
Girish Ramakrishnan
e7dc77e6de
bump mail container for mailbox size fix
2020-04-01 16:31:07 -07:00
Girish Ramakrishnan
e240a8b58f
add comment on the struct
2020-04-01 16:26:16 -07:00
Girish Ramakrishnan
38d4f2c27b
Add note on what df output is
2020-04-01 15:59:48 -07:00
Girish Ramakrishnan
552e2a036c
Use block size instead of apparent size in du
...
https://stackoverflow.com/questions/5694741/why-is-the-output-of-du-often-so-different-from-du-b
df uses superblock info to get consumed blocks/disk size. du with -b
prints actual file size instead of the disk space used by the files.
2020-04-01 15:24:53 -07:00
Johannes Zellner
2d4b978032
It will be 5.1.0
2020-04-01 22:30:50 +02:00
Johannes Zellner
36e00f0c84
We will release a 5.0.7 patch release first
2020-04-01 22:26:23 +02:00
Johannes Zellner
ef64b2b945
Use coturn addon tag 1.0.0
2020-04-01 21:50:21 +02:00
Johannes Zellner
f6cd33ae24
Set turn secret for apps
2020-04-01 21:50:09 +02:00
Girish Ramakrishnan
dd109f149f
mail: fix eventlog db perms
2020-04-01 12:24:54 -07:00
Girish Ramakrishnan
5b62d63463
clear mailbox on update and restore
...
part of #669
2020-03-31 17:51:27 -07:00
Girish Ramakrishnan
3fec599c0c
remove mail domain add/remove API
...
merge this as a transaction into domains API
fixes #669
2020-03-31 14:48:19 -07:00
Girish Ramakrishnan
e30ea9f143
make mailbox domain nullable
...
for apps that do not use sendmail/recvmail addon, these are now null.
otherwise, there is no way to edit the mailbox in the UI
part of #669
2020-03-31 11:26:19 -07:00
Johannes Zellner
7cb0c31c59
Also restart turn server on dashboard domain change
2020-03-31 14:52:09 +02:00
Johannes Zellner
b00a7e3cbb
Update turn addon
2020-03-31 10:55:41 +02:00
Johannes Zellner
e63446ffa2
Support persistent turn secret
2020-03-31 09:28:57 +02:00
Girish Ramakrishnan
580da19bc2
Less strict dmarc validation
...
fixes #666
2020-03-30 19:32:25 -07:00
Girish Ramakrishnan
936f456cec
make reset tokens only valid for a day
...
fixes #563
mysql timestamps cannot be null. it will become current timestamp when
set as null
2020-03-30 17:13:31 -07:00
Girish Ramakrishnan
5d6a02f73c
mysql: create the my.cnf in run time dir
2020-03-30 16:32:54 -07:00
Girish Ramakrishnan
b345195ea9
add missing fields in users table
2020-03-30 16:32:28 -07:00
Girish Ramakrishnan
3e6b66751c
typoe in assert
2020-03-30 15:17:34 -07:00
Johannes Zellner
f78571e46d
Support reserved port ranges
2020-03-30 10:01:52 +02:00
Johannes Zellner
f52000958c
Update manifest format to 5.1.1
2020-03-30 08:43:28 +02:00
Johannes Zellner
5ac9c6ce02
add turn,stun ports to RESERVED ones
...
We still need to protect the TURN port range
2020-03-30 08:30:06 +02:00
Johannes Zellner
1110a67483
Add turn addon setup and teardown calls
2020-03-30 08:24:52 +02:00
Girish Ramakrishnan
57bb1280f8
better error message
2020-03-29 20:12:59 -07:00
Girish Ramakrishnan
25c000599f
Fix assert (appStoreId is optional)
2020-03-29 19:12:07 -07:00
Girish Ramakrishnan
86f45e2769
Fix failing test
2020-03-29 18:55:44 -07:00
Girish Ramakrishnan
7110240e73
Only a Cloudron owner can install/update/exec apps with the docker addon
...
this should have been part of f1975d8f2b
2020-03-29 18:52:37 -07:00
Girish Ramakrishnan
1da37b66d8
use resource pattern in apps routes
...
this makes it easy to implement access control in route handlers
2020-03-29 17:11:10 -07:00
Girish Ramakrishnan
f1975d8f2b
only owner can install/repair/update/exec docker addon apps
2020-03-29 16:24:04 -07:00
Girish Ramakrishnan
f407ce734a
restrict the app to bind mount under /app/data only
...
rest have to be volumes
2020-03-29 13:57:45 -07:00
Girish Ramakrishnan
f813cfa8db
Listen only on the docker interface
2020-03-29 13:11:16 -07:00
Girish Ramakrishnan
d5880cb953
TODO block is obsolete
2020-03-29 13:10:19 -07:00
Girish Ramakrishnan
95da9744c1
Prefix env vars with CLOUDRON_
2020-03-29 09:35:34 -07:00
Girish Ramakrishnan
85c3e45cde
remove oauth addon code
2020-03-29 09:35:34 -07:00
Johannes Zellner
520a396ded
Use turn server with certificates
2020-03-29 09:32:48 +02:00
Johannes Zellner
13ad611c96
Remove ssh related settings from the turn container config
2020-03-29 09:32:48 +02:00
Girish Ramakrishnan
85f58d9681
more changes
2020-03-28 23:10:17 -07:00
Johannes Zellner
c1de62acef
Update coturn
2020-03-29 07:30:42 +02:00
Johannes Zellner
7e47e36773
Fix portrange notation in firewall service
2020-03-29 07:25:36 +02:00
Johannes Zellner
00b6217cab
Fix turn tls port
2020-03-29 07:09:17 +02:00
Girish Ramakrishnan
acc2b5a1a3
remove unused param
2020-03-28 22:05:43 -07:00
Girish Ramakrishnan
b06feaa36b
more changes
2020-03-28 17:48:55 -07:00
Johannes Zellner
89cf8a455a
Allow turn and stun service ports
2020-03-28 23:33:44 +01:00
Johannes Zellner
710046a94f
Add coturn addon service
2020-03-28 22:46:32 +01:00
Johannes Zellner
b366b0fa6a
Stop container with isCloudronManged labels instead of by network
2020-03-28 22:46:32 +01:00
Girish Ramakrishnan
f9e7a8207a
cloudron-support: make it --owner-login
2020-03-27 18:58:12 -07:00
Johannes Zellner
6178bf3d4b
Update sftp addon
2020-03-27 14:54:35 +01:00
Girish Ramakrishnan
f3b979f112
More 5.0.6 changelog
2020-03-26 21:56:18 -07:00
Girish Ramakrishnan
9faae96d61
make app password work with sftp
2020-03-26 21:50:25 -07:00
Girish Ramakrishnan
2135fe5dd0
5.0.6 changelog
...
(cherry picked from commit 3c1a1f1b81 )
2020-03-26 19:32:58 -07:00
Girish Ramakrishnan
007a8d248d
make eventlog routes owner only
2020-03-26 18:54:16 -07:00
Girish Ramakrishnan
58d4a3455b
email: add type filter to eventlog
2020-03-25 22:05:49 -07:00
Girish Ramakrishnan
8e3c14f245
5.0.5 changes
...
(cherry picked from commit cc6ddf50b1 )
2020-03-25 08:13:38 -07:00
Girish Ramakrishnan
91af2495a6
Make key validation work for ecc certs
2020-03-24 21:20:21 -07:00
Girish Ramakrishnan
7d7df5247b
Update cipher suite based on ssl-config recommendation
...
ssl_prefer_server_ciphers off is the recommendation since the cpihers
are deprecated
https://serverfault.com/questions/997614/setting-ssl-prefer-server-ciphers-directive-in-nginx-config
2020-03-24 19:24:58 -07:00
Girish Ramakrishnan
f99450d264
Enable TLSv1.3 and remove TLSv1 and 1.1
...
IE10 does not have 1.2, so maybe we can risk it
As per Android documentaion TLS 1.2 is fully supported after API level 20/Android 5(Lolipop)
https://discussions.qualys.com/thread/17020-tls-12-support-for-android-devices
https://www.ryandesignstudio.com/what-is-tls/
2020-03-24 14:37:08 -07:00
Girish Ramakrishnan
d3eeb5f48a
mail: disable host and proto mismatch
2020-03-24 11:50:52 -07:00
Girish Ramakrishnan
1e8a02f91a
Make token expiry a year
...
we now have a UI to invalid all tokens easily, so this should be OK.
2020-03-23 21:51:13 -07:00
Girish Ramakrishnan
97c3bd8b8e
mail: incoming mail from dynamic hostnames was rejected
2020-03-23 21:50:36 -07:00
Girish Ramakrishnan
09ce27d74b
bump default token expiry to a month
2020-03-21 18:46:38 -07:00
Girish Ramakrishnan
2447e91a9f
mail: throttle denied events
2020-03-20 14:04:16 -07:00
Girish Ramakrishnan
e6d881b75d
Use owner email for LE certs
...
https://forum.cloudron.io/topic/2244/email-contact-on-let-s-encrypt-ssl-tls-certificates-uses-password-recovery-email-rather-than-primary-email-address
2020-03-20 13:39:58 -07:00
Girish Ramakrishnan
36f963dce8
remove unncessary debug in routes
2020-03-19 17:05:31 -07:00
Girish Ramakrishnan
1b15d28212
eventlog: add start/stop/restart logs
2020-03-19 17:02:55 -07:00
Girish Ramakrishnan
4e0c15e102
use short form syntax
2020-03-19 16:48:31 -07:00
Girish Ramakrishnan
c9e40f59de
bump the timeout for really slow disks
2020-03-19 13:33:53 -07:00
Girish Ramakrishnan
38cf31885c
Make backup configure owner only
2020-03-18 17:23:23 -07:00
Girish Ramakrishnan
4420470242
comcast does not allow port 25 check anymore
2020-03-17 13:55:35 -07:00
Girish Ramakrishnan
9b05786615
appstore: add whitelist/blacklist
2020-03-15 17:20:48 -07:00
Girish Ramakrishnan
725b2c81ee
custom.yml is obsolete
2020-03-15 16:50:42 -07:00
Girish Ramakrishnan
661965f2e0
Add branding tests
2020-03-15 16:38:15 -07:00
Girish Ramakrishnan
7e0ef60305
Fix incorrect role comparison
2020-03-15 16:19:22 -07:00
Girish Ramakrishnan
2ac0fe21c6
ghost file depends on base dir
2020-03-15 11:41:39 -07:00
Girish Ramakrishnan
b997f2329d
make branding route for owner only
2020-03-15 11:39:02 -07:00
Girish Ramakrishnan
23ee758ac9
do not check for updates for stopped apps
2020-03-15 09:48:08 -07:00
Girish Ramakrishnan
9ea12e71f0
linode: dns backend
...
the dns is very slow - https://github.com/certbot/certbot/pull/6320
takes a good 15 minutes at minimum to propagate
https://certbot-dns-linode.readthedocs.io/en/stable/
https://www.linode.com/community/questions/17296/linode-dns-propagation-time
2020-03-13 11:44:43 -07:00
Girish Ramakrishnan
d3594c2dd6
change ownership of ghost file for good measure
2020-03-12 10:30:51 -07:00
Girish Ramakrishnan
6ee4b0da27
Move out ghost file to platformdata
...
Since /tmp is world writable this might cause privilege escalation
https://forum.cloudron.io/topic/2222/impersonate-user-privilege-escalation
2020-03-12 10:24:21 -07:00
Girish Ramakrishnan
3e66feb514
mail: add mailbox acl
2020-03-10 22:12:15 -07:00
Girish Ramakrishnan
cd91a5ef64
5.0.3 changes
2020-03-10 17:18:21 -07:00
Girish Ramakrishnan
cf89609633
mail: acl was enabled by mistake
2020-03-10 17:15:23 -07:00
Girish Ramakrishnan
67c24c1282
mail: make spamd_user case insensitive
2020-03-10 12:08:43 -07:00
Girish Ramakrishnan
7d3df3c55f
Fix sa usage
2020-03-10 09:22:41 -07:00
Girish Ramakrishnan
dfe5cec46f
Show the public IP to finish setup
2020-03-09 15:18:39 -07:00
Girish Ramakrishnan
17c881da47
Fix spam training
2020-03-09 13:51:17 -07:00
Girish Ramakrishnan
6e30c4917c
Do not wait for dns when re-configured
2020-03-09 12:36:29 -07:00
Girish Ramakrishnan
c6d4f0d2f0
mail: fix word boundary regexp
2020-03-07 19:16:10 -08:00
Girish Ramakrishnan
b32128bebf
Fix quoting in emails
2020-03-07 19:12:39 -08:00
Girish Ramakrishnan
a3f3d86908
More spam fixes
2020-03-07 18:52:20 -08:00
Girish Ramakrishnan
b29c82087a
Bump the mail container version
2020-03-07 17:08:35 -08:00
Johannes Zellner
657beda7c9
Copy 5.0.0 changes for 5.0.1
2020-03-07 16:56:40 -08:00
Girish Ramakrishnan
b4f5ecb304
mail: fix eventlog search
2020-03-07 15:56:56 -08:00
Girish Ramakrishnan
3dabad5e91
Detect that domain is in use by app correctly
2020-03-07 14:52:34 -08:00
Johannes Zellner
890b46836b
Do not allow lower level roles to edit higher level ones
2020-03-07 13:53:01 -08:00
Girish Ramakrishnan
835b3224c6
disable getting user token in demo mode
2020-03-07 11:44:38 -08:00
Girish Ramakrishnan
f8d27f3139
mail: Fix ownership issue with /app/data
2020-03-07 11:40:49 -08:00
Girish Ramakrishnan
33f263ebb9
Fix spamd logs
2020-03-07 01:00:08 -08:00
Girish Ramakrishnan
027925c0ba
Only do spam processing when we have incoming domains
2020-03-07 00:22:00 -08:00
Girish Ramakrishnan
17c4819d41
eventlog updates
2020-03-06 23:16:32 -08:00
Johannes Zellner
017d19a8c8
Do not send internal link for update notification
2020-03-06 19:18:01 -08:00
Girish Ramakrishnan
46b6e319f5
add some spacing in the footer
2020-03-06 19:13:37 -08:00
Johannes Zellner
8f087e1c30
Take default footer from constants and keep settingsdb pristine
2020-03-06 18:08:26 -08:00
Johannes Zellner
c3fc0e83a8
Optimize collectd restart to be skipped if profile hasn't actually changed
2020-03-06 17:44:31 -08:00
Johannes Zellner
7ed0ef7b37
Ensure collectd backup config on startup
2020-03-06 17:44:31 -08:00
Girish Ramakrishnan
46ede3d60d
search for request_uri in try_files
...
this lets us put images in app_not_responding.html
2020-03-06 17:01:48 -08:00
Girish Ramakrishnan
7a63fd4711
Failed quickly if docker image not found
2020-03-06 16:39:20 -08:00
Girish Ramakrishnan
65f573b773
mail container update
2020-03-06 16:11:52 -08:00
Johannes Zellner
afa2fe8177
Improve role add/edit error message
2020-03-06 13:16:50 -08:00
Girish Ramakrishnan
ad72a8a929
Add comment
2020-03-06 13:05:31 -08:00
Johannes Zellner
a7b00bad63
Fixup status code typo
2020-03-06 11:59:31 -08:00
Johannes Zellner
85fd74135c
Bring back legacy ldap mailbox search for old sogo
2020-03-06 11:48:51 -08:00
Girish Ramakrishnan
970ccf1ddb
send footer in status route
...
required for login screen to be customized
2020-03-06 01:16:48 -08:00
Johannes Zellner
b237eb03f6
Add support feature flag
2020-03-06 01:08:45 -08:00
Girish Ramakrishnan
a569294f86
Better changelog
2020-03-06 01:03:52 -08:00
Johannes Zellner
16f85a23d2
Clear reboot notification if reboot is triggered
2020-03-06 00:49:00 -08:00
Johannes Zellner
fcee8aa5f3
Improve LDAP mailbox searches to better suit sogo
2020-03-06 00:48:41 -08:00
Johannes Zellner
d85eabce02
Update reboot required notification text
2020-03-05 21:01:15 -08:00
Johannes Zellner
de23d1aa03
Do not allow to set active flag for the operating user
2020-03-05 21:00:59 -08:00
Johannes Zellner
1766bc6ee3
For now we enable all features
2020-03-05 13:37:07 -08:00
Girish Ramakrishnan
c1801d6e71
Add linode-oneclick provider
2020-03-05 11:25:43 -08:00
Girish Ramakrishnan
64844045ca
mail: various pam related fixes
2020-03-04 15:00:37 -08:00
Girish Ramakrishnan
e90da46967
spam: add default corpus and global db
2020-03-02 21:45:48 -08:00
Girish Ramakrishnan
d10957d6df
remove galaxygate from cloudron-setup help
2020-02-28 11:14:06 -08:00
Girish Ramakrishnan
50dc90d7ae
remove galaxygate
2020-02-28 11:13:44 -08:00
Johannes Zellner
663bedfe39
Sync default features
2020-02-28 15:18:16 +01:00
Girish Ramakrishnan
ce9834757e
restore: carefully replace backup config
...
do not replace the backup policy and other flags
2020-02-27 12:38:37 -08:00
Girish Ramakrishnan
cc932328ff
fix comment
2020-02-27 10:36:35 -08:00
Girish Ramakrishnan
4ebe143a98
improve the error message on domain removal
2020-02-27 10:12:39 -08:00
Johannes Zellner
82aff74fc2
Make app passwords stronger
2020-02-27 13:07:01 +01:00
Girish Ramakrishnan
6adc099455
Fix crash
2020-02-26 15:49:41 -08:00
Girish Ramakrishnan
35efc8c650
add linode objectstorage backend
2020-02-26 09:08:30 -08:00
Girish Ramakrishnan
3f63d79905
Fixup version of next release
2020-02-26 09:01:48 -08:00
Girish Ramakrishnan
00096f4dcd
fix comment
2020-02-26 09:01:35 -08:00
Girish Ramakrishnan
c3e0d9086e
cloudron-support: backups and appsdata can be empty
2020-02-24 14:12:25 -08:00
Girish Ramakrishnan
f1dfe3c7e8
mail: Fix crash when determining usage
2020-02-24 11:45:17 -08:00
Johannes Zellner
6f96ff790f
Groups are part of user manager role
2020-02-24 17:49:22 +01:00
Johannes Zellner
ccb218f243
setPassword wants the full user object
2020-02-24 13:21:17 +01:00
Girish Ramakrishnan
9ac194bbea
fix missing quote in debug message
2020-02-23 11:15:30 -08:00
Girish Ramakrishnan
0191907ce2
mail: use limit plugin instead of rcpt_to.max_count
2020-02-23 11:15:30 -08:00
Johannes Zellner
e80069625b
Fix typo in migration script
2020-02-22 15:26:16 +01:00
Girish Ramakrishnan
0e156b9376
migrate permissions and admin flag to user.role
2020-02-21 16:49:20 -08:00
Johannes Zellner
a8f1b0241e
Add route to obtain an appstore accessToken
2020-02-21 12:34:54 +01:00
Girish Ramakrishnan
6715cf23d7
Add mail usage info
2020-02-20 12:09:06 -08:00
Girish Ramakrishnan
82a173f7d8
proxy requests to mail server
2020-02-20 10:10:34 -08:00
Johannes Zellner
857504c409
Add function to retrieve appstore user access token
2020-02-20 17:05:07 +01:00
Johannes Zellner
4b4586c1e5
Get features from the appstore
2020-02-20 16:04:22 +01:00
Girish Ramakrishnan
6679fe47df
mail: add X-Envelope-From/To headers
2020-02-19 22:14:23 -08:00
Girish Ramakrishnan
e7a98025a2
disable update of domain in demo mode
...
we removed the locked flag, so we have to add this check
2020-02-19 10:45:55 -08:00
Girish Ramakrishnan
2870f24bec
mail eventlog: add remote info
2020-02-18 21:31:28 -08:00
Girish Ramakrishnan
037440034b
Move collectd logs to platformdata and rotate it
2020-02-18 20:36:50 -08:00
Johannes Zellner
15cc1f92e3
Fix typo
2020-02-17 13:47:21 +01:00
Girish Ramakrishnan
00c6ad675e
add usermanager tests
2020-02-14 14:34:29 -08:00
Girish Ramakrishnan
655a740b0c
split tests into various sections
2020-02-14 14:04:51 -08:00
Girish Ramakrishnan
028852740d
Make users-test work
2020-02-14 13:23:17 -08:00
Johannes Zellner
c8000fdf90
Fix the features selection
2020-02-14 15:21:56 +01:00
Johannes Zellner
995e56d7e4
Also grant education and contributor subscriptions all features
2020-02-14 15:13:21 +01:00
Johannes Zellner
c20d3b62b0
Determin features based on subscription and cloudron creation
2020-02-14 15:07:25 +01:00
Girish Ramakrishnan
c537dfabb2
add manage user permission
2020-02-13 22:49:58 -08:00
Girish Ramakrishnan
11b5304cb9
userdb: only pass specific fields to update
2020-02-13 22:45:14 -08:00
Girish Ramakrishnan
fd8abbe2ab
remove ROLE_USER
...
every authenticated user has ROLE_USER. So, this role is superfluous
2020-02-13 21:53:57 -08:00
Girish Ramakrishnan
25d871860d
domains: remove locked field
...
we will do this as part of access control if needed later
2020-02-13 21:16:46 -08:00
Girish Ramakrishnan
d1911be28c
user: load the resource with middleware
2020-02-13 20:59:17 -08:00
Girish Ramakrishnan
938ca6402c
mail: add search param
2020-02-13 09:08:47 -08:00
Johannes Zellner
0aaecf6e46
Cannot use Infinity
2020-02-13 17:09:28 +01:00
Johannes Zellner
b06d84984b
Add features to config object
2020-02-13 16:34:29 +01:00
Girish Ramakrishnan
51b50688e4
mail eventlog: fix bounce event
2020-02-12 23:33:43 -08:00
Girish Ramakrishnan
066d7ab972
Update mail container
2020-02-12 22:11:11 -08:00
Girish Ramakrishnan
e092074d77
2020 is unused
2020-02-11 22:12:34 -08:00
Girish Ramakrishnan
83bdcb8cc4
remove unused domain stats route
2020-02-11 22:10:57 -08:00
Girish Ramakrishnan
f80f40cbcd
repair: take optional docker image for re-configure
2020-02-11 21:05:01 -08:00
Girish Ramakrishnan
4b93b31c3d
SCOPE_* vars are unused now
2020-02-11 17:37:12 -08:00
Girish Ramakrishnan
4d050725b7
storage: done events must be called next tick
...
It seems that listDir() returns synchronously (!), not sure how.
This results in the done event getting called with an error but
the EE event handlers are not setup yet.
2020-02-11 11:48:49 -08:00
Girish Ramakrishnan
57597bd103
s3: bucket name cannot contain /
2020-02-11 11:19:47 -08:00
Girish Ramakrishnan
fb52c2b684
backupupload: it is either result or message
2020-02-11 10:03:26 -08:00
Girish Ramakrishnan
de547df9bd
Show docker image in the error
2020-02-10 21:54:08 -08:00
Girish Ramakrishnan
a05342eaa0
Add mail eventlog
2020-02-10 15:36:30 -08:00
Girish Ramakrishnan
fb931b7a3a
More 4.5 changes
2020-02-10 14:32:15 -08:00
Girish Ramakrishnan
d1c07b6d30
cron: rework recreation of jobs based on timezone
2020-02-10 13:12:20 -08:00
Johannes Zellner
7f0ad2afa0
Move login tests to cloudron route tests
2020-02-10 16:40:07 +01:00
Johannes Zellner
d8e0639db4
Empty or missing username/password results in 400
2020-02-10 16:14:22 +01:00
Johannes Zellner
4d91351845
Get config should succeed for non-admins also
2020-02-10 13:10:56 +01:00
Johannes Zellner
d3f08ef580
Fix apps test to use latest test-app
2020-02-08 00:43:57 +01:00
Johannes Zellner
5e11a9c8ed
Fixup typo
2020-02-07 23:12:53 +01:00
Johannes Zellner
957e1a7708
Cleanup unused tokendb apis
2020-02-07 23:06:45 +01:00
Johannes Zellner
7c86ed9783
Add ability to specify the login purpose for further use
...
In this case the cli will specify a different token type
2020-02-07 23:03:53 +01:00
Girish Ramakrishnan
799b588693
More 4.5 changes
2020-02-07 11:29:16 -08:00
Girish Ramakrishnan
596f4c01a4
cloudron-setup: remove support for pre-4.2
2020-02-07 09:15:12 -08:00
Girish Ramakrishnan
f155de0f17
Revert "Read the provider from the settings, not the migration PROVIDER_FILE"
...
This reverts commit 001749564d .
PROVIDER is still very much alive and active. sysinfo provider is for the network
interface
2020-02-07 09:13:33 -08:00
Johannes Zellner
476ba1ad69
Fix token expiresAt
2020-02-07 16:42:15 +01:00
Johannes Zellner
ac4aa4bd3d
Add tokens routes
2020-02-07 16:20:05 +01:00
Girish Ramakrishnan
237f2c5112
Better error message for domain conflict
2020-02-06 15:51:32 -08:00
Johannes Zellner
cbc6785eb5
Fix typo
2020-02-06 17:29:45 +01:00
Johannes Zellner
26c4cdbf17
Rename tokens.addTokenByUserId() to simply tokens.add()
2020-02-06 17:26:17 +01:00
Johannes Zellner
fb78f31891
cleanup accesscontrol route tests for now
2020-02-06 17:26:17 +01:00
Johannes Zellner
2b6bf8d195
Remove Oauth clients code
2020-02-06 17:26:15 +01:00
Johannes Zellner
2854462e0e
Remove token scope business
2020-02-06 16:44:46 +01:00
Johannes Zellner
b4e4b11ab3
Remove now redundant developer login code
2020-02-06 15:47:44 +01:00
Johannes Zellner
7c5a258af3
Move 2fa validation in one place
2020-02-06 15:36:14 +01:00
Johannes Zellner
12aa8ac0ad
Remove passport
2020-02-06 14:56:28 +01:00
Johannes Zellner
58d8f688e5
Update schema since authcodes is gone
2020-02-06 11:11:15 +01:00
Girish Ramakrishnan
7efb9e817e
oauth2 is gone
2020-02-05 14:46:09 -08:00
Girish Ramakrishnan
5145ea3530
Add supportConfig in database
2020-02-05 14:46:05 -08:00
Girish Ramakrishnan
2f6933102c
put appstore whitelist/blacklist in db
2020-02-05 11:58:10 -08:00
Girish Ramakrishnan
25ef5ab636
Move custom pages to a subdirectory
2020-02-05 11:42:17 -08:00
Johannes Zellner
4ae12ac10b
Remove oauth
...
A whole bunch of useless stuff
2020-02-05 18:15:59 +01:00
Johannes Zellner
bfffde5f89
Remove oauth based account setup page
2020-02-05 17:10:55 +01:00
Johannes Zellner
aa7ec53257
Also send display name with invite link
2020-02-05 16:34:34 +01:00
Johannes Zellner
1f41e6dc0f
Fix audit source usage
2020-02-05 16:12:40 +01:00
Johannes Zellner
1fbbaa82ab
Generate the user invite link only in one location
2020-02-05 15:53:05 +01:00
Johannes Zellner
68b1d1dde1
Fixup account setup link
2020-02-05 15:21:55 +01:00
Johannes Zellner
d773cb4873
Add REST route for account setup
...
This replaces the server side rendered form
2020-02-05 15:04:59 +01:00
Johannes Zellner
d3c7616120
Remove csurf
...
New views will be using the REST api not session, so this won't apply
2020-02-05 12:49:37 +01:00
Johannes Zellner
6a92af3db3
Remove password reset views from oauth
2020-02-05 11:43:33 +01:00
Girish Ramakrishnan
763e14f55d
Make app error page customizable
2020-02-04 17:52:30 -08:00
Girish Ramakrishnan
4f57d97fff
add api to get/set footer and remove all use of custom.js
2020-02-04 13:27:19 -08:00
Girish Ramakrishnan
3153fb5cbe
custom: remove alerts section
2020-02-04 13:09:00 -08:00
Girish Ramakrishnan
c9e96cd97a
custom: remove support section
2020-02-04 13:07:36 -08:00
Girish Ramakrishnan
c41042635f
custom: remove subscription.configurable
2020-02-04 12:58:32 -08:00
Girish Ramakrishnan
141b2d2691
custom: remove app whitelist/blacklist
2020-02-04 12:58:11 -08:00
Girish Ramakrishnan
e71e8043cf
custom: remove config.uiSpec.domains
2020-02-04 12:56:10 -08:00
Girish Ramakrishnan
49d80dbfc4
custom: remove backups.configurable
2020-02-04 12:49:41 -08:00
Johannes Zellner
8d6eca2349
Fix typos
2020-02-04 18:32:43 +01:00
Johannes Zellner
13d0491759
Send out new password reset link
2020-02-04 17:11:31 +01:00
Johannes Zellner
37e2d78d6a
Users without a username have to sign up first
2020-02-04 17:07:45 +01:00
Johannes Zellner
6745221e0f
Password reset does not need an email
2020-02-04 17:05:08 +01:00
Johannes Zellner
18bbe70364
Add route to set new password
2020-02-04 16:47:57 +01:00
Johannes Zellner
eec8d4bdac
We want to redirect to login.html
2020-02-04 15:59:12 +01:00
Johannes Zellner
86029c1068
Add new password reset route
2020-02-04 15:27:22 +01:00
Johannes Zellner
0ae9be4de9
Add basic login/logout logic
2020-02-04 14:35:25 +01:00
Girish Ramakrishnan
57e3180737
typo
2020-02-01 18:12:33 -08:00
Girish Ramakrishnan
a84cdc3d09
app password: add tests for the rest routes
2020-02-01 10:19:14 -08:00
Girish Ramakrishnan
a5f35f39fe
oom notification for backup disk as well
2020-01-31 22:20:34 -08:00
Girish Ramakrishnan
3427db3983
Add app passwords feature
2020-01-31 22:03:19 -08:00
Girish Ramakrishnan
e3878fa381
mysqldump: Add --column-statistics=0
...
mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"') FROM information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'box' AND TABLE_NAME = 'appAddonConfigs';': Unknown table 'COLUMN_STATISTICS' in information_schema (1109)
2020-01-31 18:42:44 -08:00
Girish Ramakrishnan
e1ded9f7b5
Add collectd for backups
2020-01-31 14:56:41 -08:00
Girish Ramakrishnan
1981493398
refactor code into collectd.js
2020-01-31 13:33:19 -08:00
Girish Ramakrishnan
dece7319cc
Update packages carefully
2020-01-31 10:25:47 -08:00
Girish Ramakrishnan
5c4e163709
revert package changes
2020-01-31 10:04:49 -08:00
Johannes Zellner
d1acc6c466
Do not upgrade async module since api has changed
...
We have to first fix for example doWhilst() usage
2020-01-31 15:44:41 +01:00
Girish Ramakrishnan
f879d6f529
Prepare for 4.4.5
2020-01-30 21:11:20 -08:00
Girish Ramakrishnan
1ac38d4921
After node update, we get a buffer
2020-01-30 16:06:11 -08:00
Johannes Zellner
4818e9a8e4
Pass cloudron purpose to appstore
2020-01-30 16:00:38 +01:00
Girish Ramakrishnan
c4ed471d1c
Update node to 10.18.1
2020-01-29 20:54:57 -08:00
Girish Ramakrishnan
83c0b2986a
Update mysql packet size
2020-01-29 20:44:26 -08:00
Girish Ramakrishnan
b8cddf559a
min cpu shares is 2
2020-01-28 22:38:54 -08:00
Girish Ramakrishnan
4ba9f80d44
apps: configure cpuShares
2020-01-28 22:16:25 -08:00
Girish Ramakrishnan
d1d3309e91
Better error message for invalid data directories
2020-01-28 14:12:56 -08:00
Girish Ramakrishnan
84cffe8888
Fix debug
2020-01-28 13:51:03 -08:00
Girish Ramakrishnan
3929b3ca0a
service: add memorySwap to configure route
2020-01-28 13:33:43 -08:00
Girish Ramakrishnan
d649a470f9
More changes
2020-01-28 09:37:48 -08:00
Girish Ramakrishnan
db330b23cb
Stopped apps should not renew certificates
...
We had a case where a stopped/ununsed app was generating cert renewal
errors.
One idea might be to suppress the notification as well.
2020-01-26 16:22:20 -08:00
Girish Ramakrishnan
cda649884e
eventlog: add mailbox and list update events
2020-01-24 17:18:34 -08:00
Girish Ramakrishnan
45053205db
refactor: re-order arguments
2020-01-24 17:18:34 -08:00
Johannes Zellner
3f1533896e
Keep debug messages in sync
2020-01-21 16:14:36 +01:00
Girish Ramakrishnan
e20dfe1b26
Ensure backup is the night of the timezone
2020-01-20 17:28:53 -08:00
Johannes Zellner
946d9db296
We have 2020 also in the oauth login views
2020-01-20 17:47:26 +01:00
Girish Ramakrishnan
6dc2e1aa14
Do not show error page for 503
...
WP maintenance mode plugin will return 503
2020-01-13 15:00:18 -08:00
Johannes Zellner
001749564d
Read the provider from the settings, not the migration PROVIDER_FILE
2020-01-13 15:35:44 +01:00
Johannes Zellner
ffcba4646c
Add 4.4.5 changes
2020-01-09 16:24:26 +01:00
Girish Ramakrishnan
01d0c8eb9c
Remove tz detection
...
we now have a UI to set this by hand
2020-01-08 09:24:23 -08:00
Girish Ramakrishnan
0cf40bd207
More 4.4.4 changes
2020-01-07 18:31:10 -08:00
Girish Ramakrishnan
4a283e9f35
4.4.4 changes
2020-01-06 08:55:22 -08:00
Johannes Zellner
5ab37bcf7e
Disable test if dns setup succeeds twice
2020-01-06 12:21:36 +01:00
Johannes Zellner
9151965cd6
Keep user objects in REST api responses more coherent
2020-01-06 11:54:00 +01:00
Girish Ramakrishnan
c5cd71f9e3
Disable motd-news
...
https://forum.cloudron.io/topic/2050/switch-to-debian-ubuntu-spying
2020-01-05 15:25:15 -08:00
Girish Ramakrishnan
602b335c0e
add openldap compat
...
apps like firefly-iii seem to require these fields when using the
openldap driver
2020-01-05 15:14:46 -08:00
Girish Ramakrishnan
837c8b85c2
2020: happy new year
2020-01-02 16:55:47 -08:00
Girish Ramakrishnan
7d16396e72
clone: custom mailbox name is not cloned
2020-01-01 23:05:34 -08:00
Girish Ramakrishnan
66d3d07148
append error message when verifying dns config
2020-01-01 16:17:16 -08:00
Girish Ramakrishnan
b5c1161caa
add tokenType to cloudflare config
2020-01-01 16:01:39 -08:00
Girish Ramakrishnan
b0420889ad
cloudflare: add api token support
2019-12-31 16:47:47 -08:00
Girish Ramakrishnan
527819d886
cloudflare: refactor superagent logic
2019-12-31 16:25:49 -08:00
Girish Ramakrishnan
1ad0cff28e
Use app.fqdn in output
2019-12-24 11:07:53 -08:00
Johannes Zellner
783ec03ac9
The setup views require webServerOrigin for documentation purpose
2019-12-23 17:15:45 +01:00
Girish Ramakrishnan
6cd395d494
Allow restore from error state
2019-12-20 17:58:42 -08:00
Girish Ramakrishnan
681079e01c
repair: reconfigure for all other states
...
the idea was that the failed routes can be called again in other cases
2019-12-20 17:00:53 -08:00
Girish Ramakrishnan
aabbc43769
4.4.3 changes
2019-12-20 11:29:02 -08:00
Girish Ramakrishnan
2692f6ef4e
Add restart route for atomicity
2019-12-20 11:15:36 -08:00
Girish Ramakrishnan
887cbb0b22
make percent non-zero
2019-12-18 09:33:44 -08:00
Johannes Zellner
ca4fdc1be8
Add azure-image provider argument
2019-12-17 16:42:25 +01:00
Girish Ramakrishnan
93199c7f5b
eventlog: support ticket and ssh
2019-12-16 14:06:55 -08:00
Girish Ramakrishnan
4c6566f42f
stopped apps should not be updated or auto-updated
2019-12-16 13:29:15 -08:00
Johannes Zellner
c38f7d7f93
Make properties explicitly available
2019-12-16 15:21:26 +01:00
Girish Ramakrishnan
da85cea329
avatar: remove query param
...
let the ui add the size and default
2019-12-13 13:45:02 -08:00
Girish Ramakrishnan
d5c70a2b11
Add sshd port warning
2019-12-13 11:32:36 -08:00
Girish Ramakrishnan
fe355b4bac
4.4.2 changes
2019-12-12 20:44:54 -08:00
Girish Ramakrishnan
a7dee6be51
cloudron.runSystemChecks should take a callback
2019-12-12 20:41:03 -08:00
Girish Ramakrishnan
2817dc0603
Not required to run any cron job immediately
2019-12-12 20:39:40 -08:00
Girish Ramakrishnan
6f36c72e88
Fix crash in mail.checkConfiguration
2019-12-12 20:36:27 -08:00
Girish Ramakrishnan
45e806c455
typo in comment
2019-12-12 19:54:59 -08:00
Johannes Zellner
bbdd76dd37
Fix and add memory route tests
2019-12-12 13:21:24 +01:00
Johannes Zellner
09921e86c0
Remove redunandant memory property from config
...
we have a specific route for this now
2019-12-12 12:14:08 +01:00
Girish Ramakrishnan
d6e4b64103
4.4.1 changes
2019-12-11 15:27:47 -08:00
Girish Ramakrishnan
9dd3e4537a
return 422 on instance id mismatch
...
the ui redirects otherwise
2019-12-11 15:13:38 -08:00
Girish Ramakrishnan
a5f31e8724
Revert "rename ami to aws-mp"
...
This reverts commit 72ac00b69a .
Existing code relies on this, so don't change it
2019-12-11 12:56:30 -08:00
Girish Ramakrishnan
72ac00b69a
rename ami to aws-mp
2019-12-11 12:27:55 -08:00
Girish Ramakrishnan
ae5722a7d4
eventlog: typo when mail list is removed
2019-12-11 10:05:45 -08:00
Johannes Zellner
4e3192d450
Avoid double dns setup tracking
2019-12-11 14:02:40 +01:00
Johannes Zellner
ccca3aca04
Send setup state to get the actually correct ip
2019-12-10 18:01:07 +01:00
Girish Ramakrishnan
e4dd5d6434
Fix crash when uploading file
2019-12-09 15:02:51 -08:00
Girish Ramakrishnan
9a77fb6306
acme2: implement post-as-get
...
https://tools.ietf.org/html/rfc8555#section-6.3
https://community.letsencrypt.org/t/post-as-get-and-empty-payload-instead-of/86720/3
https://community.letsencrypt.org/t/problem-with-renew-certificates-the-request-message-was-malformed-method-not-allowed/107889/17
2019-12-08 19:17:52 -08:00
Girish Ramakrishnan
3ec5c713bf
debug: certFilePath is undefined
2019-12-08 18:23:12 -08:00
Girish Ramakrishnan
837fc27e94
canAutoupdateApp now returns bool
2019-12-08 16:55:56 -08:00
Girish Ramakrishnan
9ad6025310
search and replace gone wrong
2019-12-06 13:52:43 -08:00
Girish Ramakrishnan
d765e4c619
add a note
2019-12-06 12:39:46 -08:00
Girish Ramakrishnan
f5217236d6
Change the version number
2019-12-06 12:28:08 -08:00
Girish Ramakrishnan
8f8d099faf
Add to changes
2019-12-06 12:23:49 -08:00
Girish Ramakrishnan
16660e083f
Also set overwriteDns when manifest is not provided
2019-12-06 12:21:28 -08:00
Girish Ramakrishnan
4e35020a1c
Set overwriteDns for install task
2019-12-06 12:11:34 -08:00
Girish Ramakrishnan
111e0bcb5f
Fix repair route path
2019-12-06 11:44:41 -08:00
Girish Ramakrishnan
d7f9a547fc
Disable requiredState check for now
...
there is a race but this is mitigated by the checkAppState non-db logic
for now
2019-12-06 11:29:35 -08:00
Girish Ramakrishnan
6a64f24e98
Fix repair
...
If a task fails, we can either:
* allow other task ops to be called - we cannot do this because the ops are fine-grained. for example,
a restore failure removes many things and calling set-memory or set-location in that state won't
make sense.
* provide a generic repair route - this allows one to override args and call the failed task
again. this is what we have now but has the issue that this repair function has to know about all
the other op functions. for example, for argument validation. we can do some complicated refactoring
to make it work if we want.
* just a generic total re-configure - this does not work because clone/restore/backup/datadir/uninstall/update
failure leaves the app in a state which re-configure cannot do anything about.
* allow the failed op to be called again - this seems the easiest. we just allow the route to be called again
in the error state.
* if we hit a state where even providing extra args, cannot get you out of this "error" state, we have to provide
some repair route. for example, maybe the container disappeared by some docke error. user clicks 'repair' to
recreate the container. this route does not have to take any args.
The final solution is:
* a failed task can be called again via the route. so we can resubmit any args and we get validation
* repair route just re-configures and can be called in any state to just rebuild container. re-configure is also
doing only local changes (docker, nginx)
* install/clone failures are fixed using repair route. updated manifest can be passed in.
* UI shows backup selector for restore failures
* UI shows domain selector for change location failulre
2019-12-06 09:56:09 -08:00
Girish Ramakrishnan
37d7be93b5
Move oldManifest out of restoreConfig
2019-12-06 09:56:03 -08:00
Girish Ramakrishnan
9c809aa6e1
remove dead comment
2019-12-06 09:35:08 -08:00
Girish Ramakrishnan
7ab9f3fa2f
re-configure does not require oldConfig
...
this is only needed when changing location now. the configure()
is now entirely local i.e rebuild local container and the reverse
proxy config
2019-12-06 09:23:58 -08:00
Girish Ramakrishnan
ffeb484a10
No need to return args as part of task.get
...
This reverts commit 831e22b4ff .
This reverts commit 6774514bd2 .
2019-12-06 08:42:49 -08:00
Girish Ramakrishnan
2ffb32ae60
Skip moving data if source and target are same
2019-12-06 08:09:43 -08:00
Girish Ramakrishnan
905bb92bad
s3: ensure BoxError return
2019-12-05 21:50:44 -08:00
Girish Ramakrishnan
3926efd153
restore: only take non-empty backupId
2019-12-05 21:16:35 -08:00
Girish Ramakrishnan
c5e5bb90e3
better error message
2019-12-05 21:16:35 -08:00
Girish Ramakrishnan
cea543cba5
On backup error, only set the task error
...
at some point, the backup ui can show this error
2019-12-05 16:34:40 -08:00
Girish Ramakrishnan
a8b489624d
fix error messages
2019-12-05 16:27:00 -08:00
Girish Ramakrishnan
49d3bddb62
Show download progress when restoring rsync backups
2019-12-05 15:44:52 -08:00
Girish Ramakrishnan
c0ff3cbd22
move progressTag to the end
2019-12-05 15:44:52 -08:00
Girish Ramakrishnan
1de97d6967
do not clear localstorage during in-place import
2019-12-05 12:42:08 -08:00
Girish Ramakrishnan
a44a82083e
Add backups.testProviderConfig
...
fields like format/retention won't be validated here since it's only
testing the access credentials
2019-12-05 11:55:53 -08:00
Girish Ramakrishnan
d57681ff21
put fqdn in the end
2019-12-05 11:15:21 -08:00
Girish Ramakrishnan
e3de2f81d3
setup and clear addons before import
2019-12-05 11:12:40 -08:00
Girish Ramakrishnan
e8c5f8164c
do not delete data dir for in-place import
2019-12-05 11:01:27 -08:00
Girish Ramakrishnan
c07e215148
Use BoxError in on error cases
2019-12-05 09:54:29 -08:00
Girish Ramakrishnan
4bb676fb5c
add asserts
2019-12-05 09:32:45 -08:00
Johannes Zellner
dbdf86edfc
No need to return the same data which the route got passed in
2019-12-05 18:02:57 +01:00
Johannes Zellner
2c8e6330ce
Do not allow to change the sysinfo in demo mode
2019-12-05 16:06:21 +01:00
Girish Ramakrishnan
1b563854a7
implement in-place import and custom backup config
2019-12-04 19:27:05 -08:00
Girish Ramakrishnan
80b890101b
Add changes
2019-12-04 17:53:02 -08:00
Girish Ramakrishnan
c3696469ff
Add app fqdn to backup progress message
2019-12-04 17:49:31 -08:00
Girish Ramakrishnan
3e08e7c653
Typo in docker socket path
2019-12-04 14:37:00 -08:00
Girish Ramakrishnan
53e39f571c
Make addons code remove a BoxError
2019-12-04 14:28:42 -08:00
Girish Ramakrishnan
c992853cca
lint
2019-12-04 11:18:39 -08:00
Girish Ramakrishnan
85e17b570b
Use whilst instead of forever
...
this gets rid of the Error object
2019-12-04 11:17:44 -08:00
Girish Ramakrishnan
30eccfb54b
Use BoxError instead of Error in all places
...
This moves everything other than the addon code and some 'done' logic
2019-12-04 11:02:54 -08:00
Girish Ramakrishnan
3623831390
Typo
2019-12-04 10:23:16 -08:00
Girish Ramakrishnan
d0a3d00492
Use NOT_IMPLEMENTED error code
2019-12-04 10:22:22 -08:00
Girish Ramakrishnan
0b6fbfd910
Better addon error messages
2019-12-04 10:09:57 -08:00
Girish Ramakrishnan
8cfb27fdcd
Add changes
2019-12-03 15:39:29 -08:00
Girish Ramakrishnan
841ab54565
better logs
2019-12-03 15:11:27 -08:00
Girish Ramakrishnan
a2e9254343
lint
2019-12-03 15:10:06 -08:00
Johannes Zellner
43cb03a292
Send provider and version during registration
2019-12-02 18:19:51 +01:00
Johannes Zellner
f2fca33309
Add support to upload custom profile avatar
2019-12-02 18:03:54 +01:00
Johannes Zellner
14d26fe064
Do not crash on migration
...
A bit late but still
2019-12-02 18:03:54 +01:00
Girish Ramakrishnan
9cc968e790
Pass the new data dir as a task argument
2019-11-25 14:22:27 -08:00
Girish Ramakrishnan
831e22b4ff
Fix failing test
2019-11-23 18:35:15 -08:00
Girish Ramakrishnan
6774514bd2
Return args as part of task.get
...
the ui needs this to repair any failed app task
2019-11-23 18:06:33 -08:00
Girish Ramakrishnan
f543b98764
Remove BoxError.UNKNOWN_ERROR
2019-11-22 14:27:41 -08:00
Johannes Zellner
2e94600afe
Don't set 'Starting ...' as initial task progress message
...
This is confusing for tasks like "stop" as it will say "Starting ..."
2019-11-22 13:54:43 +01:00
Johannes Zellner
9295ce783a
Other logs are lowercase
2019-11-22 12:31:41 +01:00
Johannes Zellner
134f8a28bf
Hide access tokens from logs
2019-11-22 12:29:13 +01:00
Girish Ramakrishnan
ab5e4e998c
Fix reduce usage
2019-11-21 13:48:31 -08:00
Girish Ramakrishnan
a98551f99c
rename disks to system
2019-11-21 13:01:08 -08:00
Girish Ramakrishnan
42fe84152a
return swap information
2019-11-21 12:55:17 -08:00
Girish Ramakrishnan
8a3d212bd4
Fix note
2019-11-20 16:17:47 -08:00
Girish Ramakrishnan
af51ddc347
Fix crash when user with active session is deleted
2019-11-20 16:12:21 -08:00
Girish Ramakrishnan
b582e549c2
do not unconfigure reverse proxy on container destroy
2019-11-20 15:38:55 -08:00
Girish Ramakrishnan
5efbccd974
Revert migration change since some cloudrons already got 4.3.3
2019-11-20 14:43:01 -08:00
Johannes Zellner
82f5cd6075
Remove unused stuff in external ldap tests
2019-11-20 22:30:53 +01:00
Johannes Zellner
0d8820c247
Add external ldap tests
2019-11-20 22:21:40 +01:00
Girish Ramakrishnan
37c6a96a3a
s3: if etag is not present, flag as error
2019-11-20 12:53:36 -08:00
Johannes Zellner
c53b54bda3
Only create external ldap users for oauth logins
2019-11-20 20:05:22 +01:00
Girish Ramakrishnan
808753ad3a
CLI tokens are now valid for a month
2019-11-20 10:07:15 -08:00
Girish Ramakrishnan
f919570cea
Fix tests
...
mailboxDomain can be null (even though install/clone currently always
allocate one)
2019-11-20 09:57:51 -08:00
Johannes Zellner
9acf49a99e
Fix typo
2019-11-20 18:18:21 +01:00
Johannes Zellner
239883d01f
Add autoCreate flag to external ldap config
2019-11-20 18:18:21 +01:00
Johannes Zellner
e3cee37527
Move autocreation logic into external ldap
2019-11-20 18:18:21 +01:00
Johannes Zellner
8fd0461c62
Auto create users on login if present in external ldap source
2019-11-20 18:18:21 +01:00
Girish Ramakrishnan
4d2b5c83ca
Bump version to re-generate configs
2019-11-19 17:36:05 -08:00
Girish Ramakrishnan
bc314c1119
Re-generate collectd and logrotate configs on container recreate
...
this was the reason graphs were not showing up properly
2019-11-19 17:28:31 -08:00
Girish Ramakrishnan
d01749a2c2
Add 4.3.4 changes
2019-11-19 11:42:48 -08:00
Girish Ramakrishnan
b46154676a
Do not error if fallback certs went missing
...
This atleast lets the user remove and add the domain to fix things up
2019-11-19 09:36:35 -08:00
Girish Ramakrishnan
fd2d60dca3
Match the version entirely during restore
...
Sometimes, we introduce migrations in patch releases and this causes
problems when restoring the sql dump
2019-11-18 15:05:01 -08:00
Girish Ramakrishnan
ed17bdc7c3
typo
2019-11-17 21:16:36 -08:00
Girish Ramakrishnan
ac05399cda
Add changes
2019-11-17 12:29:53 -08:00
Girish Ramakrishnan
1af5c6a418
Fix registry detection
...
ECR registry does not have a username component
2019-11-17 11:50:58 -08:00
Girish Ramakrishnan
e2bb668fe4
add note on appStoreId
2019-11-16 10:31:38 -08:00
Girish Ramakrishnan
d255466417
manifest.id is optional for custom apps
2019-11-15 17:28:54 -08:00
Girish Ramakrishnan
5509406395
add mailboxDomain field to apps table
2019-11-15 09:40:35 -08:00
Girish Ramakrishnan
97333474c4
Remove delay introduced by mistake in 5c920fd20
2019-11-14 17:40:21 -08:00
Johannes Zellner
38928d63d6
node's http server has a default timeout of 2min which is too short for build bot
2019-11-14 13:15:18 +01:00
Girish Ramakrishnan
05c64dcbf2
move unbound config to separate file
2019-11-13 14:48:56 -08:00
Girish Ramakrishnan
e39b081567
Change restart policy to unless-stopped
2019-11-13 10:29:54 -08:00
Girish Ramakrishnan
62174658cf
4.3.2 changes
2019-11-12 16:43:27 -08:00
Girish Ramakrishnan
3d26e8a666
Revert "Update cloudron-manifestformat and other modules"
...
This reverts commit 3d337640ef .
Only update cloudron-manifestformat
2019-11-12 14:54:16 -08:00
Girish Ramakrishnan
3d337640ef
Update cloudron-manifestformat and other modules
2019-11-12 14:26:13 -08:00
Girish Ramakrishnan
985eaf8ca9
Better progress message
2019-11-11 17:09:46 -08:00
Girish Ramakrishnan
e0bee13812
validate sysinfo in setup as well
2019-11-11 16:32:29 -08:00
Girish Ramakrishnan
7c6922d228
validate sysinfo configuration
2019-11-11 16:05:53 -08:00
Girish Ramakrishnan
bf68c2d321
default has changed
2019-11-11 11:19:42 -08:00
Girish Ramakrishnan
fd51320fb7
sysinfoConfig is now non-optional
2019-11-11 11:05:34 -08:00
Girish Ramakrishnan
815392ba38
restore: add sysinfoConfig
2019-11-11 09:49:18 -08:00
Girish Ramakrishnan
f8c110f75c
4.3.1 changes
2019-11-11 09:43:19 -08:00
Girish Ramakrishnan
70f9ceb1b8
better not found message
2019-11-11 09:13:45 -08:00
Girish Ramakrishnan
2353a8b5fa
list unstable apps by default
2019-11-11 08:42:00 -08:00
Girish Ramakrishnan
cf1c2dc1ee
Fix crash when listing mailboxes
2019-11-10 12:44:39 -08:00
Johannes Zellner
467283d5e0
Destroy all session by a user if wanted
2019-11-08 21:32:55 +01:00
Girish Ramakrishnan
a887e19d46
Update mail container
2019-11-07 15:16:51 -08:00
Girish Ramakrishnan
2ab941660e
Fix haraka crash
...
https://github.com/haraka/Haraka/issues/2732
2019-11-07 15:10:34 -08:00
Girish Ramakrishnan
a75769071c
remove obsolete test
2019-11-07 14:23:57 -08:00
Girish Ramakrishnan
7f2af067cf
Add enums for cid
2019-11-07 13:38:33 -08:00
Girish Ramakrishnan
88454e7d6c
remove unused function
2019-11-07 13:35:37 -08:00
Girish Ramakrishnan
5c920fd200
never skip password verification
2019-11-07 13:10:12 -08:00
Girish Ramakrishnan
ab650c7a95
more changes
2019-11-07 11:13:52 -08:00
Girish Ramakrishnan
1e776bbbe0
Add route to get public IP
2019-11-07 10:41:15 -08:00
Girish Ramakrishnan
cd0294129f
Add changes
2019-11-07 09:25:04 -08:00
Johannes Zellner
d1c6e786c2
Remove unused CLOUDRON_ADMIN_EMAIL
2019-11-07 16:38:30 +01:00
Girish Ramakrishnan
58d66b5293
mail: resolve list members
2019-11-06 21:45:54 -08:00
Girish Ramakrishnan
1942a7ecf4
redis: start app redis addons on image update
2019-11-06 09:38:20 -08:00
Girish Ramakrishnan
22c2add55e
Update redis
2019-11-05 21:59:35 -08:00
Girish Ramakrishnan
60c5cccfc2
Add MAIL_ERROR
2019-11-05 20:55:21 -08:00
Girish Ramakrishnan
b4874ec1f4
refactor getting mail auth
2019-11-05 19:54:53 -08:00
Girish Ramakrishnan
d7b326bf2b
clone: appdb.add must also put the reverse proxy config
2019-11-05 13:58:02 -08:00
Girish Ramakrishnan
b9d8b5f973
clone: copy reverseProxyConfig
2019-11-05 12:50:30 -08:00
Girish Ramakrishnan
64fd6e0dac
Allow redis with no password
2019-11-05 10:48:36 -08:00
Girish Ramakrishnan
868103e7e4
Add changes
2019-11-05 09:21:23 -08:00
Johannes Zellner
3354cb8ebe
Add network interface check
2019-11-05 15:03:36 +01:00
Johannes Zellner
4fc012dea0
Fix typo in sysinfo route handler
2019-11-05 13:45:06 +01:00
Girish Ramakrishnan
947cb786d6
ldapsync: add progress callback
2019-11-04 12:05:35 -08:00
Girish Ramakrishnan
689f2791ba
validate fields in testConfig
2019-10-31 11:46:00 -07:00
Girish Ramakrishnan
a5ec5b0ed9
externalLdap: search and then bind
2019-10-30 15:32:49 -07:00
Girish Ramakrishnan
8e5916b785
oauth2: catch any errors in handlers
2019-10-30 15:15:36 -07:00
Girish Ramakrishnan
563f846eba
style fixes
2019-10-30 14:27:58 -07:00
Girish Ramakrishnan
7781ea3205
remove this check, let if get marked as conflicting
2019-10-30 11:05:26 -07:00
Girish Ramakrishnan
2f5ece8f1d
make displayName also a const
2019-10-30 11:04:19 -07:00
Girish Ramakrishnan
ec46dab754
camel case
2019-10-30 11:02:21 -07:00
Girish Ramakrishnan
d5d27d512c
make email a constant
2019-10-30 10:59:48 -07:00
Girish Ramakrishnan
0a695190c4
Remove bindDn validation
...
in some AD setups, this is a email
2019-10-30 09:35:33 -07:00
Girish Ramakrishnan
59deca76a1
add changes
2019-10-30 09:16:55 -07:00
Girish Ramakrishnan
a829ab44f1
sysinfo: remove the ec2 and scaleway providers
...
we can just use the generic one for those as well
2019-10-30 09:13:01 -07:00
Girish Ramakrishnan
82a7befb92
Fix crashes
2019-10-29 20:33:32 -07:00
Girish Ramakrishnan
331d0ee717
declare the variable
2019-10-29 20:20:35 -07:00
Girish Ramakrishnan
addafa529f
sysinfoConfig can be passed when provisioning
2019-10-29 20:12:37 -07:00
Girish Ramakrishnan
8232d471a3
Add route to set/get sysinfo
2019-10-29 20:08:45 -07:00
Girish Ramakrishnan
813454ca82
sysinfo: Add static and network intf providers
2019-10-29 16:12:58 -07:00
Girish Ramakrishnan
7d987d7c79
make sysinfo provider a setting
2019-10-29 15:56:50 -07:00
Girish Ramakrishnan
7a25187bee
Disable invite & password reset route for external users
2019-10-29 11:03:28 -07:00
Girish Ramakrishnan
f97cbb5fd5
Use private registry auth
2019-10-27 13:07:07 -07:00
Girish Ramakrishnan
12d233c5f9
provide suggestion as part of the error
2019-10-27 12:01:30 -07:00
Girish Ramakrishnan
09fce1978e
Add to changes
2019-10-25 17:06:16 -07:00
Girish Ramakrishnan
8ed2f98d1d
print username field as well
2019-10-25 17:00:59 -07:00
Girish Ramakrishnan
13262d014b
call unbind
2019-10-25 16:58:15 -07:00
Girish Ramakrishnan
ade1187fc8
ldap: more logs
2019-10-25 16:46:55 -07:00
Girish Ramakrishnan
2404e79928
ldap: do the secret key dance
2019-10-25 16:46:49 -07:00
Girish Ramakrishnan
d68ed91b17
ldap: add usernameField
...
we need this for okta where uid is the email
2019-10-25 15:50:26 -07:00
Girish Ramakrishnan
1a21423401
ldap: add provider field
2019-10-25 15:40:22 -07:00
Girish Ramakrishnan
a478134759
mail: put the type and hostname in notification
2019-10-25 10:16:17 -07:00
Girish Ramakrishnan
c639746211
Update changes
2019-10-24 21:43:09 -07:00
Girish Ramakrishnan
7a96e4858a
Not found messages at the db level
2019-10-24 20:48:38 -07:00
Girish Ramakrishnan
02339d503c
do not re-generate DATABASE_ERROR
2019-10-24 20:31:45 -07:00
Girish Ramakrishnan
c3a5360a88
Add not implemented error code
2019-10-24 18:40:37 -07:00
Girish Ramakrishnan
ad9097d212
Remove various uses of INTERNAL_ERROR
...
INTERNAL_ERROR now means there really was some internal error
2019-10-24 18:32:36 -07:00
Girish Ramakrishnan
6e57f8cc03
Refactor toHttpError code into BoxError
2019-10-24 18:09:55 -07:00
Girish Ramakrishnan
d6365ff27f
Move AppstoreError to BoxError
2019-10-24 17:47:16 -07:00
Girish Ramakrishnan
4793eb9ef5
Finish UsersError removal
2019-10-24 15:19:07 -07:00
Girish Ramakrishnan
03175aa8de
IN_USE -> CONFLICT
...
also, remove databaseerror
2019-10-24 15:07:37 -07:00
Girish Ramakrishnan
bc3169deb3
Move UsersError to BoxError
2019-10-24 15:06:41 -07:00
Girish Ramakrishnan
9b4d43075e
Fix some typos
2019-10-24 14:34:10 -07:00
Girish Ramakrishnan
d2c12297dc
Move ExternalLdapError to BoxError
2019-10-24 14:32:27 -07:00
Girish Ramakrishnan
1a8496d61e
Move MailError to BoxError
2019-10-24 14:10:23 -07:00
Girish Ramakrishnan
a017af41c5
Start moving db code to use BoxError as well
2019-10-24 14:09:53 -07:00
Girish Ramakrishnan
ec216d9828
Add PLAN_LIMIT for now
...
Should remove this and make it something else
2019-10-24 11:05:36 -07:00
Girish Ramakrishnan
bce1efb77c
Move AppsError to BoxError
2019-10-24 10:39:47 -07:00
Girish Ramakrishnan
b078d37f37
Remove REVERSEPROXY_ERROR
2019-10-24 10:31:56 -07:00
Girish Ramakrishnan
8d944f74c0
Make reverseProxy return BoxError consistently
2019-10-24 10:28:38 -07:00
Girish Ramakrishnan
dc10b8a07f
Move AddonsError to BoxError
2019-10-23 15:57:01 -07:00
Girish Ramakrishnan
7b9f741522
Move ProvisionError to BoxError
2019-10-23 15:45:09 -07:00
Girish Ramakrishnan
51cb3b0ba8
Move DomainsError to BoxError
2019-10-23 15:15:19 -07:00
Girish Ramakrishnan
4db4834c90
rename variable
2019-10-23 15:03:42 -07:00
Girish Ramakrishnan
e1f0d12251
Fix error handling
2019-10-23 09:53:46 -07:00
Girish Ramakrishnan
e2388b7d88
Move UpdaterError to BoxError
2019-10-23 09:39:26 -07:00
Girish Ramakrishnan
d0e6b6bfe4
Do not re-translate to DockerError
2019-10-23 09:30:05 -07:00
Girish Ramakrishnan
b6f2c94464
test registry config
2019-10-23 06:49:29 -07:00
Girish Ramakrishnan
8cdddef077
Add registry config to settings table
2019-10-22 22:56:25 -07:00
Girish Ramakrishnan
e82ac5ecc5
Ensure docker code returns BoxError
2019-10-22 21:46:32 -07:00
Girish Ramakrishnan
db6c07f86a
Move ReverseProxyError with BoxError
2019-10-22 21:24:31 -07:00
Girish Ramakrishnan
2df642000d
Move ClientsError to BoxError
2019-10-22 21:16:49 -07:00
Girish Ramakrishnan
11d80cec7d
Fix mailbox tests
2019-10-22 21:03:47 -07:00
Girish Ramakrishnan
8c9ce30d29
Move BackupsError to BoxError
2019-10-22 21:03:47 -07:00
Girish Ramakrishnan
df142994a8
Move TaskError into BoxError
2019-10-22 21:03:47 -07:00
Girish Ramakrishnan
2d115d3d0f
Move GroupsError to BoxError
2019-10-22 16:34:17 -07:00
Girish Ramakrishnan
1b594d3e50
Remove unused GroupsError
2019-10-22 16:26:38 -07:00
Girish Ramakrishnan
332f2e7c10
Move SysInfoError to BoxError
2019-10-22 14:09:44 -07:00
Girish Ramakrishnan
a7614cef2e
Move CloudronError to BoxError
2019-10-22 14:06:19 -07:00
Girish Ramakrishnan
9842b6d4a1
Move EventLogError to BoxError
2019-10-22 13:59:01 -07:00
Girish Ramakrishnan
88818a1ec2
Move NotificationsError to BoxError
2019-10-22 13:00:10 -07:00
Girish Ramakrishnan
812f5cce99
Move DisksError to BoxError
2019-10-22 11:11:41 -07:00
Girish Ramakrishnan
fdf7da9111
Move SupportError to BoxError
2019-10-22 11:08:19 -07:00
Girish Ramakrishnan
ed9e1772ea
move SettingsError to BoxError
2019-10-22 11:06:14 -07:00
Girish Ramakrishnan
657a2cac2f
Add pagination to mailbox listing
2019-10-22 10:12:06 -07:00
Girish Ramakrishnan
d15aa2744d
Fix return code if start.sh is bad
2019-10-20 13:35:19 -07:00
Girish Ramakrishnan
29ab3e91b3
gcs: remove concurrency logic
...
this is more complicated than necessary
2019-10-18 18:54:25 -07:00
Girish Ramakrishnan
f6377fd1c6
Add email_error type
2019-10-15 11:48:20 -07:00
Girish Ramakrishnan
122a987d61
4.3 changes
2019-10-15 11:40:36 -07:00
Girish Ramakrishnan
4610e78d91
Add altEmail to support ticket (when mail is down)
2019-10-15 11:39:44 -07:00
Girish Ramakrishnan
351bd46cb7
Make external backup restore a separate route (import)
...
fixes #650
2019-10-15 09:20:29 -07:00
Girish Ramakrishnan
8878bc4bf9
frameAncestors -> csp
...
It seems we cannot separate frame ancestors from CSP because the hide
header just hides everything and not a specific resource. This means
that the user has to set or unset the full policy whole sale.
2019-10-14 17:12:01 -07:00
Girish Ramakrishnan
61b6bee946
Remove unused variable
2019-10-14 16:07:45 -07:00
Girish Ramakrishnan
9997cbddb8
Do not escape as html
2019-10-14 16:03:57 -07:00
Girish Ramakrishnan
7115498f32
Send reverseProxyConfig in REST response
2019-10-14 15:57:41 -07:00
Girish Ramakrishnan
0f05c243aa
Remove redundant type checking validation
2019-10-14 15:18:21 -07:00
Girish Ramakrishnan
9c12f1fe15
Add field to configure the reverse proxy
...
part of #596
2019-10-14 15:05:25 -07:00
Girish Ramakrishnan
7383cc4e90
email: Auto-subscribe to Spam folder
2019-10-14 14:31:39 -07:00
Girish Ramakrishnan
6466b47ada
4.3 changes
2019-10-14 14:16:43 -07:00
Girish Ramakrishnan
1856fc05d9
Add timeout for apptask as well
2019-10-14 14:16:15 -07:00
Girish Ramakrishnan
a19662bdfa
Add a timeout for update as well
...
this will send a notification if an update gets stuck
2019-10-14 13:05:12 -07:00
Girish Ramakrishnan
488763fc42
rename appconfig to nginxconfig
2019-10-13 17:08:33 -07:00
Girish Ramakrishnan
7cbe60a484
Fix crash when only udp ports are defined
2019-10-11 20:39:03 -07:00
Girish Ramakrishnan
ded9a6e377
Revert "remove unused function"
...
This reverts commit a19205e3ad .
2019-10-11 20:30:30 -07:00
Girish Ramakrishnan
ea205363a0
More 4.2.7 changes
2019-10-11 20:23:33 -07:00
Girish Ramakrishnan
ad13445c93
Revert "apptask: backupId/format is not part of install anymore"
...
This reverts commit 49e5c60422 .
2019-10-11 20:21:48 -07:00
Girish Ramakrishnan
eb5c2ed30b
notify failed backups
...
fixes #649
2019-10-11 19:54:15 -07:00
Girish Ramakrishnan
bd3080a6b3
lint
2019-10-11 19:54:15 -07:00
Girish Ramakrishnan
be5290c5ca
Add error code for timeout
2019-10-11 19:54:15 -07:00
Girish Ramakrishnan
43fd207164
Kill backup task after 12 hours
...
this will automatically notify by email
part of #649
2019-10-11 19:13:39 -07:00
Girish Ramakrishnan
34c53694a0
Add timeout option when starting task
...
Part of #649
2019-10-11 19:13:39 -07:00
Girish Ramakrishnan
927f8483ce
4.2.7 changes
2019-10-11 18:43:39 -07:00
Girish Ramakrishnan
a19205e3ad
remove unused function
2019-10-07 22:10:02 -07:00
Girish Ramakrishnan
49e5c60422
apptask: backupId/format is not part of install anymore
2019-10-07 15:29:18 -07:00
Girish Ramakrishnan
57b623ee44
Fix install with backupId
2019-10-07 15:01:00 -07:00
Girish Ramakrishnan
0c904af927
tpyo
2019-10-03 15:25:52 -07:00
Girish Ramakrishnan
9cd025972c
Try acme flow 3 times
2019-10-03 14:47:18 -07:00
Girish Ramakrishnan
21111eccc4
retry downloadCertificate
2019-10-03 14:37:12 -07:00
Girish Ramakrishnan
917079f341
Add error message to network error
2019-10-03 14:33:49 -07:00
Girish Ramakrishnan
4d6d768be1
Append apptask logs
2019-10-03 12:20:15 -07:00
Girish Ramakrishnan
c54cd992ca
Validate the location passed in repair route
2019-10-03 12:08:05 -07:00
Girish Ramakrishnan
d5ec599dd1
repair can always be called
...
this is because sometimes cloudron thinks there is no error, but there is
2019-10-03 11:30:00 -07:00
Girish Ramakrishnan
0542ab16d4
If cert renewal failed, continue using old cert
2019-10-03 11:11:02 -07:00
Girish Ramakrishnan
7e75ef7685
cert: add more debugs
2019-10-03 10:36:57 -07:00
Johannes Zellner
f296265461
Add changes
2019-10-03 16:31:01 +02:00
Johannes Zellner
fb4eade215
Location in configure route may be an empty string
2019-10-03 16:23:01 +02:00
Johannes Zellner
8b3e85907c
Add 4.2.5 changes
2019-10-02 18:41:42 +02:00
Johannes Zellner
ca4876649d
The demo setting didn't go well
2019-10-02 18:39:06 +02:00
Johannes Zellner
7ebc2abe5d
Add 4.2.4 changes
2019-10-02 14:15:46 +02:00
Johannes Zellner
37e132319b
Ensure demo setting is '' or 'enabled'
2019-10-02 12:58:32 +02:00
Johannes Zellner
b2728118e9
Remove unused require
2019-10-02 12:13:18 +02:00
Girish Ramakrishnan
c428f649aa
typo
2019-10-01 14:40:24 -07:00
Girish Ramakrishnan
7baf979a59
Fix verbose logs
2019-10-01 14:39:40 -07:00
Girish Ramakrishnan
ccecaca047
Fix crash
2019-10-01 14:04:39 -07:00
Girish Ramakrishnan
c7ee684f25
Fix bug where nginx was not reloaded on cert renewal
...
Looks like it worked so far because nginx got reloaded in situations
like apptask or server reboot.
2019-10-01 11:25:57 -07:00
Girish Ramakrishnan
52156c9a35
Remove unused type field
2019-10-01 11:17:12 -07:00
Girish Ramakrishnan
4fba216af9
scaleway: try to keep part numbers low
2019-09-30 20:42:37 -07:00
Girish Ramakrishnan
1d00c788d1
Remove dead code
2019-09-30 15:54:18 -07:00
Girish Ramakrishnan
d891d39587
reverseproxy: rename to writeDefaultConfig
2019-09-30 15:28:05 -07:00
Girish Ramakrishnan
cfde6e31ad
reverseproxy: improve the note
2019-09-30 15:25:53 -07:00
Girish Ramakrishnan
243772d1f5
reverseproxy: do not export reload
2019-09-30 15:23:53 -07:00
Girish Ramakrishnan
1c36b8eaf7
Add debugs
2019-09-30 11:52:23 -07:00
Girish Ramakrishnan
120fa4924a
Remove confusing isInstalling usage
2019-09-30 09:58:13 -07:00
Girish Ramakrishnan
c3c9c2f39a
Always pass restoreConfig for the restore case
2019-09-30 09:47:14 -07:00
Girish Ramakrishnan
fc90829ba2
repair: Use backupId only if passed in via REST API
2019-09-30 09:13:13 -07:00
Girish Ramakrishnan
ce9224c690
Set the domain and subdomain in details
2019-09-27 14:42:18 -07:00
Girish Ramakrishnan
18a2107247
Attach fqdn information consistently in the eventlog
2019-09-27 11:50:22 -07:00
Girish Ramakrishnan
f13d05dad7
Update changes
2019-09-27 11:09:50 -07:00
Girish Ramakrishnan
86586444a9
Validate alternate domain
...
this also sets up fqdn in the eventlog entries
2019-09-27 10:58:59 -07:00
Girish Ramakrishnan
4e47d0595d
Remove ACTION_BACKUP_CLEANUP_START
2019-09-27 09:43:40 -07:00
Girish Ramakrishnan
45e85e4d53
Set overwriteDns to be true when re-configuring
2019-09-26 22:30:58 -07:00
Girish Ramakrishnan
a3420f885d
Fix use of skipBackup
...
also, store it in the eventlog
2019-09-26 20:18:49 -07:00
Girish Ramakrishnan
a266fe13d0
Remove skipNotification flag
...
we always want a update finish eventlog. Otherwise, the eventlog seems
strange since it says 'started updated' but didn't finish
2019-09-26 20:06:14 -07:00
Girish Ramakrishnan
44aba5d6e1
Add changes
2019-09-26 15:00:00 -07:00
Girish Ramakrishnan
3fe5307ae3
Migrate PROVIDER from cloudron.conf correctly
2019-09-26 14:19:25 -07:00
Girish Ramakrishnan
d03fb0e71f
Add separate flags for skipping backup and notification
2019-09-26 13:06:15 -07:00
Girish Ramakrishnan
d9723b72e4
Replace Acme2Error with BoxError
2019-09-25 14:13:10 -07:00
Girish Ramakrishnan
6ba61f1bda
Update changes
2019-09-25 10:30:54 -07:00
Girish Ramakrishnan
d1df647ddd
Another migration typo
2019-09-25 10:22:43 -07:00
Girish Ramakrishnan
95c4a1f90c
Handle db migration failure
2019-09-25 10:17:02 -07:00
Girish Ramakrishnan
e00325e694
typo
2019-09-25 10:06:48 -07:00
Girish Ramakrishnan
85c13cae58
Fix platform update logic
2019-09-24 21:21:49 -07:00
Girish Ramakrishnan
00fd9e5b7f
add note that db upgrade code path is br0ken
2019-09-24 20:05:55 -07:00
Girish Ramakrishnan
dde81ee847
lint
2019-09-24 19:50:24 -07:00
Girish Ramakrishnan
c46fc96500
stash the taskId instead of args
2019-09-24 13:06:13 -07:00
Girish Ramakrishnan
1914a9a703
Capitalize the Denied to be in sync with boxerror
2019-09-24 00:58:49 -07:00
Girish Ramakrishnan
1a061e4446
Only check installationState to resume tasks
...
also, make resumeTasks go via app logic to capture end of task
2019-09-24 00:37:29 -07:00
Girish Ramakrishnan
29ce80cebe
Use DOCKER_ERROR for docker errors
2019-09-23 23:27:32 -07:00
Girish Ramakrishnan
4b6ac538ac
clear the timeout just to be safe
2019-09-23 18:17:05 -07:00
Girish Ramakrishnan
70b9000b0e
Fix various app state issues
...
Tasks initiated by repair/uninstall can run from any state
Clear taskId for failed uninstall
Clone/install can only be run on new entries
2019-09-23 18:07:12 -07:00
Girish Ramakrishnan
24dcb1b79c
typo
2019-09-23 15:31:09 -07:00
Johannes Zellner
384915883f
Add namecheap token error changes
2019-09-23 23:49:43 +02:00
Johannes Zellner
4cfc75f1d1
Handle namecheap ACCESS_DENIED
2019-09-23 23:35:29 +02:00
Girish Ramakrishnan
c49cbb524d
Design the route for pre-flight
2019-09-23 14:34:29 -07:00
Girish Ramakrishnan
b401c3d930
Make schedule task take the command as arg
2019-09-23 14:18:14 -07:00
Girish Ramakrishnan
890a7cfb37
runState is not used for task anymore
2019-09-23 13:49:38 -07:00
Girish Ramakrishnan
70a1ef1af3
Can call uninstall as long as no task is active
2019-09-23 13:32:52 -07:00
Girish Ramakrishnan
38a0cdc0be
Make the repair re-issue the install command
...
Otherwise, repairing a repair has to be handled
2019-09-23 13:21:25 -07:00
Girish Ramakrishnan
93344a5a4a
Use 424 for access denied
2019-09-23 13:10:16 -07:00
Girish Ramakrishnan
9f792fc04b
Remove DockerError
2019-09-23 12:20:25 -07:00
Girish Ramakrishnan
7cb95faacb
typo
2019-09-23 10:49:50 -07:00
Girish Ramakrishnan
bf122f0f56
Allow uninstall in error state
2019-09-23 10:40:22 -07:00
Girish Ramakrishnan
78e9446a05
Refactor repair into separate function
2019-09-23 10:15:58 -07:00
Girish Ramakrishnan
138e1595fa
make legacy error messages as JSON
2019-09-23 09:13:43 -07:00
Johannes Zellner
37b02ad36a
oldConfig is only used for location configure now
2019-09-23 16:24:18 +02:00
Johannes Zellner
02f0055594
On repair oldConfig might not come as an argument
2019-09-23 16:18:44 +02:00
Girish Ramakrishnan
ec1f0f9320
Do not do dataDir move in configure
2019-09-23 07:15:36 -07:00
Girish Ramakrishnan
bfe6389f62
oldConfig is optional in configure
2019-09-23 07:13:51 -07:00
Johannes Zellner
30db3e8973
Fix typo in sql query
2019-09-23 15:01:20 +02:00
Johannes Zellner
5b67f2cf29
Add apt packages required for samba mounts
...
The linux-generic package is anyways important for ensuring extra
modules will be rebuilt during updates.
2019-09-23 12:21:37 +02:00
Girish Ramakrishnan
a007b74b1c
Do no reparse null
2019-09-22 23:08:07 -07:00
Girish Ramakrishnan
a89482d4fa
Send the error as a task argument
...
Note that if apptask dies, we will automatically restart the repair
task with the args.
2019-09-22 22:50:35 -07:00
Girish Ramakrishnan
0cd4f133aa
Do not configure/restore errored apps automatically
2019-09-22 22:44:28 -07:00
Girish Ramakrishnan
e5ba4ff973
Handle legacy app error message
...
For apps in errored state, from a previous version of Cloudron
2019-09-22 22:25:34 -07:00
Girish Ramakrishnan
ce133b997d
Make runState non-nullable
2019-09-22 22:07:47 -07:00
Girish Ramakrishnan
217632354f
Allow repair in non-errored state
2019-09-22 21:56:07 -07:00
Girish Ramakrishnan
9841351190
Call configure for all the non-reinstall states
2019-09-22 09:38:36 -07:00
Girish Ramakrishnan
f3341f4b7f
Make start/stop just a installation code
...
the runState now just tracks if an app is stopped.
2019-09-22 01:01:52 -07:00
Girish Ramakrishnan
ff1f448860
Fixup repair route
...
* Do not allow scheduling tasks in error state
* Only repair is allowed in error state
* Use the error object to track what to 'repair' (like the lastState)
* If uninstall failed, repair will do uninstall
* If move dir failed, repair will do move dir
2019-09-22 00:04:25 -07:00
Girish Ramakrishnan
37f28746fc
Do not setup logrotate & collectd in update
2019-09-20 20:10:52 -07:00
Girish Ramakrishnan
9a22ba3af7
Add repair route
...
this is specifically for the case where some task failed and user
wants to get it back.
2019-09-19 23:13:44 -07:00
Girish Ramakrishnan
2942da78de
Add TASK_ERROR reason code
2019-09-19 23:13:13 -07:00
Girish Ramakrishnan
89ff6be971
Make domain a field
2019-09-19 22:45:44 -07:00
Girish Ramakrishnan
be0d7bcce1
Typo
2019-09-19 22:30:51 -07:00
Johannes Zellner
851b257678
Fix typo
2019-09-20 02:05:19 +02:00
Girish Ramakrishnan
579eacb644
Better pending state check
2019-09-19 16:42:49 -07:00
Girish Ramakrishnan
f52c5b584e
Fix crash when resuming stopped apps
2019-09-19 16:40:38 -07:00
Girish Ramakrishnan
8980c18deb
Send back error when access denied
2019-09-19 15:24:21 -07:00
Girish Ramakrishnan
b05a9ce064
Add API to get dns record
2019-09-19 15:10:27 -07:00
Girish Ramakrishnan
1974314c1f
Add changes
2019-09-18 09:12:25 -07:00
Johannes Zellner
2bde023d4d
Use a file based session store
...
This prevents login sessions to be lost after a box restart
2019-09-18 13:00:03 +02:00
Girish Ramakrishnan
3a10003246
libssl1 asking for restart prompt during install
...
https://unix.stackexchange.com/questions/146283/how-to-prevent-prompt-that-ask-to-restart-services-when-installing-libpq-dev
https://github.com/confluentinc/castle/pull/1
https://bugs.launchpad.net/ubuntu/+source/ansible/+bug/1833013
2019-09-17 14:43:11 -07:00
Girish Ramakrishnan
1b08710b7e
Update haraka
2019-09-16 14:44:57 -07:00
Girish Ramakrishnan
101d09eeb3
Typo in event log
2019-09-16 13:01:35 -07:00
Girish Ramakrishnan
00f949f156
Add overwriteDns arg to install & clone
...
this is useful in e2e
2019-09-16 09:31:34 -07:00
Girish Ramakrishnan
adbe46d369
print all the domains being registered
2019-09-16 09:22:43 -07:00
Girish Ramakrishnan
3198926cd6
return null for default dataDir
2019-09-15 22:06:03 -07:00
Girish Ramakrishnan
957a6a20fe
mail: fix sieve + mail relay
2019-09-13 17:01:36 -07:00
Girish Ramakrishnan
94f75bb0d7
Update mail container for queue rework
2019-09-13 14:39:48 -07:00
Girish Ramakrishnan
0f442755e5
mail: add SRS support for mail forwarding
...
Fixes #637
2019-09-13 10:22:49 -07:00
Girish Ramakrishnan
cd2e782d48
Make mail tests work
2019-09-12 13:59:31 -07:00
Girish Ramakrishnan
e97606ca87
Remove internal sysadmin server
...
this is now unused
2019-09-12 13:33:01 -07:00
Girish Ramakrishnan
00ada80230
Add mail container changes
2019-09-11 15:03:57 -07:00
Girish Ramakrishnan
34db98c489
validate email in addList
2019-09-11 14:36:10 -07:00
Girish Ramakrishnan
110695355c
Make mailing list members fully qualified
...
Part of #637
2019-09-11 12:51:57 -07:00
Girish Ramakrishnan
021fb4bb94
Add skysilk provider
2019-09-11 09:14:04 -07:00
Girish Ramakrishnan
dea033e4b0
Fix comment
2019-09-10 15:43:16 -07:00
Girish Ramakrishnan
7dfe40739e
Remove apps.getAppConfig
2019-09-10 15:41:35 -07:00
Girish Ramakrishnan
9f0d1b515c
Add param to overwrite DNS
2019-09-10 15:41:32 -07:00
Girish Ramakrishnan
2691d46d50
migrate: only pass the old data dir
2019-09-10 15:15:20 -07:00
Girish Ramakrishnan
78c8f1de71
Add specific installation states to help out UI
2019-09-10 14:25:12 -07:00
Girish Ramakrishnan
d27ee4bfbc
More changes
2019-09-10 14:20:16 -07:00
Girish Ramakrishnan
cc5daa428d
Fix location change event log
2019-09-10 13:57:58 -07:00
Girish Ramakrishnan
3e2189aeed
Remove obsolete configure route
2019-09-09 22:08:08 -07:00
Girish Ramakrishnan
79f9963792
Add robotsTxt tests
2019-09-09 21:52:01 -07:00
Girish Ramakrishnan
6f53723169
test data dir migration
2019-09-09 21:25:39 -07:00
Girish Ramakrishnan
d8cb100fc0
Add mailbox test
2019-09-09 16:34:48 -07:00
Girish Ramakrishnan
5f9b2f1159
Add env and debug mode tests
2019-09-09 15:46:29 -07:00
Girish Ramakrishnan
801ca7eda1
Break down the configure route
2019-09-09 14:35:52 -07:00
Girish Ramakrishnan
45a2d3745c
Fix app eventlog
2019-09-06 14:47:44 -07:00
Girish Ramakrishnan
551fe4d846
Use BoxError everywhere in apptask
2019-09-06 11:33:24 -07:00
Girish Ramakrishnan
791981c2f2
trim the provider
2019-09-06 10:24:19 -07:00
Girish Ramakrishnan
a18a620847
Add BoxError.toPlainObject
2019-09-05 21:11:38 -07:00
Girish Ramakrishnan
99e63ffc3f
Use BoxError for apptask errors
2019-09-05 18:13:53 -07:00
Girish Ramakrishnan
e10a6d9de5
Bump graphite for buffer size fix
2019-09-05 14:33:32 -07:00
Girish Ramakrishnan
147f16571a
Handle error in graphs code
2019-09-05 14:30:21 -07:00
Girish Ramakrishnan
bd1fbc4a05
typo
2019-09-05 11:42:32 -07:00
Girish Ramakrishnan
0843f78ec8
Add tasks.setCompleted
...
this lets us easily grep the code on where the task is completed
2019-09-05 11:29:48 -07:00
Girish Ramakrishnan
9769fbfcf2
Better message
2019-09-05 11:22:29 -07:00
Girish Ramakrishnan
7e73197eb9
Trigger re-configure of apps for collectd config
2019-09-05 09:24:37 -07:00
Girish Ramakrishnan
e3964fd710
Fix crash in setUpdateSuccess
2019-09-04 16:11:59 -07:00
Girish Ramakrishnan
e66961b814
merge registerSubdomains and registerAlternateDomains
...
also, merge unregisterSubdomain and unregisterAlternateDomains
also, fix crash where app.oldConfig is used
2019-09-03 19:55:41 -07:00
Girish Ramakrishnan
4176e5a98e
Add note in schema
2019-09-03 19:04:12 -07:00
Girish Ramakrishnan
45cf8a62d1
remove obsolete comment
2019-09-03 18:52:37 -07:00
Girish Ramakrishnan
b1380819ba
debug taskId
2019-09-03 16:06:28 -07:00
Girish Ramakrishnan
57fa457596
Typo in error handling
2019-09-03 15:55:57 -07:00
Girish Ramakrishnan
de1e218ce9
Return BAD_FIELD if dataDir conflicts
2019-09-03 15:17:48 -07:00
Girish Ramakrishnan
e117ee2bef
Cleanup app error codes
...
1. The error classes (like AppsError) now take a 3rd argument details.
We can attach anything in this 3rd argument and this gets sent in the
REST response as well.
2. The HttpError class is now HttpError(statusCode, errorOrMessage). If
it's an error object, it will take the message and other things which
were attached above from it and send them across. Previously, we used to
mark this case an internal error all the time.
3. AppsError only has generic codes now. The UI code then simply checks
for additional information that we attached to show errors. For example,
BAD_FIELD will have a field: 'xx' indicating which field is at fault.
ALREADY_EXISTS has information on which domain or port caused a problem.
The advantage here is we can drop all these error codes that are
specific to each model code.
4. Maybe some day, we can remove all these error classes and have only
one generic class. AppsError right now is pretty generic already. We can
use that error code everywhere... No need to translate errors also
everywhere.
5. Finally, in the router code, I have this function toHttpError (in
apps.js) which is also so much cleaner than what we have now. We keep
writing the same stuff over and over.
2019-09-03 10:39:02 -07:00
Girish Ramakrishnan
a9e101d9f4
Add note on why it is BAD_STATE
2019-09-02 13:55:43 -07:00
Girish Ramakrishnan
a2f8203a42
Add location conflict error code
2019-09-02 12:42:28 -07:00
Girish Ramakrishnan
b9ee127775
Send detail in apps error
2019-09-02 12:41:32 -07:00
Girish Ramakrishnan
6668bb3e8a
Handle BAD_STATE as well
2019-09-02 12:17:48 -07:00
Girish Ramakrishnan
5fd129e509
send reason code as part of details
2019-09-01 21:22:46 -07:00
Girish Ramakrishnan
d59c1f53b9
apps: add detail to http error messages
2019-09-01 18:35:06 -07:00
Girish Ramakrishnan
d2f38c1abc
Remove unused error code
2019-09-01 17:39:07 -07:00
Girish Ramakrishnan
c0a1db6941
Send details as part of AppsError
...
the last mile module has been updated to pipe through additional properties.
2019-09-01 13:42:25 -07:00
Girish Ramakrishnan
fc10b4a79b
Update lastmile
2019-09-01 13:34:40 -07:00
Girish Ramakrishnan
9da2117e99
Re-enable configure/restore test
2019-08-30 16:12:35 -07:00
Girish Ramakrishnan
7e030b149b
More changes
2019-08-30 15:51:50 -07:00
Girish Ramakrishnan
bd23abd265
tasks: make error a json
...
also, handle case where we never got to handle task exit cleanly
2019-08-30 14:49:45 -07:00
Girish Ramakrishnan
dd0fb8292c
Move state enums to the model code
2019-08-30 13:21:51 -07:00
Girish Ramakrishnan
b4cbf63519
Remove installationState contraint when settings health
2019-08-30 12:57:59 -07:00
Girish Ramakrishnan
4fd04fa349
Add proper error codes
2019-08-30 12:42:38 -07:00
Girish Ramakrishnan
c22cdb8d81
Return error object in the API
2019-08-30 11:34:04 -07:00
Johannes Zellner
eb963b2eb4
Add externalldap pagination
2019-08-30 20:26:09 +02:00
Girish Ramakrishnan
7d299908c9
Fix tests
2019-08-30 10:49:43 -07:00
Girish Ramakrishnan
2585282f86
errorMessage -> errorJson
2019-08-30 10:02:24 -07:00
Johannes Zellner
f25d5b3304
Deliver the user account source in the profile api
2019-08-30 13:36:37 +02:00
Johannes Zellner
6e878faa8b
Also sync fallbackEmail from ldap
2019-08-30 13:10:49 +02:00
Johannes Zellner
15a6cbe62b
Make sure all password change input fields use the same validation pattern
2019-08-30 12:14:32 +02:00
Johannes Zellner
76b0b214ec
Do not sync non-ldap users from ldap if usernames match
...
We might want to make that option in the future depending on use-cases
2019-08-30 10:20:04 +02:00
Johannes Zellner
f5c643c960
Add some debugging logs when users are created or updated
2019-08-30 10:20:04 +02:00
Johannes Zellner
ca8e0613fb
Skip notifications for ldap syncer events
2019-08-30 10:20:04 +02:00
Johannes Zellner
0c9334d0d2
Ensure we wait for all user sync db actions to finish
2019-08-30 10:20:04 +02:00
Johannes Zellner
712dc97e9b
Move the basic ldap argument validation
2019-08-30 10:20:04 +02:00
Johannes Zellner
4df48c97ec
Ignore the bindDn user in the syncer
2019-08-30 10:20:04 +02:00
Johannes Zellner
fe3ea53cda
Ldap usually uses cn as displayName
2019-08-30 10:20:04 +02:00
Johannes Zellner
d385c80882
Use external ldap bind for users from ldap source
2019-08-30 10:20:04 +02:00
Johannes Zellner
b823213c94
Create and update users from external ldap
2019-08-30 10:20:04 +02:00
Johannes Zellner
4b86311ab9
Add user source property to schema
2019-08-30 10:20:04 +02:00
Johannes Zellner
b9efa8f445
Use tasks api for external ldap syncer
2019-08-30 10:20:04 +02:00
Johannes Zellner
f8db12346d
Perform some basic static input validation for external ldap
2019-08-30 10:20:04 +02:00
Johannes Zellner
4d3948f81f
Improve external ldap error reporting
2019-08-30 10:20:04 +02:00
Johannes Zellner
5431d50206
Also check errors when no bindDn is provided
2019-08-30 10:20:04 +02:00
Johannes Zellner
6db078c26a
Handle externalldap errors correctly in settings route
2019-08-30 10:20:04 +02:00
Johannes Zellner
f61e9c7f27
Catch basic protocol errors
2019-08-30 10:20:04 +02:00
Johannes Zellner
567d92ce00
Add external ldap enabled boolean flag
2019-08-30 10:20:04 +02:00
Johannes Zellner
7a6d26c5da
Add settings route handler for external ldap configs
2019-08-30 10:20:04 +02:00
Johannes Zellner
046ac85177
Add initial externalldap code to validate ldap configs
2019-08-30 10:20:04 +02:00
Girish Ramakrishnan
f0fd088247
Pick values from updateConfig
2019-08-29 20:50:45 -07:00
Girish Ramakrishnan
5ec0d1e691
Add to changes
2019-08-29 15:10:55 -07:00
Girish Ramakrishnan
9391a934c3
Do not update on uninstall
2019-08-29 14:38:42 -07:00
Girish Ramakrishnan
bb62e6a318
clear taskId in the parent process
2019-08-29 13:43:45 -07:00
Girish Ramakrishnan
0da6539c48
Add progressCallback to run commands
2019-08-29 13:41:11 -07:00
Girish Ramakrishnan
9cf833dab2
Use taskId instead of states to check bad state
...
a) this is because, we have install state and run state.
b) we have to put taskId as part of the transaction to prevent race
2019-08-29 13:15:40 -07:00
Girish Ramakrishnan
ed57260fcf
add note on why it is a state
2019-08-29 11:07:19 -07:00
Girish Ramakrishnan
c98f625c4c
Make force update as task arg
2019-08-29 10:59:05 -07:00
Girish Ramakrishnan
f3008064e4
Fix installation states
...
App operations can only be done in 'installed' or 'error' state.
If some other operation is in progress, you have to cancel it first.
This guarantees that the old app command got killed.
2019-08-29 10:14:23 -07:00
Girish Ramakrishnan
1faee00764
Better progress text when waiting for other tasks
...
Fixes #630
2019-08-28 22:13:50 -07:00
Girish Ramakrishnan
a40505e2ee
Remove pause flag, we already have platform lock
2019-08-28 22:13:50 -07:00
Girish Ramakrishnan
484202b4c6
better variable name
2019-08-28 21:31:42 -07:00
Girish Ramakrishnan
6a7fc17c60
Make restore/configure use scheduleTask
2019-08-28 15:36:50 -07:00
Girish Ramakrishnan
05d3897ae2
Make apps test work again
2019-08-28 15:30:23 -07:00
Girish Ramakrishnan
9f1210202a
port taskmanager to use tasks
2019-08-28 15:17:53 -07:00
Girish Ramakrishnan
be6b172d6f
Remove app task eventlog
2019-08-28 13:24:05 -07:00
Girish Ramakrishnan
fef9e0a5c1
Handle app task crashes
2019-08-28 13:19:47 -07:00
Girish Ramakrishnan
b84b033bf3
typo
2019-08-28 12:51:00 -07:00
Girish Ramakrishnan
b30ff1f55a
rework task API to be two-phase
...
this lets us avoid this EE based API. we now add and then start
explicitly.
2019-08-28 10:39:40 -07:00
Girish Ramakrishnan
c6be0b290b
updateConfig is no more
2019-08-27 22:03:43 -07:00
Girish Ramakrishnan
33cfd7a629
Add 'success' virtual field to the tasks
2019-08-27 21:36:52 -07:00
Girish Ramakrishnan
5952a5c69d
Send taskId in the response
2019-08-27 21:35:40 -07:00
Girish Ramakrishnan
20de563925
rename installationProgress to errorMessage
2019-08-27 20:08:35 -07:00
Girish Ramakrishnan
7da80b4c62
Ensure log directory
2019-08-27 16:36:19 -07:00
Girish Ramakrishnan
15d765be6d
Comment out couple of tests
2019-08-27 16:36:19 -07:00
Girish Ramakrishnan
bfe2f116a7
Make restoreConfigJson, oldConfigJson, updateConfigJson as task args
2019-08-27 16:36:15 -07:00
Girish Ramakrishnan
f535b3de2f
Add logFile option to startTask
2019-08-27 15:26:26 -07:00
Girish Ramakrishnan
e560c18b57
apptask is not a separate process anymore
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
aecb99b6a3
Use task API in run commands
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
7da17f8190
Use task API in app backup
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
1964270a4f
Use task API in app update
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
f45b61d95c
Use task API for app restore
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
ff11c38169
Use task API for app clone
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
3e67067431
Use task API for app uninstall
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
824f00d1e8
Use task API for app configure
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
96d19f59a4
Use task API for app install
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
42c6fe50d2
Make progressCallback take an optional callback
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
9242f7095a
Migrate apptask to use tasks framework
2019-08-27 12:31:59 -07:00
Girish Ramakrishnan
99c9fbc38f
add taskId to appdb
2019-08-27 12:31:55 -07:00
Girish Ramakrishnan
0d31207ad7
add taskId to tasks table
2019-08-26 14:27:29 -07:00
Girish Ramakrishnan
8af7dbc35a
group -> list
2019-08-23 16:36:19 -07:00
Johannes Zellner
d0a373cb15
Refresh dns records for dynamic dns setting every hour
...
Often home IPs change at the full hour, so we give it 5min to settle
2019-08-23 16:20:26 +02:00
Johannes Zellner
3dc87bbca8
Allow embedding pages from same origin
2019-08-22 11:37:54 +02:00
Girish Ramakrishnan
a55c399585
cloudron-support: Use the PROVIDER file
2019-08-21 21:23:22 -07:00
Girish Ramakrishnan
f74aa24dd2
cloudron-setup: make it work for old installs
...
need this for the auto-update test
2019-08-21 21:18:08 -07:00
Girish Ramakrishnan
1aa7eb4478
Collect and aggregate du information twice a day
2019-08-21 13:45:52 -07:00
Girish Ramakrishnan
0c7002ba59
settings.adminOrigin has to be loaded after setAdmin
...
the dangers of caching
2019-08-21 13:26:15 -07:00
Girish Ramakrishnan
fd6dd1ea18
Add timestamp to the logs
2019-08-21 10:16:57 -07:00
Girish Ramakrishnan
aa74d5cd82
Add a note
2019-08-20 19:47:24 -07:00
Girish Ramakrishnan
8fc10a0bdd
Add note
2019-08-20 15:26:00 -07:00
Girish Ramakrishnan
809ed0f0dc
clear db to stop the scheduler
2019-08-20 13:42:03 -07:00
Girish Ramakrishnan
b8a4e1c4a3
Use docker for apps-test
2019-08-20 13:34:18 -07:00
Girish Ramakrishnan
d9e45f732b
Fix error message
2019-08-20 13:22:43 -07:00
Girish Ramakrishnan
ca025b36f7
Define DockerError.EXTERNAL_ERROR
2019-08-20 13:11:06 -07:00
Girish Ramakrishnan
bfb719d35e
Remove use of dockerProxy
2019-08-20 11:50:54 -07:00
Girish Ramakrishnan
2a1b61107f
Make the ldap test work
2019-08-20 11:45:00 -07:00
Johannes Zellner
969cee7c90
Rebuilding docker container takes a long time, so callback early
...
Otherwise the service restart request will just time out in the
dashboard
2019-08-20 12:12:24 +02:00
Johannes Zellner
7a3f579d3e
Do not crash if a service without active docker container needs restart
2019-08-20 12:06:49 +02:00
Johannes Zellner
288d5efa88
Return DockerError instead of generic Error
2019-08-20 12:06:22 +02:00
Johannes Zellner
7be821963c
Ensure we report stopped status for addons without a running docker container
2019-08-20 11:27:35 +02:00
Girish Ramakrishnan
a236f8992a
graphite: Fixup healthcheck url
2019-08-19 22:27:53 -07:00
Girish Ramakrishnan
a5c2257f39
Update changelog
2019-08-19 19:10:30 -07:00
Girish Ramakrishnan
9d3b4ba816
store docker df output as well
2019-08-19 16:15:31 -07:00
Girish Ramakrishnan
43bf0767f1
remove docker proxy from tests
...
this is too complicated and also makes it hard to keep up with upstream API
2019-08-19 14:35:23 -07:00
Girish Ramakrishnan
b301e5b151
Add dockerDataDisk to disks response
2019-08-19 14:14:13 -07:00
Girish Ramakrishnan
2b484c0382
collect maildata size separately
2019-08-19 13:23:31 -07:00
Johannes Zellner
f40ab4e2d5
Use git+https for cloudron-io/df
2019-08-19 09:19:06 +02:00
Girish Ramakrishnan
c0a27380e9
Add to changes
2019-08-18 21:59:20 -07:00
Girish Ramakrishnan
0d7a3f43c4
Collect du information
2019-08-18 21:52:41 -07:00
Girish Ramakrishnan
8195e439f3
Return all disks
...
We now return the disk information per app as well
2019-08-16 10:29:56 -07:00
Johannes Zellner
b5edbf716c
Add interox provider option
2019-08-14 14:47:08 +02:00
Johannes Zellner
466265fde1
Allow iframe embedding of cloudron.io pages
2019-08-14 14:44:12 +02:00
Girish Ramakrishnan
40033e09cd
Check disk space before create app/box backups
...
Fixes #642
2019-08-13 10:55:02 -07:00
Johannes Zellner
573663412c
Add more fuzzy user search
...
Fixes #646
2019-08-13 15:23:26 +02:00
Johannes Zellner
17599417f7
WIP
2019-08-13 15:16:17 +02:00
Girish Ramakrishnan
0ece6d8b0e
Add dataDir to schema
2019-08-12 22:16:45 -07:00
Girish Ramakrishnan
e0ac0393fe
typo
2019-08-12 21:47:22 -07:00
Girish Ramakrishnan
6d38b3255c
Check available disk space before update
...
Part of #642
2019-08-12 21:09:22 -07:00
Girish Ramakrishnan
477ff424d6
Check if we have enough disk space for docker
...
Part of #642
2019-08-12 20:47:53 -07:00
Girish Ramakrishnan
a843104348
sftp: typo
2019-08-12 11:31:59 -07:00
Girish Ramakrishnan
0f4bc0981a
graphs: fix render forwarding
2019-08-12 11:01:12 -07:00
Girish Ramakrishnan
07f6351465
Make graphite dashboard appear again
2019-08-11 22:45:11 -07:00
Girish Ramakrishnan
1b26e86365
Fix test
2019-08-10 09:37:42 -07:00
Girish Ramakrishnan
94b4bf94c0
Merge active flag into update route
2019-08-08 08:17:08 -07:00
Girish Ramakrishnan
d5de05b633
Send user active flag
2019-08-08 07:19:50 -07:00
Girish Ramakrishnan
0ab6cad048
Add user enable/disable flag
2019-08-08 06:31:46 -07:00
Girish Ramakrishnan
9833ad548b
Better progress message
2019-08-07 06:23:28 -07:00
Girish Ramakrishnan
aa1ba3b226
Make apps-test pass
2019-08-06 10:27:19 -07:00
Girish Ramakrishnan
3774d4de28
Use API for pullImage
...
This allows to get proper error code
This mostly reverts commit 734286ba2e .
2019-08-06 09:46:09 -07:00
Girish Ramakrishnan
e4961726bc
Try to make apps-test work
2019-08-05 16:16:56 -07:00
Girish Ramakrishnan
77cf7d0da6
Bump test version
2019-08-05 06:39:16 -07:00
Girish Ramakrishnan
a993e0b228
Add fullstop
2019-08-04 15:35:42 -07:00
Girish Ramakrishnan
43671a9fd6
Clear update task progress after update
...
Fixes #635
2019-08-04 10:21:42 -07:00
Girish Ramakrishnan
49cfd1e9b7
Add notification for box update
...
Fixes #634
2019-08-04 05:44:04 -07:00
Girish Ramakrishnan
58d4a4f54f
quoting and fullstop
2019-08-03 10:36:38 -07:00
Girish Ramakrishnan
e4e328ba6a
Make user event titles better
2019-08-03 10:17:07 -07:00
Girish Ramakrishnan
fd6bc955ff
Remove extra line
2019-08-03 09:41:16 -07:00
Girish Ramakrishnan
511a18e0ed
Display app changelog and version
...
part of #634
2019-08-03 09:22:13 -07:00
Girish Ramakrishnan
e29d224a92
Be a bit more specific
2019-07-31 15:45:25 -07:00
Girish Ramakrishnan
bb48ffb01f
Fixup UA for easier detection (other than IP)
2019-07-31 15:43:15 -07:00
Girish Ramakrishnan
31fd3411f7
Add to changes
2019-07-30 15:41:03 -07:00
Girish Ramakrishnan
a737d2675e
Fix logrotation rules
...
* explicitly specify the dirs that are getting rotated
* app log rules are now moved to logrotate.ejs
* we keep task logs for a week
Some testing notes:
* touch -d "10 days ago" foo
* logrotate /etc/logrotate.conf -v to test rotation. there is a state
file created in /var/lib/logrotate/status. If we have a 'daily' rule,
it will get processed only after a log line in status exists and it's atleast
1 day old timestamp.
https://github.com/logrotate/logrotate/blob/master/logrotate.c is quite
readable
2019-07-30 15:37:15 -07:00
Girish Ramakrishnan
fd462659cd
tmp cleaner: only remove files and not directories
...
some apps like rocket.chat create directories in tmp and removing those
directories causes problems (for example, uploading)
2019-07-30 14:06:04 -07:00
Johannes Zellner
cb10d0d465
Add time4vps provider
2019-07-29 20:54:41 +02:00
Girish Ramakrishnan
61f1c4884c
Refactor logic so that settings.adminDomain is read in the closure
2019-07-27 19:21:49 -07:00
Girish Ramakrishnan
2cd00de6e3
initCache after every restore
2019-07-27 19:09:09 -07:00
Girish Ramakrishnan
d3c5d53eae
silence mysql warning
2019-07-26 22:35:44 -07:00
Girish Ramakrishnan
6dfafae342
move the comment
2019-07-26 22:19:14 -07:00
Girish Ramakrishnan
2f861c3309
specify the database
2019-07-26 22:12:40 -07:00
Girish Ramakrishnan
af388f0f16
IP based restore
2019-07-26 21:37:33 -07:00
Girish Ramakrishnan
c36cc86c5f
init cache in various out of process workers
2019-07-26 19:38:42 -07:00
Girish Ramakrishnan
02f195b25c
typo
2019-07-26 15:02:03 -07:00
Girish Ramakrishnan
18623fd9b7
cloudron.conf can be removed post migration
2019-07-26 14:55:36 -07:00
Girish Ramakrishnan
9b74bb73aa
config.js is dead, long live config.js
...
we use settings now
2019-07-26 14:51:51 -07:00
Girish Ramakrishnan
ee9636b496
move use of TEST and CLOUDRON to constants
2019-07-26 10:13:20 -07:00
Girish Ramakrishnan
5c2cbd7840
Move config.baseDir to paths
2019-07-26 10:07:08 -07:00
Girish Ramakrishnan
7fbac6cc17
typo
2019-07-26 08:44:37 -07:00
Girish Ramakrishnan
9e7e9d66bf
move provider into sysinfo
...
this is ideally "auto-detectable" runtime information
2019-07-26 07:33:22 -07:00
Girish Ramakrishnan
7fe66aa7fa
Remove unused settings.get
2019-07-25 16:31:02 -07:00
Girish Ramakrishnan
2dda0efe83
Move config.database to db code itself
2019-07-25 16:12:42 -07:00
Girish Ramakrishnan
59620ca473
config.get is dead
2019-07-25 16:08:54 -07:00
Girish Ramakrishnan
12eae1eff2
Make port a constant
2019-07-25 16:08:54 -07:00
Girish Ramakrishnan
b03bf87b7d
remove unused function
2019-07-25 16:08:54 -07:00
Girish Ramakrishnan
c32718b164
Make ldap and docker proxy port as constants
2019-07-25 16:08:54 -07:00
Girish Ramakrishnan
a6ea12fedc
Make internal smtp port a constant
2019-07-25 16:08:54 -07:00
Girish Ramakrishnan
2d260eb0d5
Make sysadminPort a constant
2019-07-25 16:08:51 -07:00
Girish Ramakrishnan
d7dd069ae0
Use constants.version instead of config.version
2019-07-25 15:02:14 -07:00
Girish Ramakrishnan
6a77a58489
Move hasIPv6 into sysinfo
2019-07-25 14:35:08 -07:00
Girish Ramakrishnan
c30ac5f927
Add setting key names
2019-07-25 14:35:04 -07:00
Girish Ramakrishnan
437f7ef890
Migrate cloudron.conf into db
2019-07-25 14:34:16 -07:00
Girish Ramakrishnan
1f7347e8de
Make custom.yml as part of the backup
2019-07-25 10:28:42 -07:00
Girish Ramakrishnan
96f59d7cfe
config: edition is long gone
2019-07-24 22:32:16 -07:00
Girish Ramakrishnan
d55f65c7c9
Better error message
2019-07-24 22:11:22 -07:00
Girish Ramakrishnan
9a0d5b918f
totp: set window to 2
...
see https://github.com/speakeasyjs/speakeasy#specifying-a-window-for-verifying-hotp-and-totp
A TOTP is incremented every step time-step seconds. By default, the time-step is
30 seconds. Window of 2 means, +- 2 steps.
Fixes #633
2019-07-23 14:45:54 -07:00
Girish Ramakrishnan
3553fbc7b6
Add wasabi storage backend
2019-07-22 16:44:56 -07:00
Girish Ramakrishnan
55d53f13d9
Improve error message
2019-07-18 10:28:37 -07:00
Johannes Zellner
27369a650c
Fix disk full docs link
2019-07-16 15:10:56 +02:00
Girish Ramakrishnan
913f0d5d97
Update changes file
2019-07-15 10:50:14 -07:00
Girish Ramakrishnan
ada63ec697
Add app.adminEmail
2019-07-12 14:29:35 -07:00
Girish Ramakrishnan
117f06e971
Fix issue where tar backups with files > 8GB was corrupt
...
Fixes #640
2019-07-10 14:58:54 -07:00
Johannes Zellner
9f03a9a6e2
Do first a patch release
2019-07-03 19:14:00 +02:00
Johannes Zellner
ce406c7088
Add groupCount to backendSettings
2019-07-03 13:47:23 +02:00
Girish Ramakrishnan
e7127df30d
remove app ownerId
...
this is unused
2019-07-02 21:23:51 -07:00
Girish Ramakrishnan
10e2817257
Add 4.2 changes
2019-07-02 19:24:49 -07:00
Girish Ramakrishnan
337a47c62b
typo
2019-07-02 16:46:14 -07:00
Girish Ramakrishnan
14bdac20ef
cloudron-support: add --admin-login
2019-07-02 16:37:46 -07:00
Girish Ramakrishnan
88e2b3f9aa
Add userCount to backend settings
2019-07-01 23:26:43 -07:00
Girish Ramakrishnan
22d731f06d
Fix LDAP not accessible via scheduler containers
...
Check the IP address against scheduler containers as well
2019-06-27 16:12:09 -07:00
Girish Ramakrishnan
e3d288ef7d
Add MONGODB_OPLOG_URL for apps that require oplog access
...
remove the replicaSet arg (it causes problems in tests but not in apps).
it causes some issues because of hostname not being set properly/docker network.
this only prevents the client from using replicaSet features which doesn't apply
to us since it is single instance.
2019-06-27 13:19:59 -07:00
Girish Ramakrishnan
455f597543
Add changes
2019-06-26 21:40:03 -07:00
Girish Ramakrishnan
8c9e626920
Remove twitter and chat link from the login footer
2019-06-26 21:39:07 -07:00
Girish Ramakrishnan
5a000c1ff4
Add MONGODB_REPLICA_SET for mongodb addon
...
This can be useful for constructing the ?replSet= part of the URI.
replicaSet is used by the client to discover the secondaries and fallback
automatically. if not provided, they just talk to primary.
2019-06-26 21:29:43 -07:00
Girish Ramakrishnan
ddf634bfb2
o2 has stopped working
2019-06-26 18:40:07 -07:00
Girish Ramakrishnan
89d3b8cc6a
Make hostname more explicit
2019-06-26 14:21:47 -07:00
Girish Ramakrishnan
49af6d09a2
CLOUDRON_APP_HOSTNAME should be the app id always
...
name is the container name which is "unique"
2019-06-26 14:21:43 -07:00
Girish Ramakrishnan
e5b0cac284
Clarify comment
2019-06-26 14:13:26 -07:00
Girish Ramakrishnan
6f33900f85
Fix failing test
2019-06-21 15:05:28 -07:00
Girish Ramakrishnan
514823af7d
More changes
2019-06-21 13:34:24 -07:00
Girish Ramakrishnan
65b058f563
More changes
2019-06-21 11:12:25 -07:00
Girish Ramakrishnan
7c8560deff
Ensure redis addon vars are replaced with manifest v2
2019-06-20 23:43:18 -07:00
Girish Ramakrishnan
6bbe2613b4
Return 412 for bad password
2019-06-20 16:44:53 -07:00
Girish Ramakrishnan
5771478e4b
Use 412 for invalid token, otherwise user gets logged out
2019-06-20 16:37:16 -07:00
Girish Ramakrishnan
e13030bc89
fontawesome location has changed
2019-06-20 16:27:27 -07:00
Girish Ramakrishnan
0a0ac93a55
Use pattern match instead for handling v1 to v2 upgrades
2019-06-20 11:59:02 -07:00
Girish Ramakrishnan
214fb50e74
Add 4.1.5 changes
2019-06-20 11:49:39 -07:00
Girish Ramakrishnan
959f8ee31e
Ensure passwords are preserved with v2 manifest
2019-06-20 11:46:50 -07:00
Girish Ramakrishnan
cb0d75be37
Add changes
2019-06-19 09:19:05 -07:00
Girish Ramakrishnan
11353e9e3a
DO DNS API break means this value must atleast be 30
...
(cherry picked from commit c0c5561aac )
2019-06-17 20:13:32 -07:00
Girish Ramakrishnan
8cd5c15c2b
Fix mail auth with manifest v2
2019-06-17 11:13:59 -07:00
Girish Ramakrishnan
b86b8b8ee1
4.1.4 changes
...
(cherry picked from commit 73a44d1fb2 )
2019-06-16 17:59:18 -07:00
Girish Ramakrishnan
c5f6e6b028
Prefix mysql url/database variables
2019-06-15 10:06:51 -07:00
Girish Ramakrishnan
592d8abc58
Roll back async package
...
something is broken, not sure what
2019-06-14 16:24:41 -07:00
Girish Ramakrishnan
d93068fc62
Update package lock
2019-06-14 15:32:11 -07:00
Girish Ramakrishnan
a864af52df
Update packages
2019-06-14 15:31:13 -07:00
Johannes Zellner
1eedd4b185
Send changelog for updated app notifications
2019-06-12 17:15:02 +02:00
Johannes Zellner
9d38edfe95
Update the emaildevelop test template data
2019-06-12 17:14:58 +02:00
Johannes Zellner
f895ebba73
Add some changes
2019-06-12 10:13:36 +02:00
Girish Ramakrishnan
511287b16e
linter likes this better
2019-06-11 12:32:15 -07:00
Johannes Zellner
530e06ec66
Add changes
2019-06-11 20:33:56 +02:00
Johannes Zellner
9cab383b43
Namecom does not support @ for naked domain anymore
2019-06-11 20:33:56 +02:00
Girish Ramakrishnan
9785ab82ed
Use cloudron as prefix instead of suffix
2019-06-11 09:39:45 -07:00
Johannes Zellner
9d237e7bd6
Fix sudo installation on scaleway
2019-06-11 13:30:15 +02:00
Girish Ramakrishnan
7e9885012d
vary dkim selector per mail domain
...
this is required for the case where the domain is added on multiple
cloudrons. initially, the plan was to just vary this as a derivation
of the dashboard domain. but this will break existing installation (wildcard
and manual domain setups cannot be re-programmed automatically).
2019-06-10 18:35:38 -07:00
Girish Ramakrishnan
1de785d97c
cloudron-support: add ip addr output
...
with cloudflare dns, we don't have ip to login
2019-06-10 09:31:34 -07:00
Girish Ramakrishnan
2bd6566537
clear timeout when get services status
2019-06-09 22:20:35 -07:00
Girish Ramakrishnan
88fa4cf188
remove reserved 'api' location
...
this is unused and we have no plans to use it.
2019-06-09 18:16:31 -07:00
Girish Ramakrishnan
b26167481e
Make the dkim private keys readable
...
https://forum.cloudron.io/topic/1675/dkim-and-dmarc-for-built-in-outgoing-mail/25
2019-06-06 14:45:42 -07:00
Girish Ramakrishnan
1b6af9bd12
scaleway: add tzdata
...
the bionic image is missing this and only has UTC in the output
of timedatectl list-timezones
2019-06-06 12:42:07 -07:00
Girish Ramakrishnan
0159963cb0
More changes
2019-06-06 11:43:24 -07:00
Girish Ramakrishnan
996041cabc
add mechanism to whitelist and blacklist apps
2019-06-06 11:42:42 -07:00
Girish Ramakrishnan
cb0352e33c
Do not remove existing custom.yml
2019-06-06 11:24:19 -07:00
Johannes Zellner
3169f032c8
Return correct conflicting domain
2019-06-05 19:54:15 +02:00
Girish Ramakrishnan
5ff8ee1a8f
Check manifest version when installing an app
...
This should have been done for manifest v1 already. For now, apps
will have to put in a minBoxVersion.
2019-06-03 14:02:47 -07:00
Girish Ramakrishnan
d3f31a3ace
Ensure all env vars have the CLOUDRON_ prefix
...
this is currently injected based on the manifest version (i.e v2)
2019-06-03 13:45:35 -07:00
Girish Ramakrishnan
ac7e7f0db9
Set name as the network alias for app containers
...
this allows scheduler containers to reach app containers by http
https://forum.cloudron.io/topic/1082/bitwarden-self-hosted-password-manager
2019-06-01 10:48:51 -07:00
Girish Ramakrishnan
4c1e967dad
give containers a hostname
...
this only affects the hostname and not the network name/alias
2019-06-01 10:02:26 -07:00
Girish Ramakrishnan
f3ccd5c074
More changes
2019-06-01 09:05:48 -07:00
Girish Ramakrishnan
8369c0e2c0
4.1.2 changes
2019-05-31 12:52:57 -07:00
Girish Ramakrishnan
122a966e72
No exclamation
2019-05-30 12:17:47 -07:00
Girish Ramakrishnan
9c2ff2f862
fix image prune logic
2019-05-29 12:15:13 -07:00
Girish Ramakrishnan
0ba45e746b
Accept incoming mail from a private relay
2019-05-29 11:33:37 -07:00
Girish Ramakrishnan
54c06cdabb
support: send a result message
2019-05-28 10:04:04 -07:00
Girish Ramakrishnan
5a2e10317c
remove autoconf
...
this was mostly for caas
2019-05-24 15:20:25 -07:00
Girish Ramakrishnan
8292d52acf
Add changes
2019-05-24 11:19:22 -07:00
Girish Ramakrishnan
7d21470fc7
remove cloudron-provision
...
will move to separate repo
2019-05-22 22:33:41 -07:00
Girish Ramakrishnan
eb0530bcba
add note
2019-05-22 18:33:02 -07:00
Girish Ramakrishnan
8855092faa
update changes
2019-05-22 14:39:47 -07:00
Girish Ramakrishnan
2e02a3c71e
Revert "only admins have sftp access"
...
This reverts commit ecc9415679 .
We want to support the workflow where normal users can have SFTP
access without being cloudron admins. The reason it is admin only
is because it is possible to upload/modify app code via SFTP to
then get cloudron admin credentials.
For this reason, we will fixup the apps as follows:
* Unmanaged WP - remove LDAP integration
* LAMP - remove LDAP. We will make a new major version that informs
the user NOT to update the app if they use LDAP. In 4.1, we will
expose the LDAP server, so they can use the public LDAP server for
any integration.
* Managed WP - Remove SFTP. This is contential but if people want to
really build/develop plugins then they can use Unmanaged WP for the dev
environment.
* Surfer - no change. Can have SFTP and LDAP since code is not modifiable
In general, should also be careful then about adding SFTP access to random
apps (like say nextcloud), since this would allow normal user to access
other people's data.
2019-05-22 14:32:45 -07:00
Girish Ramakrishnan
5b5303ba7f
Always return object in response
2019-05-22 10:41:34 -07:00
Girish Ramakrishnan
022a54278e
Add missing error code
2019-05-22 10:41:25 -07:00
Girish Ramakrishnan
19b50dc428
do not dump values in debug
...
it ends up dumping the icon in logs
2019-05-22 09:38:27 -07:00
Girish Ramakrishnan
e7eac003a9
cloudron-support: add ssh keys like support.js
2019-05-21 09:50:38 -07:00
Girish Ramakrishnan
cc17c6b2cd
cloudron-support: add set
2019-05-21 09:21:22 -07:00
Girish Ramakrishnan
23d16b07aa
Add API to get original icon
2019-05-21 00:14:54 -07:00
Girish Ramakrishnan
7ecb3dd771
Fix resolution of cloudflare MX record
...
cf might rewrite the MX record if it deems that there is a conflict
https://support.cloudflare.com/hc/en-us/articles/360020296512-DNS-Troubleshooting-FAQ
2019-05-20 18:20:04 -07:00
Johannes Zellner
e43f974d34
Rework namecheap tests
2019-05-20 22:21:20 +02:00
Girish Ramakrishnan
e16cd38722
Update changes
2019-05-20 10:34:54 -07:00
Girish Ramakrishnan
9d2f81d6b9
Remove X-Frame-Options
...
This option is now obsolete in the standards and browsers are complaining.
This needs to move to be a CSP header but this is hard to do from outside
the app (since it has to be 'merged' with the app's existing CSP).
fixes #596
2019-05-20 10:11:52 -07:00
Johannes Zellner
3fe539436b
Sinon was only used in old namecheap tests
2019-05-20 16:35:23 +02:00
Girish Ramakrishnan
76f94eb559
namecheap module is not used
2019-05-18 09:41:05 -07:00
Girish Ramakrishnan
7630ef921d
Add changes
2019-05-17 14:40:33 -07:00
Girish Ramakrishnan
625127d298
add icon to configure route
2019-05-17 12:50:08 -07:00
Girish Ramakrishnan
f24c4d2805
Look for a user set app icon
2019-05-17 10:14:02 -07:00
Girish Ramakrishnan
194340afa0
protect app icon route
2019-05-17 09:54:45 -07:00
Johannes Zellner
fdc9639aba
Deal with bad namecheap API naming convention
2019-05-16 18:03:09 +02:00
Johannes Zellner
f95ec53a85
Check for namecheap response status
2019-05-16 18:03:09 +02:00
Johannes Zellner
3d425b7030
Rewrite namecheap backend to not rely on unmaintained node module
2019-05-16 18:03:09 +02:00
Girish Ramakrishnan
37c6c24e0e
caas is dead
2019-05-16 08:49:08 -07:00
Girish Ramakrishnan
50bdd7ec7b
mail: Remove authType when username is empty
2019-05-15 16:23:56 -07:00
Girish Ramakrishnan
769cb3e251
Update mail container
2019-05-15 15:54:51 -07:00
Girish Ramakrishnan
9447c45406
enable the gcdns test
2019-05-15 10:18:30 -07:00
Johannes Zellner
66a3962cfe
Do not create notifications when apps are updated through the cli
2019-05-15 19:15:57 +02:00
Girish Ramakrishnan
d145eacbaf
send domain in auto-register
...
previously, this was done during startup and we didn't have a domain
in hand
2019-05-15 09:58:59 -07:00
Girish Ramakrishnan
ed03ed7bad
make changeDashboardDomain customizable
2019-05-14 19:20:45 -07:00
Girish Ramakrishnan
953b463799
4.1.0 changes
2019-05-14 18:00:34 -07:00
Johannes Zellner
6d28bb0489
4.0.3 changes
...
(cherry picked from commit 8686832bd1 )
2019-05-14 16:17:00 -07:00
Johannes Zellner
c2f464ea75
password change api now returns 400 instead of 403
2019-05-13 23:46:38 +02:00
Johannes Zellner
4c56ffc767
Add default footer content to custom.yml
2019-05-13 22:50:28 +02:00
Johannes Zellner
885aa8833c
Remove password requirement for destructive rest routes
2019-05-13 22:48:33 +02:00
Johannes Zellner
63310c44c0
Ensure notifications are sorted by time descending
2019-05-13 22:05:58 +02:00
Johannes Zellner
05dd65718f
Remove unused CLOUDRON_ID
2019-05-13 16:28:46 +02:00
Girish Ramakrishnan
05d3f8a667
gcs: fix crash
2019-05-12 18:05:48 -07:00
Girish Ramakrishnan
3fa45ea728
4.0.2 changes
2019-05-12 13:59:57 -07:00
Girish Ramakrishnan
a7d2098f09
Add option to skip backup before update
2019-05-12 13:28:53 -07:00
Girish Ramakrishnan
e1ecb49d59
gcdns: fix crash
2019-05-11 19:18:11 -07:00
Johannes Zellner
6facfac4c5
Add footer customization option
2019-05-11 13:37:43 +02:00
Girish Ramakrishnan
97d2494fe3
Make ticket body customizable
2019-05-10 17:35:47 -07:00
Girish Ramakrishnan
a54be69c96
rework custom configuration
2019-05-10 16:18:43 -07:00
Girish Ramakrishnan
800e25a7a7
Fix crash because params was undefined
2019-05-10 13:07:29 -07:00
Girish Ramakrishnan
c1ce2977fa
custom: refactor code for defaults
2019-05-10 11:31:16 -07:00
Girish Ramakrishnan
7177f82041
use 405 when feature disabled
...
403 will logout the user
2019-05-10 09:50:33 -07:00
Girish Ramakrishnan
ecc9415679
only admins have sftp access
...
this is because webterminal, upload/download etc are also only
restricted to admins. this keeps it aligned
2019-05-10 08:59:16 -07:00
Girish Ramakrishnan
23280f1635
make custom.yml empty by default
2019-05-10 07:40:56 -07:00
Girish Ramakrishnan
af062631c5
Add changes
2019-05-09 17:28:59 -07:00
Johannes Zellner
99b866736c
Fix updatechecker tests
2019-05-09 15:09:55 +02:00
Girish Ramakrishnan
9e74b666fb
More caas removal
2019-05-08 20:01:14 -07:00
Girish Ramakrishnan
1cc54f9a71
Remove caas_config
2019-05-08 15:38:11 -07:00
Girish Ramakrishnan
a2d8ef7c63
remove more caas related code
2019-05-08 15:36:34 -07:00
Girish Ramakrishnan
0835a6d690
caas: remove storage backend
2019-05-08 15:33:23 -07:00
Girish Ramakrishnan
67e0a19e13
caas: remove provision token check
2019-05-08 15:30:05 -07:00
Girish Ramakrishnan
6fa13f1bcc
caas: remove backupDone
2019-05-08 15:28:37 -07:00
Girish Ramakrishnan
25604774b9
caas: remove setupDone
2019-05-08 15:27:29 -07:00
Girish Ramakrishnan
b0fb989be0
caas: remove heartbeat
2019-05-08 15:24:37 -07:00
Johannes Zellner
61c70b9922
Update the demo link
2019-05-08 18:52:18 +02:00
Johannes Zellner
8b5bdf4e88
Remove all digest email code
2019-05-08 12:19:56 +02:00
Johannes Zellner
84d8d4a745
Remove digest from cron
2019-05-08 12:16:50 +02:00
Girish Ramakrishnan
04f93fb90f
caas: pass config.provider as query param
2019-05-07 21:04:09 -07:00
Girish Ramakrishnan
d559af15b8
caas: license is migrated on the appstore side now
2019-05-07 19:37:35 -07:00
Girish Ramakrishnan
1510e13066
Add a debug
2019-05-07 18:41:13 -07:00
Girish Ramakrishnan
d7cb8842d3
For now auto-register in the setup route
...
otherwise, it auto-registers immediately after cloudron-setup
i.e at the image creation time
2019-05-07 17:44:02 -07:00
Girish Ramakrishnan
7596411d70
remove appstoreConfig from autoconf
2019-05-07 17:05:01 -07:00
Girish Ramakrishnan
876cef5970
trim the license
2019-05-07 16:49:34 -07:00
Girish Ramakrishnan
1ebc077721
cloudron-setup: unbound variable
2019-05-07 15:29:34 -07:00
Girish Ramakrishnan
f5acdc0c4b
skip license migration for caas
2019-05-07 15:09:00 -07:00
Girish Ramakrishnan
866321da4d
Implement auto-registration
2019-05-07 15:08:56 -07:00
Girish Ramakrishnan
58696c5132
register: send token as body param
2019-05-07 14:26:45 -07:00
Girish Ramakrishnan
3d11dfaae3
rename registerCloudron func
2019-05-07 14:16:56 -07:00
Girish Ramakrishnan
3cc320b1d0
Send support email configuration
2019-05-07 14:02:51 -07:00
Girish Ramakrishnan
2efeab3493
feedback -> ticket
2019-05-07 11:36:08 -07:00
Girish Ramakrishnan
a78cab36ab
Make support and alert email customizable
2019-05-07 11:30:12 -07:00
Girish Ramakrishnan
41e525e037
alerts_to and alerts_from are unused in mail container
2019-05-07 11:29:59 -07:00
Girish Ramakrishnan
33d5cb3061
initial features implementation
2019-05-07 10:29:47 -07:00
Johannes Zellner
0cf523c285
update the package lock file
2019-05-07 16:23:31 +02:00
Johannes Zellner
9e346e0780
More mariadb related test fixes
2019-05-07 15:31:32 +02:00
Johannes Zellner
9cd25e548f
Fix wrong arguments for mocha in runTests script
2019-05-07 15:31:05 +02:00
Johannes Zellner
d221e40602
Hack to fix test runs on arch which only has mariadb
2019-05-07 15:06:38 +02:00
Johannes Zellner
a6ce5ce796
Do not callback early to avoid loosing emails
2019-05-07 14:22:51 +02:00
Johannes Zellner
23bfb7b8e6
Improve app update notification message
2019-05-07 12:19:40 +02:00
Johannes Zellner
b536c8196b
Create app updated eventlog entry and notification
2019-05-07 12:04:43 +02:00
Johannes Zellner
8f677177f2
Add app update email
2019-05-07 12:04:28 +02:00
Johannes Zellner
bb7cac4855
Add event log entries for app task lifecycle
2019-05-07 11:26:26 +02:00
Girish Ramakrishnan
e62fa01ab3
Add test for re-registration
2019-05-06 20:20:07 -07:00
Girish Ramakrishnan
5be48c5486
remove auto-registration logic from provision
...
we will do this instead on cloudron startup
2019-05-06 20:13:02 -07:00
Girish Ramakrishnan
6265efd5e7
Bail on first failure
2019-05-06 20:10:50 -07:00
Girish Ramakrishnan
222d2840cf
Remove settings locked field
...
this was a too generic and will be replaced with feature flags
2019-05-06 20:03:15 -07:00
Girish Ramakrishnan
0e8fe8cd07
temporary hack to make the tests work
2019-05-06 19:53:54 -07:00
Girish Ramakrishnan
f96a8bc269
remove config.edition
...
we will replace this with feature flags
2019-05-06 19:53:34 -07:00
Girish Ramakrishnan
bbced03f3a
Check if Cloudron is already registered
2019-05-06 19:46:42 -07:00
Girish Ramakrishnan
ffe0e6dbbe
Fix various error handling
...
* appstore never returns 403
* change billing_required to plan_limit
2019-05-06 15:36:37 -07:00
Girish Ramakrishnan
7bb6016f7b
rename purchase calls
2019-05-06 14:29:56 -07:00
Johannes Zellner
d5f58eea34
Fix ejs and add update url
2019-05-06 22:44:46 +02:00
Johannes Zellner
204c659af2
Fixup wrong indentation
2019-05-06 22:35:01 +02:00
Johannes Zellner
ae5eb00bd0
Batch all available app updates in updatechecker
2019-05-06 22:09:18 +02:00
Johannes Zellner
61c059babe
Revert "Notify admins on app update"
...
We will instead create eventlog entries
This reverts commit 22efb96f66 .
2019-05-06 20:16:29 +02:00
Johannes Zellner
a4e4d30d5d
Make app fqdn a clickable link
2019-05-06 17:59:48 +02:00
Johannes Zellner
c4fbfd32ee
The updateInfo is not the manifest object
2019-05-06 17:55:49 +02:00
Johannes Zellner
4f5af1f7be
Variable name clashes with module name
2019-05-06 17:42:26 +02:00
Johannes Zellner
22efb96f66
Notify admins on app update
2019-05-06 17:14:02 +02:00
Johannes Zellner
b7d3014aab
If an app cannot be updated automatically send notification mail
2019-05-06 16:37:55 +02:00
Girish Ramakrishnan
fc7e72835e
Fix error code typo
2019-05-06 02:45:16 -07:00
Girish Ramakrishnan
d824ced70f
Fix migration script
2019-05-06 02:34:47 -07:00
Johannes Zellner
2b9147bbc0
Return distinct errors for invalid or no appstore token
2019-05-06 11:07:50 +02:00
Girish Ramakrishnan
1ea9a0af50
Fix comment
2019-05-05 17:01:53 -07:00
Girish Ramakrishnan
7825cf06c0
Expire existing login tokens
...
this is because we added 2 new scopes - appstore scope and subscription scope
2019-05-05 13:48:08 -07:00
Girish Ramakrishnan
20a2f56184
Rename registration routes
2019-05-05 13:19:40 -07:00
Girish Ramakrishnan
22be3ad948
Fix test
2019-05-05 11:06:52 -07:00
Girish Ramakrishnan
dfa5a0f5fe
subscribe must return 201
2019-05-05 10:55:15 -07:00
Girish Ramakrishnan
b7d046533c
typo
2019-05-05 10:46:43 -07:00
Girish Ramakrishnan
c74cf59e3b
Fix http status code handling
2019-05-05 10:31:42 -07:00
Girish Ramakrishnan
92941260a5
migration: remove appstore_config
2019-05-05 08:23:20 -07:00
Girish Ramakrishnan
74fdcb0781
Handle billing required
2019-05-04 21:56:34 -07:00
Girish Ramakrishnan
6ab38633c2
handle extra errors
2019-05-04 21:42:33 -07:00
Girish Ramakrishnan
e553ade936
remove spaces support
...
this feature is unused for too long now
2019-05-04 18:34:28 -07:00
Girish Ramakrishnan
b4b3fd9ab6
Add appstore routes
2019-05-04 17:48:04 -07:00
Girish Ramakrishnan
4fc6f5a094
Handle already exists
2019-05-04 11:13:49 -07:00
Johannes Zellner
0f521e2521
Fix appstore config migration script
2019-05-04 17:46:18 +02:00
Girish Ramakrishnan
088b016083
add test for signup+subscription
2019-05-03 20:25:44 -07:00
Girish Ramakrishnan
ccb2fcf39b
Add API to get subscription
2019-05-03 20:22:31 -07:00
Girish Ramakrishnan
f6e82e93e4
Fix test again
2019-05-03 20:05:03 -07:00
Girish Ramakrishnan
02126caacd
fix update checker test
2019-05-03 20:01:08 -07:00
Girish Ramakrishnan
8f55565dbf
Remove notification logic that depended on free plan
...
this is from a time when we used to withhold updates for free users
2019-05-03 19:56:27 -07:00
Girish Ramakrishnan
3246edd5a8
rework cloudron registration flow
...
we now route all the registration, login etc via the backend
subscription management are also in a separate scope now
2019-05-03 19:47:20 -07:00
Girish Ramakrishnan
7e7e067b5b
rename appstore_token to cloudron_token
2019-05-03 16:03:45 -07:00
Girish Ramakrishnan
fd0bdbce7e
Fix up app purchase and unpurchase routes
2019-05-03 14:53:19 -07:00
Girish Ramakrishnan
5ba8a8f7da
Use appstore token in update check routes
2019-05-03 11:59:35 -07:00
Girish Ramakrishnan
a799b0931f
Use licenseToken in alive route
2019-05-03 11:36:48 -07:00
Girish Ramakrishnan
d895786f55
Use licenseToken in feedback API
2019-05-03 11:10:53 -07:00
Girish Ramakrishnan
4d89b4a8df
migrate appstore_config to license
...
the appstore_config was based on user login tokens. if lost, they
can compromise the cloudron.io account. with license token, losing
the token in safe
2019-05-03 11:03:33 -07:00
Girish Ramakrishnan
e544e77fd9
remove unused appstore.getAccount
2019-04-30 22:30:34 -07:00
Girish Ramakrishnan
7a5a94614e
remove unused appstore.getCloudron
2019-04-30 22:26:37 -07:00
Johannes Zellner
c935811e08
Correctly upsert also the creationTime for special alert notifications
...
to avoid confusion, the upsert code moves to the only place used inside
alert
2019-04-30 16:45:24 +02:00
Girish Ramakrishnan
cd6d97c3eb
Fix onTick handler
2019-04-28 15:55:01 -07:00
Johannes Zellner
292f0624fb
Add unstable apps config tests and fix default value
2019-04-27 22:34:52 +02:00
Johannes Zellner
9fb0d1f3bf
Remove unused require
2019-04-27 22:30:57 +02:00
Johannes Zellner
d82b722887
Add unstable apps boolean setting
2019-04-27 22:30:32 +02:00
Girish Ramakrishnan
3bcab14de1
caas: make heartbeat not error if not configured yet
...
the heartbeat errors when the domain is setup but the restore/setup call
has not been invoked yet from the caas sever
2019-04-26 12:53:10 -07:00
Girish Ramakrishnan
3ded411c15
caas: migrate from fqdn to boxId in backup api
2019-04-26 10:55:50 -07:00
Girish Ramakrishnan
706c970314
caas: fixup routes
2019-04-26 10:19:37 -07:00
Girish Ramakrishnan
35dfd540b5
caas: move backupDone
2019-04-26 10:06:03 -07:00
Girish Ramakrishnan
7c4394d8cb
caas: change domains route
2019-04-25 21:56:22 -07:00
Girish Ramakrishnan
69972e6460
cloudron-setup: remove support for pre-3.2
2019-04-25 19:38:24 -07:00
Johannes Zellner
dd19f11e29
Handle ldap server errors grazefully
2019-04-25 13:19:23 +02:00
Johannes Zellner
b312414957
Arch does not have app armor support in the kernel
2019-04-25 09:30:23 +02:00
Girish Ramakrishnan
f3910f03ca
Enable logStream test
...
fixes apptask logs in test mode and the id of stream logs
2019-04-24 16:27:00 -07:00
Girish Ramakrishnan
080c667d9c
tests: bump expiry
2019-04-24 15:39:47 -07:00
Girish Ramakrishnan
2bf0614da1
load apparmor profile for the tests to work
2019-04-24 14:39:22 -07:00
Girish Ramakrishnan
bd5bdfa8b5
Fix apps test
2019-04-24 14:33:18 -07:00
Girish Ramakrishnan
d1582a435d
readdirp args have changed
2019-04-24 10:47:04 -07:00
Johannes Zellner
d27aa8821a
Send app label meta information
2019-04-24 14:25:23 +02:00
Girish Ramakrishnan
f5f08cf9ff
Add more changes
2019-04-23 21:35:53 -07:00
Girish Ramakrishnan
91877f7b2d
relay: add option to accept self-signed certs
2019-04-23 15:36:10 -07:00
Girish Ramakrishnan
7f9b078430
cloudron-support: add appsdata and boxdata stats
2019-04-23 10:14:20 -07:00
Girish Ramakrishnan
e9a01fa0c8
Add changes
2019-04-22 16:50:31 -07:00
Girish Ramakrishnan
1f33674f30
more package updates
2019-04-22 11:06:48 -07:00
Johannes Zellner
badf58db3e
Allow empty mail relay username and/or password
2019-04-22 14:41:44 +02:00
Johannes Zellner
58c98be9a7
npm test needs a relative path
2019-04-18 17:14:49 +02:00
Johannes Zellner
71a5555816
Enable all tests and remove unmaintained istanbul code coverage tool
2019-04-18 16:41:10 +02:00
Johannes Zellner
aee20c0423
Fix typo for test run handling
2019-04-18 16:01:16 +02:00
Johannes Zellner
95faccd8d9
Make nearly all app tests work now
2019-04-18 13:11:56 +02:00
Johannes Zellner
85ec4a3de7
Ensure we deal with arrays for tags
2019-04-18 13:06:00 +02:00
Johannes Zellner
e79b6ade51
Get some of the apps tests to work again
2019-04-17 13:33:10 +02:00
Johannes Zellner
79ccfa087d
Only delete docker container within the cloudron network
...
When running tests they would randomly delete all local docker container
2019-04-17 12:44:03 +02:00
Johannes Zellner
9a349eff32
Do not purge all docker containers in the apps-test
2019-04-16 17:22:03 +02:00
Johannes Zellner
e756a442f6
Validate tags in one place only and add tests
2019-04-16 16:36:11 +02:00
Johannes Zellner
332c860e80
If label or tags are present they have to be a specific type
2019-04-16 10:29:44 +02:00
Johannes Zellner
d934671202
Do not use unbound for native dns resolving during tests
2019-04-16 10:13:59 +02:00
Girish Ramakrishnan
747359478d
Make send test mail functionality work with secondary domain
2019-04-15 16:58:39 -07:00
Girish Ramakrishnan
f0f18db5a8
Remove unused error code
2019-04-15 16:54:41 -07:00
Girish Ramakrishnan
2f068c66d4
sendTestMail: return error
2019-04-15 16:54:25 -07:00
Girish Ramakrishnan
fa5415b1eb
get rid of mail queue
...
this prevents us from returning mail errors synchronously
2019-04-15 16:39:09 -07:00
Johannes Zellner
e23fd5e3c5
return an empty tag array instead of null
2019-04-15 15:43:45 +02:00
Girish Ramakrishnan
996c838320
timestamp -> tag
...
later, we can actually move this tag to a separate field in backupdb.
and then, dependsOn can also be removed and we can use this tag as
a collation label.
2019-04-14 11:33:11 -07:00
Girish Ramakrishnan
083b8a6d7b
Add preserveSecs to backup entries
...
We want to keep updates automatic and don't want to keep reminding
users that apps are getting updated etc (i.e beyong the weekly
digest). The reason to remind them is so they can check if the
app updated correctly. in some very corner cases, the app is not
really checked upon for a while and people forget about them until
they check them later. in such cases, it's too late to recover because
the backpus gets cleaned up. this preserve seconds fields, let's us
mark 'update' backups for preservation for 3 weeks.
2019-04-13 18:17:49 -07:00
Girish Ramakrishnan
58625c82a0
Add route to trigger backup cleaner
2019-04-13 18:10:43 -07:00
Girish Ramakrishnan
74211dd2c9
Change signature of backupdb.add
2019-04-13 17:28:19 -07:00
Girish Ramakrishnan
cd4808e5e2
Update modules
2019-04-13 07:10:46 -07:00
Girish Ramakrishnan
e44ad19bda
Add Scaleway ObjectStorage backup backend
2019-04-12 10:10:43 -07:00
Girish Ramakrishnan
e31d413551
Add nginx service
...
We had a case where nginx was not picking up renewed certs. Not sure
if it's a bug in our code or nginx.
2019-04-12 09:47:05 -07:00
Johannes Zellner
d170a3e5e1
Translate app tags during db record update
2019-04-11 17:18:11 +02:00
Johannes Zellner
10c3872902
Send app tags along the rest api
2019-04-11 17:06:10 +02:00
Johannes Zellner
a3c658d6b8
Add upcloud provider to cloudron-setup
2019-04-11 15:41:34 +02:00
Johannes Zellner
0c8cf9cc0d
Fix error messages
2019-04-11 13:35:33 +02:00
Girish Ramakrishnan
b92a79eb9d
More changes
2019-04-10 09:30:18 -07:00
Girish Ramakrishnan
ba2c6c1219
do: Sprinkle retries since DO keeps failing on us
2019-04-08 14:35:32 -07:00
Girish Ramakrishnan
f0a5cc6116
more debugs
2019-04-08 14:03:26 -07:00
Girish Ramakrishnan
9fbe209c04
Better debug
2019-04-08 13:07:06 -07:00
Girish Ramakrishnan
b8bbd73e07
call iteratorDone on error
2019-04-08 12:22:55 -07:00
Girish Ramakrishnan
2e40325f2a
Fix _.extend usage
...
it modifies the destination object
2019-04-08 00:32:12 -07:00
Girish Ramakrishnan
bdbd336db5
sftp: update docker image
2019-04-05 13:59:30 -07:00
Girish Ramakrishnan
5c645ea224
sftp: set default memory limit
2019-04-05 10:34:24 -07:00
Johannes Zellner
5c2985cac7
localstorage ftp uid must be a number
2019-04-05 12:59:00 +02:00
Girish Ramakrishnan
a0d1016c01
containerize sftp
2019-04-04 22:43:02 -07:00
Girish Ramakrishnan
816cf44117
sftp: Fix uid parsing
...
format is 33/www-data
2019-04-04 22:38:43 -07:00
Girish Ramakrishnan
1119a62576
fs: emit progress messages for copy and removeDir
2019-04-03 11:54:46 -07:00
Girish Ramakrishnan
152cb48340
Throttle progress messages
...
This was part of the reason the process was dying out of memory since
we were sending too many messages (I guess it was all getting buffered up)
Part of #626
2019-04-03 11:46:28 -07:00
Girish Ramakrishnan
5a4c2a4974
Remove max_old_space and use as much as we can
...
process.memoryUsage() is our friend. also, with --expose-gc we
can use global.gc(). we don't use it yet though
part of #626
2019-04-02 21:42:41 -07:00
Girish Ramakrishnan
9063e8f4a4
syncer: clear cache array to reclaim some memory
...
part of #626
2019-04-01 14:53:34 -07:00
Girish Ramakrishnan
519552083b
remove dead comment
2019-04-01 14:51:34 -07:00
Girish Ramakrishnan
f6ad66bd30
rename to ignoreStatError and explicitly ignore ENOENT
2019-04-01 11:56:20 -07:00
Girish Ramakrishnan
65affb5146
Fix test
2019-03-31 18:01:46 -07:00
Girish Ramakrishnan
38d9378e48
Fix issue where tar-fs would complain about missing files
...
This is being tracked in upstream issue - https://github.com/mafintosh/tar-fs/issues/81
We use a custom fork of tar-fs for now
Fixes #628
2019-03-31 17:43:08 -07:00
Girish Ramakrishnan
cd8011e858
add contabo to the help text
2019-03-29 12:07:13 -07:00
Girish Ramakrishnan
e352562c51
proftpd: unattended install
...
on 16.04,
debconf: falling back to frontend: Readline
ProFTPD configuration
---------------------
ProFTPD can be run either as a service from inetd, or as a standalone server.
Each choice has its own benefits. With only a few FTP connections per day, it is
probably better to run ProFTPD from inetd in order to save resources.
On the other hand, with higher traffic, ProFTPD should run as a standalone
server to avoid spawning a new process for each incoming connection.
1. from inetd 2. standalone
2019-03-27 14:16:55 -07:00
Girish Ramakrishnan
3dd2a19915
Handle case where proftpd is not installed
...
also, don't install a specific version since it doesn't work in 16.04
2019-03-27 14:07:23 -07:00
Girish Ramakrishnan
384286cf0a
cleanup stale redis directory
...
Fixes #627
2019-03-27 13:50:56 -07:00
Girish Ramakrishnan
162281e753
More changes
2019-03-26 11:59:01 -07:00
Girish Ramakrishnan
9a3603fea3
Add progress messages for multi-part copy
2019-03-26 11:58:32 -07:00
Girish Ramakrishnan
121dc85e40
more changes
2019-03-25 16:15:49 -07:00
Girish Ramakrishnan
823bad2ace
add proftpd to base image
2019-03-25 16:15:03 -07:00
Girish Ramakrishnan
c9ed8543c8
Capitalize the error
2019-03-25 15:15:39 -07:00
Girish Ramakrishnan
d752c68790
re-factor all the audit source objects
2019-03-25 15:15:39 -07:00
Girish Ramakrishnan
39c0409d42
only notify automated backup failures
2019-03-25 15:15:35 -07:00
Girish Ramakrishnan
7937738258
Fix formatting
2019-03-25 14:02:23 -07:00
Girish Ramakrishnan
ea092bda99
remove mail notification for apptask and process crash
...
only events are raised for these
2019-03-25 13:59:55 -07:00
Girish Ramakrishnan
3b908a5857
native-dns: use unbound by default
2019-03-25 11:51:17 -07:00
Girish Ramakrishnan
536e14dfe8
Fix failing settings test
2019-03-24 16:57:45 -07:00
Girish Ramakrishnan
edd2c5f779
handle tags being null
...
in db, we store things as null (not set). but in rest api, we require
the fields to be strings/arrays.
2019-03-23 15:02:24 -07:00
Girish Ramakrishnan
ee76c2c06e
Return 403 if totp token is invalid
...
the ui redirects to login screen otherwise
2019-03-23 14:12:46 -07:00
Girish Ramakrishnan
0190a92c26
Add chat link to readme
2019-03-23 13:54:58 -07:00
Girish Ramakrishnan
730da103b1
Fix logstream test
2019-03-23 13:41:05 -07:00
Girish Ramakrishnan
ffe30289ee
Revert "revert node to 8.15.1"
...
This reverts commit bec63c1ad0 .
ldap: unbind callback never fires in node 10.15 it seems. otherwise,
it all works..
2019-03-23 13:35:12 -07:00
Girish Ramakrishnan
cfe9af5c3c
Disable this test as well
2019-03-23 13:35:12 -07:00
Girish Ramakrishnan
9647ce153d
Make tests work
...
the namecheap test never seems to work
2019-03-23 10:14:21 -07:00
Girish Ramakrishnan
bec63c1ad0
revert node to 8.15.1
...
the ldap search test fail with 10.15 for some reason
https://github.com/nodejs/Release
maybe related:
https://github.com/joyent/node-ldapjs/issues/510
2019-03-22 17:27:23 -07:00
Girish Ramakrishnan
3dec0ff85b
ldap: remove bogus name response
2019-03-22 15:58:53 -07:00
Girish Ramakrishnan
8868d8e99e
keep it alphabetical
2019-03-22 15:42:16 -07:00
Girish Ramakrishnan
9a0d9506f8
settings.on is gone
2019-03-22 15:33:25 -07:00
Girish Ramakrishnan
ec57b813da
Make tests work again
2019-03-22 15:19:20 -07:00
Girish Ramakrishnan
57c4d96467
ensure mysql is storing UTC times
2019-03-22 15:19:17 -07:00
Girish Ramakrishnan
ebaf0a08b5
update schema
2019-03-22 14:09:31 -07:00
Girish Ramakrishnan
abae4b5106
Add labels and tags
2019-03-22 10:12:48 -07:00
Girish Ramakrishnan
81b721be2b
Fix buffer warnings
2019-03-21 20:06:14 -07:00
Johannes Zellner
e9108ae3f8
Reserve sftp port 222
2019-03-19 22:59:29 -07:00
Johannes Zellner
acc7b65649
Set uid number from localstorage addon ftp value
2019-03-19 21:17:23 -07:00
Johannes Zellner
77ed177855
Only allow ftp access for apps which support it
2019-03-19 21:13:19 -07:00
Girish Ramakrishnan
71cb5c579d
Fix duplicate location error message
2019-03-19 20:50:27 -07:00
Girish Ramakrishnan
f22e4c261a
Add graphite to list of services
2019-03-19 20:26:21 -07:00
Johannes Zellner
4a046ca70e
Check for user access in ldap ftp routes
2019-03-19 16:23:03 -07:00
Johannes Zellner
62ee3fa0f1
Verify proftp ldap connection via ip instead of fake admin account
2019-03-19 15:24:09 -07:00
Johannes Zellner
ef0403af0e
Make proftpd conf static
2019-03-19 15:24:09 -07:00
Johannes Zellner
044b27967e
Make initial sftp connection work
2019-03-19 15:24:09 -07:00
Johannes Zellner
4942a2480b
Install proftpd
2019-03-19 15:24:09 -07:00
Johannes Zellner
cde852f0f9
Add proftpd as service
2019-03-19 15:24:09 -07:00
Girish Ramakrishnan
a435e88b25
rotate task logs
2019-03-18 22:53:47 -07:00
Girish Ramakrishnan
add954db80
detect dashboard domain conflict with existing app
...
Fixes #620
2019-03-18 21:20:13 -07:00
Girish Ramakrishnan
76ec639fea
typo
2019-03-17 17:52:37 -07:00
Girish Ramakrishnan
155decfca1
typog
2019-03-17 16:09:21 -07:00
Girish Ramakrishnan
3ab131786b
motd: Remove PasswordAuthentication check
2019-03-15 15:01:55 -07:00
Girish Ramakrishnan
a273dea755
add no-op provider for mail relay
...
Fixes #622
2019-03-15 14:38:53 -07:00
Girish Ramakrishnan
9a6d8e3a33
Handle access denied in registerSubdomain
2019-03-13 10:50:18 -07:00
Girish Ramakrishnan
4d9ecef6fd
Fix empty digest mails
2019-03-12 16:24:00 -07:00
Girish Ramakrishnan
4df72a4015
Update mysql addon
2019-03-12 12:03:21 -07:00
Girish Ramakrishnan
c3e2dc4ce8
migration to overlay2 is now done
2019-03-12 09:10:36 -07:00
Girish Ramakrishnan
5a1bcd53a3
This sounds ominous
2019-03-12 08:49:25 -07:00
Girish Ramakrishnan
4c8865ed5b
Make it 3.5.5 instead
2019-03-11 21:23:24 -07:00
Girish Ramakrishnan
cb6bd50db0
Update changelog
2019-03-11 21:21:09 -07:00
Girish Ramakrishnan
614dbb3674
Fix crash during restore
2019-03-11 20:41:03 -07:00
Girish Ramakrishnan
8ed8bb2dad
typo
2019-03-11 18:42:54 -07:00
Girish Ramakrishnan
a1f6985534
update all packages
...
ncu -u
2019-03-11 10:57:43 -07:00
Girish Ramakrishnan
6bdf2e38cc
remove query admins from mailer code
2019-03-10 16:28:17 -07:00
Girish Ramakrishnan
19ae55ebd4
Fixup backup failure and cert renewal email notification
...
in caas, we get an email copy for every admin on cloudron..
2019-03-10 15:53:22 -07:00
Girish Ramakrishnan
61cef46a95
cloudron-support: prefix newline
2019-03-10 14:00:08 -07:00
Girish Ramakrishnan
172738f7b7
Bump mail container
2019-03-10 11:08:09 -07:00
Girish Ramakrishnan
5d0d60d89e
Bump cron module to 1.7.0
...
https://github.com/kelektiv/node-cron/issues/409
https://github.com/kelektiv/node-cron/issues/408
https://github.com/kelektiv/node-cron/issues/405
2019-03-10 10:48:32 -07:00
Girish Ramakrishnan
3cfdc64735
Update to support ecma 8
2019-03-09 22:00:09 -08:00
Girish Ramakrishnan
b47069ccad
typo
2019-03-09 21:33:56 -08:00
Girish Ramakrishnan
2051b3921b
Use constants.ADMIN_LOCATION instead
...
part of #621
2019-03-09 20:06:12 -08:00
Girish Ramakrishnan
46f46483f8
Mark as internal functions
2019-03-08 19:09:34 -08:00
Girish Ramakrishnan
66b02b58b6
make notifications.alert take a title
...
the title is better when it's a bit more dynamic
2019-03-08 16:59:48 -08:00
Girish Ramakrishnan
4428c3d7d8
Move docker config file generation to installer logic
...
the new version of docker does not support devicemapper on ubuntu 16.
so, we have to first enable overlay2 and then install the latest docker
2019-03-08 16:41:39 -08:00
Girish Ramakrishnan
2d4b9786fa
box update is now an alert notification
2019-03-07 14:40:46 -08:00
Girish Ramakrishnan
d2d9c4be6f
update notification
2019-03-07 14:27:43 -08:00
Girish Ramakrishnan
a9d6ac29f1
make funcs take proper callbacks
2019-03-07 14:27:23 -08:00
Girish Ramakrishnan
4d50bd5c78
3.5.4 changes
2019-03-07 13:40:20 -08:00
Girish Ramakrishnan
fdd651b9cc
Only append markdownMessage is not-empty
2019-03-07 11:50:49 -08:00
Girish Ramakrishnan
7b56f102cc
relay check is always performed
2019-03-06 19:48:18 -08:00
Girish Ramakrishnan
e329360daa
backup notification now has a doc link and log link
2019-03-06 16:23:25 -08:00
Girish Ramakrishnan
5e8a431a92
Add doc link for cert renweal error
2019-03-06 16:17:56 -08:00
Girish Ramakrishnan
cd3f21a92e
Add doc links for the app down mail
2019-03-06 16:14:24 -08:00
Girish Ramakrishnan
03d3ae3eb4
Qualify the name in the email subject
2019-03-06 16:08:12 -08:00
Girish Ramakrishnan
0c350dcf6e
add a note
2019-03-06 16:05:50 -08:00
Girish Ramakrishnan
c6b3d15d72
Fix some typos
2019-03-06 16:02:51 -08:00
Girish Ramakrishnan
8d7f7cb438
rename the constant
2019-03-06 15:55:07 -08:00
Girish Ramakrishnan
b5a4121574
Better OOM notification messages
2019-03-06 14:47:24 -08:00
Girish Ramakrishnan
916ca87db4
Expose apps.getByContainerId
2019-03-06 11:15:12 -08:00
Girish Ramakrishnan
bfea97f14e
refactor apps.postProcess
2019-03-06 11:12:39 -08:00
Girish Ramakrishnan
f98657aca8
Remove double query of domains
2019-03-06 11:08:14 -08:00
Girish Ramakrishnan
45c5e770fa
injectPrivateFields already merges fields
2019-03-05 19:38:56 -08:00
Girish Ramakrishnan
f4ce7ecf4b
do not add acked alerts
2019-03-04 21:04:31 -08:00
Girish Ramakrishnan
8dfe1fe97f
notifications: add ack flag in db logic
2019-03-04 20:44:41 -08:00
Girish Ramakrishnan
4bf165efaf
Fix misplaced callback
2019-03-04 20:22:25 -08:00
Girish Ramakrishnan
c7f6ae5be9
remove unused require
2019-03-04 19:49:25 -08:00
Girish Ramakrishnan
d83d2d5f4e
Do not restart mail container when setting fallback certs
2019-03-04 19:35:22 -08:00
Girish Ramakrishnan
2362b2a5a0
Make the version 3.5.3
2019-03-04 18:18:23 -08:00
Girish Ramakrishnan
fb08a17ec8
Add some debugs
2019-03-04 18:11:07 -08:00
Girish Ramakrishnan
1bcc2d544a
link to logs instead of spatch'ed error
2019-03-04 18:03:51 -08:00
Girish Ramakrishnan
6fd1205681
settings value is a variant
2019-03-04 15:45:04 -08:00
Girish Ramakrishnan
da2b00c9cf
Move cert change notification into ensureCertificate()
...
When ensureCertificate renews the cert, the filename will match the
nginx config cert file. The current code detects that this implies
that the cert has not changed and thus does not update mail container.
Move the notification into ensureCertificate() itself. If we have a wildcard
cert and it gets renewed when installing a new app, then mail container will
still get it.
2019-03-04 15:24:09 -08:00
Girish Ramakrishnan
f6213595d1
move mailer notification of failed backups
...
this also removes the splatchError which is causing a crash because
of infinite recursion when backups fail (not sure why)
2019-03-04 15:01:30 -08:00
Girish Ramakrishnan
b1b2bd5b97
move cert renewal notification to notification logic
2019-03-04 14:53:19 -08:00
Girish Ramakrishnan
aa19cbbfc7
Properly escape filename when downloading files
2019-03-04 13:50:17 -08:00
Girish Ramakrishnan
8d39faddc9
cleanup temporary file after upload
...
also, wait for finish event for the http response. this should be
quick because the file has already been upload and we just have to
copy it to the container
2019-03-04 12:28:27 -08:00
Girish Ramakrishnan
52714dbcc9
Update changelog
2019-03-04 12:17:38 -08:00
Girish Ramakrishnan
be92d3a0bc
Properly escape the filename when uploading files
...
tested with filename:
Fancy - +!"#$&'\''()*+,:;=?@ - Filename
(in the e2e repo)
2019-03-04 12:16:04 -08:00
Girish Ramakrishnan
f3189f72fd
Use mail.restartMail alias
2019-03-04 10:42:42 -08:00
Girish Ramakrishnan
144c1d4e2f
remove eventemitter pattern
...
the main issue is that ee pattern does not work across processes.
with task logic, this complicates things
2019-03-04 10:25:18 -08:00
Girish Ramakrishnan
e5964f9d93
Remove unused function
2019-03-02 19:31:19 -08:00
Girish Ramakrishnan
ea30cbe117
Fix tests
2019-03-02 19:23:39 -08:00
Girish Ramakrishnan
598a9664a7
Fix crash because mailboxName is null
...
mailboxName is always a non-empty string. even for apps that don't use
it, we allocate a mailbox with .app suffix
2019-03-02 19:18:38 -08:00
Girish Ramakrishnan
d04628a42d
Suffix .log
2019-03-01 16:55:26 -08:00
Girish Ramakrishnan
7bce63d74e
Add API to get crash logs
2019-03-01 16:33:35 -08:00
Girish Ramakrishnan
452fe9f76d
add callback to notification code
...
the crashnotifier prematurely exits otherwise
2019-03-01 15:17:38 -08:00
Girish Ramakrishnan
7983ff5db2
Stash logs in crash log directory
2019-03-01 15:07:06 -08:00
Girish Ramakrishnan
c361ab954d
Indicate how often status check is run
2019-03-01 11:30:51 -08:00
Girish Ramakrishnan
a8735a6465
Generate detailed mail configuration error notification
2019-03-01 11:15:05 -08:00
Girish Ramakrishnan
76255c0dd4
Typo
2019-02-28 15:22:55 -08:00
Girish Ramakrishnan
87655ff3cd
remove action field from notifications table
...
it is mostly unused
2019-02-28 15:13:51 -08:00
Girish Ramakrishnan
fc7be2ac1a
Clear notifications if mail/backup/disk space situation changes
2019-02-28 15:13:47 -08:00
Girish Ramakrishnan
e93b95bee8
move the switch case to notifications
...
this way we don't need to export all the functions
2019-02-28 11:38:16 -08:00
Girish Ramakrishnan
6a18d6918e
restart mail now restart the service
...
... and not just the container
Fixes #617
2019-02-28 10:44:26 -08:00
Girish Ramakrishnan
578ce09b5e
Fix digest test
2019-02-27 11:56:16 -08:00
Girish Ramakrishnan
27f6177fc9
do not restart mail container when not activated
...
provision code is calling setDashboardDomain() which is restarting
the mail server
2019-02-27 11:46:03 -08:00
Johannes Zellner
20c0deeac4
Improve digest email
2019-02-27 12:06:01 +01:00
Johannes Zellner
f1f8cdb6e9
Add admin route to test digest
2019-02-27 12:06:01 +01:00
Girish Ramakrishnan
345e4e846c
Copy/paste error
2019-02-26 15:03:14 -08:00
Girish Ramakrishnan
6f57b36158
make it executable
2019-02-26 15:03:14 -08:00
Girish Ramakrishnan
0264e10e69
Update license file
2019-02-26 15:03:14 -08:00
Girish Ramakrishnan
067f5bf5a3
auto register cloudron based on license file
2019-02-26 15:03:11 -08:00
Girish Ramakrishnan
c81b643cdf
cloudron-setup: copy edition license
2019-02-26 12:06:32 -08:00
Girish Ramakrishnan
388ad077d6
cloudron-setup: baseDataDir is not used
2019-02-26 12:04:31 -08:00
Girish Ramakrishnan
db93cdd95f
Make settings logic use the appstore model code
2019-02-25 18:19:25 -08:00
Girish Ramakrishnan
68304a3fc1
Add registerCloudron and getCloudron
2019-02-25 17:29:42 -08:00
Girish Ramakrishnan
13259c114a
block updates if app has a maxBoxVersion less than incoming version
2019-02-25 10:03:50 -08:00
Girish Ramakrishnan
5131ba453d
Add another change
2019-02-25 10:03:31 -08:00
Girish Ramakrishnan
8fdc9939cd
Add locked flag to settings table
2019-02-22 10:08:02 -08:00
Girish Ramakrishnan
c15449492a
settings: remove appstore scope
2019-02-22 09:43:26 -08:00
Girish Ramakrishnan
1cab1e06d9
aggregate the settings get/set handlers
...
this makes it easy to check for a settings lock
2019-02-22 09:37:36 -08:00
Girish Ramakrishnan
4831926869
settings: select fields explicitly
2019-02-22 09:31:09 -08:00
Girish Ramakrishnan
4fcf25077b
Update docker to 18.09
2019-02-21 15:30:26 -08:00
Girish Ramakrishnan
c32461f322
Update node modules
2019-02-21 14:09:28 -08:00
Girish Ramakrishnan
0abe6fc0b4
Fixup node version
2019-02-21 13:41:15 -08:00
Girish Ramakrishnan
edc3d53f94
validate fields in the update response
2019-02-20 16:18:47 -08:00
Girish Ramakrishnan
bb5fbbe746
Add boxUpdateInfo to the eventlog
...
this is used by the email digest code
2019-02-20 16:18:38 -08:00
Girish Ramakrishnan
36f3e3fe50
Enable gzip compression for large objects
...
This doesn't trigger a re-configure (since it's not a big deal)
2019-02-20 16:03:13 -08:00
Girish Ramakrishnan
65c8000f66
rename function to just "send"
2019-02-20 09:11:45 -08:00
Girish Ramakrishnan
2d45f8bc40
Update node to 10.15.1
2019-02-19 10:46:59 -08:00
Girish Ramakrishnan
7a0d4ad508
Make reboot required check server side
2019-02-19 09:20:20 -08:00
Johannes Zellner
5ae93bb569
Clear connect-timeout handling for graphs
2019-02-18 13:13:29 +01:00
Girish Ramakrishnan
aa6ca46792
Add linode-stackscript as a provider
2019-02-16 13:59:35 -08:00
Girish Ramakrishnan
e8c11f6e15
Fix tests
2019-02-15 14:56:51 -08:00
Girish Ramakrishnan
08bb8e3df9
Make token API id based
...
we don't return the accessToken anymore
2019-02-15 14:31:43 -08:00
Girish Ramakrishnan
d62bf6812e
Ensure tokens have a name
2019-02-15 13:45:04 -08:00
Girish Ramakrishnan
422abc205b
do not return accessToken when listing tokens
2019-02-15 13:26:33 -08:00
Girish Ramakrishnan
1269104112
rbl.status is only valid if rbl test was run
2019-02-15 12:22:39 -08:00
Girish Ramakrishnan
97d762f01f
relay username also needs to be hidden
2019-02-15 11:44:33 -08:00
Girish Ramakrishnan
671b5e29d0
Hide mail relay password
2019-02-15 11:25:51 -08:00
Girish Ramakrishnan
c7538a35a2
Do not escape link
2019-02-14 19:36:59 -08:00
Girish Ramakrishnan
458658a71b
Email gets encoded in plain text email
...
Unbuffered code for conditionals etc <% code %>
Escapes html by default with <%= code %>
Unescaped buffering with <%- code %>
2019-02-14 19:30:02 -08:00
Girish Ramakrishnan
e348a1d2c5
make the view a link
2019-02-13 15:15:32 -08:00
Girish Ramakrishnan
59ff3998bc
do not send up mails immediately on installation
2019-02-13 14:44:02 -08:00
Girish Ramakrishnan
9471dc27e0
App can also be dead/error
2019-02-12 17:01:45 -08:00
Girish Ramakrishnan
4b559a58d1
Fix use of source object
2019-02-12 16:41:46 -08:00
Girish Ramakrishnan
5980ab9b69
Add healthTime in the database
...
this is currently an internal field and not returned in API
2019-02-12 16:33:28 -08:00
Girish Ramakrishnan
70e5daf8c6
Fix usage of audit source
2019-02-11 14:41:12 -08:00
Girish Ramakrishnan
92e1553eed
Fullstop
2019-02-11 12:58:38 -08:00
Girish Ramakrishnan
2236e07722
Send app up notification
...
Fixes #438
2019-02-11 12:58:33 -08:00
Girish Ramakrishnan
5166cd788b
More information
2019-02-11 09:30:46 -08:00
Girish Ramakrishnan
de89d41e72
Make the notifications more informative
2019-02-10 21:00:32 -08:00
Girish Ramakrishnan
3dd5526938
More 3.5.1 changes
2019-02-09 21:38:36 -08:00
Girish Ramakrishnan
a88893b10a
remove/inject backups secret fields
...
follow same pattern as dns code
fixes #615
2019-02-09 20:44:05 -08:00
Girish Ramakrishnan
51d1794e88
only inject fields if provider matches
...
atleast, the gcdns backend will crash otherwise
2019-02-09 17:59:32 -08:00
Girish Ramakrishnan
95e8fc73e6
Use black circle
2019-02-09 17:33:52 -08:00
Johannes Zellner
96974ab439
Make secret placeholder just stars
2019-02-09 19:16:56 +01:00
Johannes Zellner
127b22d7ce
Add dns interface api to inject hidden files for verification
2019-02-09 19:09:51 +01:00
Johannes Zellner
ca962e635e
Add provider netcup-image
2019-02-09 18:01:31 +01:00
Johannes Zellner
a70cc97b8e
namecheap apiKey is now token
2019-02-09 17:43:23 +01:00
Johannes Zellner
79ae75030c
move caas certificate key removal to the provider backend
2019-02-09 11:59:37 +01:00
Johannes Zellner
32f8a52c2b
add provider specific removePrivateFields to redact tokens and secrets
2019-02-09 11:59:37 +01:00
Johannes Zellner
d1a1f7004b
Do not send out emails for out of disk
...
We rely now on notifications. We should hover send emails about critical
new notifications. Lets make the admin go to the dashboard to check the
situation.
2019-02-09 11:57:31 +01:00
Girish Ramakrishnan
52289568bf
backups: omit the key and secret fields
...
part of #615
2019-02-08 22:21:28 -08:00
Girish Ramakrishnan
dada79cf65
domains: do not return secret keys in api responses
...
part of #615
2019-02-08 21:58:38 -08:00
Girish Ramakrishnan
139a2bac1a
namecheap: apiKey -> token
...
all token/secret/credentials will not be returned in upcoming change
2019-02-08 20:48:51 -08:00
Girish Ramakrishnan
3e4eaeab35
namecheap: do not use global object
...
if we have multiple namecheap, it doesn't work.
2019-02-08 20:21:16 -08:00
Girish Ramakrishnan
484171dd1b
namecheap: typo
2019-02-08 19:09:28 -08:00
Girish Ramakrishnan
1c69b1695a
lint
2019-02-08 11:24:33 -08:00
Girish Ramakrishnan
7cfba0e176
Fix notification tests
2019-02-08 11:22:15 -08:00
Girish Ramakrishnan
ade2b65a94
make mail test pass
2019-02-08 11:08:14 -08:00
Girish Ramakrishnan
950a6d4c5d
Add restriction on max password length
2019-02-08 09:57:07 -08:00
Girish Ramakrishnan
19348ef205
Fix links in motd
2019-02-07 14:07:30 -08:00
Girish Ramakrishnan
5662b124e0
Add a digitalocean-mp provider
2019-02-06 16:15:36 -08:00
Girish Ramakrishnan
5c1307f6f2
bump license years
2019-02-06 15:38:07 -08:00
Girish Ramakrishnan
2105b2ecdb
Run MX and DMARC checks only if mail is enabled
2019-02-06 15:23:41 -08:00
Girish Ramakrishnan
d05bf9396d
Periodically check mail status as well
...
Fixes #612 , #575
2019-02-06 14:58:45 -08:00
Girish Ramakrishnan
5b22822ac3
More 3.5.1 changes
2019-02-06 11:49:35 -08:00
Girish Ramakrishnan
e08e1418e5
3.5.1 changes
2019-02-06 11:38:36 -08:00
Girish Ramakrishnan
31d0a5c40e
run system checks immediately post activation
...
this will notify about backup configuration
2019-02-06 11:15:46 -08:00
Girish Ramakrishnan
89446d56e0
Fix exports
2019-02-06 11:09:34 -08:00
Johannes Zellner
bbcad40fcf
Also collect the real box logs from logfile on crash
2019-02-06 17:05:25 +01:00
Johannes Zellner
70db169976
eventId in notifications may be null
2019-02-06 16:28:51 +01:00
Johannes Zellner
abc867935b
Add backup configuration check together with out of disk check cron job
2019-02-06 15:47:56 +01:00
Johannes Zellner
2bb85dc16c
Add out of disk and backup config warning notification handler
2019-02-06 15:47:31 +01:00
Johannes Zellner
00f4bf3d16
Add notificationdb.upsert() which clears ack field and matches by userId and title
2019-02-06 15:46:58 +01:00
Johannes Zellner
0cca838db9
Allow eventId in notifications table to be null
2019-02-06 14:40:09 +01:00
Girish Ramakrishnan
abc8e1c377
improve motd a bit more
2019-02-05 16:58:24 -08:00
Girish Ramakrishnan
de67b6bc0c
better motd
2019-02-05 14:58:44 -08:00
Girish Ramakrishnan
058534af21
rename script
2019-02-05 10:27:05 -08:00
Girish Ramakrishnan
ce1b621488
motd: add message to finish setup
2019-02-05 09:57:42 -08:00
Girish Ramakrishnan
4434c7862e
Rename the fields variable
2019-02-05 09:24:16 -08:00
Johannes Zellner
86c4246f75
Do not dump the whole app object into a login event
2019-02-05 16:13:20 +01:00
Johannes Zellner
7dc3fb9854
Only upsert login events
2019-02-05 15:27:43 +01:00
Johannes Zellner
71b0226c54
add more eventlog upsert tests
2019-02-05 14:50:59 +01:00
Johannes Zellner
a18d5bbe34
Add eventlogdb.upsert() for batching once per day
2019-02-05 14:50:59 +01:00
Girish Ramakrishnan
f1352c6ef0
Fix crash
2019-02-04 20:51:26 -08:00
Girish Ramakrishnan
7e6ce1a1ef
Add event to track dashboard update
2019-02-04 20:42:28 -08:00
Girish Ramakrishnan
9f5471ee85
Update mail DNS records on dashboard switch
...
Fixes #613
2019-02-04 20:18:01 -08:00
Girish Ramakrishnan
3bf36d6c93
Add mail.configureMail
2019-02-04 17:10:07 -08:00
Girish Ramakrishnan
38523835fd
parameterize the mailFqdn
2019-01-31 15:27:26 -08:00
Johannes Zellner
4cb2a929a5
Remove unused require
2019-01-30 13:17:30 +01:00
Girish Ramakrishnan
1db14c710b
always send emails from no-reply@dashboard domain
...
Fixes #614
2019-01-29 20:42:21 -08:00
Girish Ramakrishnan
13787629b6
suffix 0 when comparing versions
...
> semver.lte('1.2.3', '1.2.3-1')
false
2019-01-27 14:07:42 -08:00
Girish Ramakrishnan
42c705e362
UPDATE_CONFIG_KEY is unused
2019-01-25 15:59:05 -08:00
Girish Ramakrishnan
4765e4f83c
Add locked flag to domains table
2019-01-25 14:45:45 -08:00
Girish Ramakrishnan
ddffc8a36e
better message
2019-01-25 14:11:38 -08:00
Girish Ramakrishnan
8aec71845b
Add missing else
2019-01-25 10:49:00 -08:00
Girish Ramakrishnan
c01864ccf5
mention outbound
2019-01-25 10:27:44 -08:00
Girish Ramakrishnan
4f839ae44e
better error message for outbound port 25
2019-01-24 15:09:14 -08:00
Girish Ramakrishnan
db6404a7c6
SysInfo.EXTERNAL_ERROR is undefined
2019-01-24 14:58:28 -08:00
Johannes Zellner
93e0acc8e9
Only supply the actual namecheap DNS record arguments
2019-01-24 18:46:19 +01:00
Johannes Zellner
9fa7a48b86
Print result not error
2019-01-24 14:13:41 +01:00
Girish Ramakrishnan
c0b929035f
lint
2019-01-23 21:00:26 -08:00
Johannes Zellner
7612e38695
We do not send out invites on user creation
2019-01-23 17:18:37 +01:00
Johannes Zellner
47329eaebc
Add tests for getting a single eventlog item
2019-01-23 17:11:57 +01:00
Johannes Zellner
f53a951daf
Add route to get single eventlog items
2019-01-23 16:44:45 +01:00
Johannes Zellner
2181137181
Use docker based mysql server for testing with the correct version
2019-01-23 16:18:52 +01:00
Johannes Zellner
6e925f6b99
assert if auditSource is null on user apis
2019-01-23 11:18:31 +01:00
Johannes Zellner
3b5495bf72
The notification rules have changed
...
We do not send out notifications and emails anymore for the user who
performs the action.
2019-01-23 11:10:30 +01:00
Johannes Zellner
3617432113
Fix broken invite sending on user creation
2019-01-23 10:45:13 +01:00
Girish Ramakrishnan
f95beff6d4
Fix the tests
2019-01-22 17:49:53 -08:00
Girish Ramakrishnan
6d365fde14
move datalayout to separate file for tests
2019-01-22 17:35:36 -08:00
Girish Ramakrishnan
b16ff33688
more changes
2019-01-22 11:39:19 -08:00
Girish Ramakrishnan
9d8d0bed38
Add mail domain after config is setup
2019-01-22 11:37:18 -08:00
Johannes Zellner
f967116087
We do not require sudo to migrate the db
2019-01-22 19:38:18 +01:00
Johannes Zellner
721352c5aa
Revert "Check for sudo access of root user in cloudron-setup"
...
We will remove the sudo requirement instead
This reverts commit e5a04e8d38 .
2019-01-22 19:33:36 +01:00
Johannes Zellner
496ba986bf
Add missing wait() function for namecheap backend
2019-01-22 12:12:46 +01:00
Johannes Zellner
101a3b24ce
Fix property passing for namecheap.del()
2019-01-22 12:04:17 +01:00
Johannes Zellner
201dc570cd
Fix namecheap nameserver test
2019-01-22 11:56:56 +01:00
Girish Ramakrishnan
ff359c477f
acme: Wait for 5mins
...
often, let's encrypt is failing to get the new DNS. not sure why
2019-01-21 10:45:43 -08:00
Johannes Zellner
74cb8d9655
Bring namecheap dns backend up to speed with the new api layout
2019-01-21 14:36:21 +01:00
Johannes Zellner
91d0710e04
Update package lock file
2019-01-21 14:27:16 +01:00
Johannes Zellner
0cc3f08ae7
Add missing requires for scaleway sysinfo backend
2019-01-21 14:26:56 +01:00
Tomer S
ac391bfc17
Added NameCheap as option for DNS
2019-01-21 12:59:08 +00:00
Johannes Zellner
e5a04e8d38
Check for sudo access of root user in cloudron-setup
2019-01-21 13:33:19 +01:00
Johannes Zellner
8cc07e51bf
Fix up notification tests
2019-01-21 08:51:26 +01:00
Girish Ramakrishnan
4b7090cf7c
Be paranoid about the data dir location
2019-01-20 11:40:31 -08:00
Girish Ramakrishnan
8c8cc035ab
Generate fsmetadata correctly
2019-01-19 21:45:54 -08:00
Girish Ramakrishnan
4b93d30ec0
Send correct error message for dataDir conflict
2019-01-19 21:24:38 -08:00
Girish Ramakrishnan
d8ff2488a3
Make syncer work with a layout
2019-01-19 20:39:49 -08:00
Johannes Zellner
b771df88da
Ensure we write process crash logs to disk
2019-01-19 15:41:47 +01:00
Johannes Zellner
54e237cec8
Set info string if no crash logs can be found
2019-01-19 15:23:54 +01:00
Johannes Zellner
b5c848474b
Ensure notifications attached to events are deleted as well
2019-01-19 14:53:58 +01:00
Johannes Zellner
dae52089e3
Patch auditSource if owner is creating himself an account
2019-01-19 14:34:49 +01:00
Johannes Zellner
4c4f3d04e9
Fix users tests
2019-01-19 14:25:59 +01:00
Johannes Zellner
e8674487f2
Remove . makes it harder to doubleclick select and paste
2019-01-19 13:33:03 +01:00
Johannes Zellner
e2fadebf64
Rename notifications.unexpectedExit() to notifications.processCrash()
2019-01-19 13:31:31 +01:00
Johannes Zellner
d3331fea7f
Send emails for apptask crash
2019-01-19 13:30:24 +01:00
Johannes Zellner
bdcd9e035c
Add missing eventId arg
2019-01-19 13:27:45 +01:00
Johannes Zellner
7f3453ce5c
Crashnotifier is now only used for systemd unit crashes (only box)
2019-01-19 13:23:49 +01:00
Johannes Zellner
ed7a7bc879
Use eventlog directly for apptask crashes
2019-01-19 13:23:18 +01:00
Johannes Zellner
5a6b8222df
Pass down eventId to notifications
2019-01-19 13:22:29 +01:00
Johannes Zellner
3262486a96
Add eventId to notifications table
2019-01-19 13:21:09 +01:00
Johannes Zellner
c73b30556f
Remove unused require
2019-01-19 12:36:46 +01:00
Johannes Zellner
2ec89d6a20
Fix typo
2019-01-19 12:24:04 +01:00
Girish Ramakrishnan
a0b69df20d
Add DataLayout class to help with path xforms
2019-01-18 17:13:25 -08:00
Girish Ramakrishnan
57aa3de9bb
typo
2019-01-18 15:18:46 -08:00
Girish Ramakrishnan
38a4c1aede
Fixup volume management
...
Fixes related to removing directory and directory perms
2019-01-18 15:18:42 -08:00
Girish Ramakrishnan
fcc77635c2
retry must wrap the download function as well
2019-01-18 14:31:30 -08:00
Girish Ramakrishnan
25be1563e1
Update mail container
2019-01-18 14:31:30 -08:00
Girish Ramakrishnan
4a9b0e8db6
Remove all app containers before removing volume
...
If volume location changes, we re-create the volume. However, volume
can only be removed if all the containers using it are deleted. For
example, the scheduler might be running a container using it.
2019-01-17 23:56:31 -08:00
Girish Ramakrishnan
ab35821b59
saveFsMetadata: make it work with a layout
2019-01-17 14:55:37 -08:00
Girish Ramakrishnan
14439ccf77
mount points cannot be removed
2019-01-17 14:55:37 -08:00
Girish Ramakrishnan
5ddfa989d0
setupLocalStorage should remove old volume
2019-01-17 14:50:43 -08:00
Girish Ramakrishnan
a915348b22
Return correct error code when already locked
2019-01-17 10:58:38 -08:00
Girish Ramakrishnan
a7fe35513a
Ubuntu 16 needs MemoryLimit
...
systemd[1]: [/etc/systemd/system/box.service:25] Unknown lvalue 'MemoryMax' in section 'Service'
2019-01-17 09:28:35 -08:00
Johannes Zellner
701024cf80
Send app down notification through eventlog
2019-01-17 17:26:58 +01:00
Johannes Zellner
4ecb0d82e7
Handle oom notification through eventlog
2019-01-17 15:31:34 +01:00
Johannes Zellner
5279be64d0
Skip notify performer or user operated on
2019-01-17 13:51:10 +01:00
Johannes Zellner
b9c3e85f89
Trigger user notifications through eventlog api only
2019-01-17 13:12:26 +01:00
Girish Ramakrishnan
8aaa671412
Add more changes
2019-01-16 21:52:02 -08:00
Girish Ramakrishnan
873ebddbd0
write admin config on dashboard switch
2019-01-16 21:51:06 -08:00
Girish Ramakrishnan
13c628b58b
backups (tgz): work with a layout
...
this will allow us to place the localstorage directory in an arbitrary
location
2019-01-16 12:52:04 -08:00
Girish Ramakrishnan
3500236d32
sync concurrency cannot be very high
2019-01-15 20:44:09 -08:00
Girish Ramakrishnan
2f881c0c91
log download errors
2019-01-15 12:01:12 -08:00
Girish Ramakrishnan
9d45e4e0ae
refactor: make removeVolume not clear
2019-01-15 09:46:24 -08:00
Johannes Zellner
13fac3072d
Support username search in user listing api
2019-01-15 17:21:40 +01:00
Girish Ramakrishnan
6d8fdb131f
remove unused constant
2019-01-14 14:37:43 -08:00
Girish Ramakrishnan
ee65089eb7
s3: make copying and uploading significantly faster
2019-01-14 13:47:07 -08:00
Girish Ramakrishnan
40c7d18382
Fix upload progress message
2019-01-14 12:23:03 -08:00
Girish Ramakrishnan
3236a9a5b7
backup: retry rsync file downloads
...
fixes #608
2019-01-14 11:57:10 -08:00
Girish Ramakrishnan
d0522d7d4f
backups: retry tgz downloads
...
Part of #608
2019-01-14 11:36:11 -08:00
Girish Ramakrishnan
aef6b32019
Update mail container with the spf fixes
2019-01-14 10:32:55 -08:00
Girish Ramakrishnan
11b4c886d7
Add changes
2019-01-14 09:58:55 -08:00
Johannes Zellner
3470252768
Add user pagination to rest api
2019-01-14 16:39:20 +01:00
Johannes Zellner
1a3d5d0bdc
Fix linter issues
2019-01-14 16:26:27 +01:00
Johannes Zellner
05f07b1f47
Add paginated user listing on the db level
2019-01-14 16:08:55 +01:00
Girish Ramakrishnan
898f1dd151
Make volume logic work with absolute paths
2019-01-13 21:12:22 -08:00
Girish Ramakrishnan
17ac6bb1a4
script is not called from redis addon anymore
2019-01-13 19:04:32 -08:00
Girish Ramakrishnan
f05bed594b
remove redundant assert
2019-01-13 16:06:54 -08:00
Girish Ramakrishnan
e63b67b99e
resolve any boxdata symlink
2019-01-13 15:17:02 -08:00
Girish Ramakrishnan
efbc045c8a
Add event for tracking dyndns changes
2019-01-12 15:24:22 -08:00
Girish Ramakrishnan
172d4b7c5e
backup: store cleanup result properly
2019-01-12 15:17:04 -08:00
Girish Ramakrishnan
8b9177b484
disallow downgrade of App Store apps
...
We hit this interesting case:
1. Dashboard showed update indicator for an app of v1. indicator is saying v2 is available.
2. In the meantime, the cron updated the app from v1 to v2 and then to v3 (i.e updates applied)
3. Dashboard for whatever reason (internet issues/laptop suspend) continues to show v2 update indicator.
This is despite the update logic clearing the update available notification.
4. Use clicked updated indicator on the updated app. App updates to an old version v2!
2019-01-11 14:19:32 -08:00
Girish Ramakrishnan
2acb065d38
Track what the the backup cleaner removed
2019-01-11 14:09:43 -08:00
Girish Ramakrishnan
0b33b0b6a2
task: result can be json
2019-01-11 14:02:18 -08:00
Girish Ramakrishnan
0390891280
Fix test
2019-01-11 13:36:02 -08:00
Girish Ramakrishnan
9203534f67
get app object in start of update func
2019-01-11 13:28:39 -08:00
Girish Ramakrishnan
e15d11a693
eventlog: add the old and new manifest in restore
2019-01-11 12:27:42 -08:00
Girish Ramakrishnan
c021d3d9ce
backup: add retry only if > 1
2019-01-11 11:07:19 -08:00
Girish Ramakrishnan
ea3cc9b153
Fix error message
2019-01-11 10:58:51 -08:00
Girish Ramakrishnan
3612b64dae
gpg is in different packages in ubuntu
2019-01-11 10:20:28 -08:00
Girish Ramakrishnan
79f9180f6b
run backup cleanup as a task
2019-01-10 16:07:06 -08:00
Girish Ramakrishnan
766ef5f420
remove spurious argument
2019-01-10 16:02:15 -08:00
Girish Ramakrishnan
bdbb9acfd0
lint
2019-01-10 10:51:31 -08:00
Johannes Zellner
6bdac3aaec
Add missing -y in cloudron-setup
2019-01-10 15:28:56 +01:00
Johannes Zellner
14acdbe7d1
Use notifications api for unexpected process exits
2019-01-10 14:30:00 +01:00
Johannes Zellner
895280fc79
Remove unused function mailUserEventToAdmins()
2019-01-10 13:32:39 +01:00
Johannes Zellner
83ae303b31
Skip notifications for user actions against the same user
2019-01-10 13:21:26 +01:00
Johannes Zellner
cc81a10dd2
Add more notification/mailer wrapper
2019-01-10 12:00:04 +01:00
Girish Ramakrishnan
6e3600011b
Update mail container sha
2019-01-09 16:31:53 -08:00
Girish Ramakrishnan
2b07b5ba3a
Add mail container that logs events
2019-01-09 16:18:53 -08:00
Girish Ramakrishnan
7b64b2a708
do-spaces: Limit download concurrency
...
https://www.digitalocean.com/community/questions/rate-limiting-on-spaces?answer=40441
2019-01-09 15:09:29 -08:00
Girish Ramakrishnan
810f5e7409
Fix line param parsing
...
lines is a positive integer or -1 to disable line limiting. The
default value is 10 if no argument is given.
Fixes #604
2019-01-08 13:23:29 -08:00
Girish Ramakrishnan
1affb2517a
Protect the updater service from the oom killer
...
Fixes #576
2019-01-08 10:51:47 -08:00
Johannes Zellner
85ea9b3255
Rework the oom notification
2019-01-08 14:37:58 +01:00
Johannes Zellner
07e052b865
Fix notifications route to return all notifications if nothing specified
2019-01-08 13:46:18 +01:00
Girish Ramakrishnan
bc0ea740f1
Add more changes
2019-01-07 09:43:48 -08:00
Johannes Zellner
841b4aa814
Can't pass booleans over query
2019-01-07 17:30:28 +01:00
Johannes Zellner
9989478b91
Add all admins action helper
2019-01-07 14:56:49 +01:00
Johannes Zellner
d3227eceff
Give better oom notification title
2019-01-07 14:05:42 +01:00
Johannes Zellner
5f71f6987c
Create notifications for app down event
2019-01-07 13:01:27 +01:00
Johannes Zellner
86dbb1bdcf
Create notification for oom events
2019-01-07 12:57:57 +01:00
Girish Ramakrishnan
77ac8d1e62
Add changes
2019-01-06 19:23:44 -08:00
Girish Ramakrishnan
e62d417324
Set OOMScoreAdjust to stop box code from being killed
...
OOMScoreAdjust can be set between -1000 and +1000. This value is inherited
and systemd has no easy way to control this for children (box code also
runs as non-root, so it cannot easily set it for the children using
/proc/<pid>/oom_score_adj.
When set to -1000 and the process reaches the MemoryMax, it seems the kernel
does not kill any process in the cgroup and it spins up in high memory. In fact,
'systemctl status <service>' stops displaying child process (but ps does), not sure
what is happenning.
Keeping it -999 means that if a child process consumed a lot of memory, the kernel
will kill something in the group. If the main box itself is killed, systemd will
kill it at all because of KillMode=control-group.
Keeping it -999 also saves box service group being killed relative to other docker
processes (apps and addons).
Fixes #605
2019-01-06 19:16:53 -08:00
Girish Ramakrishnan
b8f85837fb
cloudflare: do not wait for dns if proxied
2019-01-05 18:27:10 -08:00
Girish Ramakrishnan
2237d7ef8a
Fix test
2019-01-05 00:45:01 -08:00
Girish Ramakrishnan
65210ea91d
rework dns api to take domainObject
...
the DNS backends require many different params, it's just easier to
pass them all together and have backends do whatever.
For example, route53 API requires the fqdn. Some other backends require just the
"part" to insert.
* location - location in the database (where app is installed)
* zoneName - the dns zone name
* domain - domain in the database (where apps are installed into)
* name/getName() - this returns the name to insert in the DNS based on zoneName/location
* fqdn - the fully resolved location in zoneName
verifyDnsConfig also takes a domain object even if it's not in db just so that we can
test even existing domain objects, if required. The IP param is removed since it's not
required.
for caas, we also don't need the fqdn hack in dnsConfig anymore
2019-01-04 22:38:12 -08:00
Girish Ramakrishnan
16c1622b1f
Make domains.fqdn take config and domain separately
...
This way it can be used in the dns backends which don't have the domain object
2019-01-04 14:11:29 -08:00
Girish Ramakrishnan
635557ca45
Fix failing tests
2019-01-04 10:56:56 -08:00
Johannes Zellner
b9daa62ece
Add notification tests for business logic
2019-01-04 17:13:52 +01:00
Girish Ramakrishnan
808be96de3
gpg is not installed on gandi
2019-01-03 12:28:30 -08:00
Girish Ramakrishnan
1e93289f23
cloudflare: preserve proxied parameter
2019-01-03 10:42:09 -08:00
Girish Ramakrishnan
ccf0f84598
cloudflare: getDnsRecordsByZoneId -> getDnsRecords
...
This misleading name creates much confusion
2019-01-03 10:39:10 -08:00
Girish Ramakrishnan
3ec4c7501d
cloudflare: rename confusing callback param
2019-01-03 10:39:10 -08:00
Girish Ramakrishnan
f55034906c
Set oldConfig.fqdn
...
Without this, the re-configure task unregisters the domain since
it thinks the domain has changed
2019-01-03 10:08:55 -08:00
Girish Ramakrishnan
cbd3c60c5d
Use a relay token for no-reply emails
2018-12-28 13:32:59 -08:00
Girish Ramakrishnan
2037fec878
new mail container does not require default domain
2018-12-28 12:12:34 -08:00
Girish Ramakrishnan
772fd1b563
Add cloudron-support to path
2018-12-26 19:42:45 -08:00
Girish Ramakrishnan
d9309cb215
Use a separate event for tarExtract
2018-12-22 21:23:20 -08:00
Girish Ramakrishnan
433c34e4ce
better debugs
2018-12-22 21:23:17 -08:00
Girish Ramakrishnan
68a4769f1e
Fix typo
2018-12-22 19:53:50 -08:00
Girish Ramakrishnan
248569d0a8
awscli is unused
2018-12-21 12:41:43 -08:00
Girish Ramakrishnan
5146e39023
contabo: fix DNS
...
we disable the DNS servers in initializeBaseImage. On normal VPS,
unbound seems to start by itself but on contabo it doesn't because
the default unbound config on ubuntu does not work without ip6
2018-12-21 11:44:39 -08:00
Girish Ramakrishnan
ecd1d69863
install software-properties-common
...
on contabo,
root@vmi232343:~# add-apt-repository
Command 'add-apt-repository' not found, but can be installed with:
apt install software-properties-common
2018-12-21 11:28:21 -08:00
Girish Ramakrishnan
06219b0c58
add contabo
2018-12-21 11:09:20 -08:00
Girish Ramakrishnan
0a74bd1718
add note on saveFsMetadata
2018-12-20 15:11:15 -08:00
Girish Ramakrishnan
8a5b24afff
Make tarPack and tarExtract have consistent style
2018-12-20 11:49:37 -08:00
Girish Ramakrishnan
6bdd7f7a57
Give more memory to the control group
...
this allows backups to take more memory as part of the systemd group.
the node box code itself runs under little more constraints using
--max_old_space_size=150
2018-12-20 10:44:42 -08:00
Girish Ramakrishnan
1bb2552384
move feedback test
2018-12-19 14:32:54 -08:00
Girish Ramakrishnan
b5b20452cc
Fix reverseProxy.getCertificate API
2018-12-19 14:20:48 -08:00
Girish Ramakrishnan
4a34703cd3
rework code to enable/disable remote support
...
we had a generic ssh key management api. this was causing issues because
the ssh format is more complicated than what we had implemented. currently,
the only use case we have is to add our ssh key.
Fixes #600
2018-12-19 13:35:20 -08:00
Girish Ramakrishnan
a8d9b57c47
remove unused tar.js
2018-12-19 11:58:08 -08:00
Girish Ramakrishnan
52bbf3be21
move support to separate file
2018-12-19 10:54:33 -08:00
Girish Ramakrishnan
3bde0666e2
volume -> app data directory
...
the appdata directory is just a place to "hold" various parts
of an app together for backup purposes
2018-12-18 21:16:25 -08:00
Girish Ramakrishnan
b5374a1f90
3.5 changes
2018-12-18 15:33:36 -08:00
Girish Ramakrishnan
18b8d23148
Add progress percent for prepareDashboardDomain
2018-12-18 15:26:37 -08:00
Girish Ramakrishnan
f51b1e1b6b
installationProgress must contain the percent
2018-12-17 15:42:40 -08:00
Johannes Zellner
ffc4f9d930
Fix typo
2018-12-17 17:40:53 +01:00
Johannes Zellner
5680fc839b
Send new user notification via notifications api
2018-12-17 17:35:19 +01:00
Johannes Zellner
57d435ccf4
Add basic notification rest api
2018-12-17 16:37:19 +01:00
Johannes Zellner
4b90b8e6d8
Add notificationdb tests
2018-12-17 15:53:00 +01:00
Johannes Zellner
fc8dcec2bb
Add notificationdb table and db wrapper
2018-12-17 15:52:52 +01:00
Girish Ramakrishnan
a5245fda65
3.4.3 changes
...
(cherry picked from commit fd723cf7eb )
2018-12-16 21:08:07 -08:00
Girish Ramakrishnan
4eec2a6414
Add LDAP_MAILBOXES_BASE_DN
...
this got removed by mistake in the email refactor assuming this
was unused (but it is used by sogo)
(cherry picked from commit 6589ba0988 )
2018-12-16 21:06:52 -08:00
Girish Ramakrishnan
a536e9fc4b
track last oom time using a global variable
...
because it was a local variable, we were just sending out oom mails
like crazy
also, fixes an issue that if docker.getEvents gets stuck because
docker does not respond then we do not do any health monitoring.
i guess this can happen if the docker API gets stuck.
2018-12-16 20:52:42 -08:00
Girish Ramakrishnan
a961407379
Fix setup and restore to have a task style API
2018-12-16 11:02:49 -08:00
Girish Ramakrishnan
1fd6c363ba
3.4.2 changes
...
(cherry picked from commit 2d7f0c3ebe )
2018-12-15 09:35:35 -08:00
Girish Ramakrishnan
0a7f1faad1
Better progress message
2018-12-14 23:20:32 -08:00
Girish Ramakrishnan
e79d963802
do not append to task log file
2018-12-14 22:22:57 -08:00
Girish Ramakrishnan
1b4bbacd5f
3.4.1 changes
...
(cherry picked from commit a66bc7192d )
2018-12-14 22:22:47 -08:00
Girish Ramakrishnan
447c6fbb5f
cloudron.conf has to writable
2018-12-14 16:32:51 -08:00
Girish Ramakrishnan
78acaccd89
wording
2018-12-14 16:32:51 -08:00
Girish Ramakrishnan
bdf9671280
Split dashboard dns setup and db operations
...
The dns setup is now a task that we can wait on. Once that task
is done, we can do db operations to switch the domain in a separate
route
2018-12-14 09:57:28 -08:00
Girish Ramakrishnan
357e44284d
Write nginx config into my.<domain>.conf
...
This way we can switch the domain as an independent task that does
not affect the existing admin conf
2018-12-14 09:20:10 -08:00
Girish Ramakrishnan
9dced3f596
Add domains.setupAdminDnsRecord
2018-12-14 09:20:10 -08:00
Girish Ramakrishnan
63e3560dd7
on startup, only re-generate the admin config
...
should not try to get certificates on startup
2018-12-14 09:20:06 -08:00
Girish Ramakrishnan
434525943c
move appconfig.ejs
2018-12-13 21:53:31 -08:00
Girish Ramakrishnan
f0dbf2fc4d
Make reverseProxy.configureAdmin not use config
...
This way we can set things up before modifying config for dashboard switch
2018-12-13 21:42:48 -08:00
Girish Ramakrishnan
3137dbec33
CONFIG_DIR is not used anymore
2018-12-13 19:55:13 -08:00
Girish Ramakrishnan
e71a8fce47
add test list tasks
2018-12-13 13:12:45 -08:00
Girish Ramakrishnan
ff550e897a
caas: remove box plan change routes
2018-12-13 09:41:52 -08:00
Johannes Zellner
10034fcbba
Function is called tasks.removePrivateFields
2018-12-13 13:50:53 +01:00
Girish Ramakrishnan
36f8ce453f
No need to reserve .app suffix
2018-12-12 15:07:49 -08:00
Girish Ramakrishnan
c2e40acb2c
Fixup configuration and validation of mailboxName
2018-12-12 14:40:26 -08:00
Girish Ramakrishnan
82b1bb668d
Fix tests
2018-12-11 16:26:19 -08:00
Girish Ramakrishnan
935a8258a6
task API: remove arg from response
...
it can contain sensitive information
2018-12-11 16:22:53 -08:00
Girish Ramakrishnan
fa483e5806
rename to listByTypePaged
2018-12-11 16:14:07 -08:00
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
Johannes Zellner
f5f92fbb03
Rename groups table to userGroups
2018-12-03 12:24:04 +01:00
Girish Ramakrishnan
be0876603c
ADDON_STATUS_* -> SERVICE_STATUS_*
2018-12-02 19:40:27 -08:00
Girish Ramakrishnan
7c1ef143f9
Add unbound service
2018-12-02 19:38:34 -08:00
Girish Ramakrishnan
6d128595e7
all container related functionality is 'service'
2018-12-02 19:12:43 -08:00
Girish Ramakrishnan
2f55abfc60
Fixup logs routes as well
2018-12-02 19:07:12 -08:00
Girish Ramakrishnan
f93044ac3b
move routes to services.js
2018-12-02 18:46:34 -08:00
Girish Ramakrishnan
7ed422a3c1
Split out service related functions
2018-12-02 18:45:39 -08:00
Girish Ramakrishnan
823b3b8aa8
Rename addon route to service
...
service are the containers and other things like unbound, nginx.
addons are app development hooks.
2018-12-02 17:56:11 -08:00
Girish Ramakrishnan
9a701560f4
Fix email status
2018-12-01 21:50:28 -08:00
Girish Ramakrishnan
9800154d01
Use latest mail container (healthcheck route)
2018-12-01 21:50:24 -08:00
Girish Ramakrishnan
4b3f18ccdb
Fix messages in update.sh
2018-11-30 21:18:36 -08:00
Girish Ramakrishnan
840d78b2f4
run update as a task, so it is cancelable
2018-11-30 21:04:24 -08:00
Girish Ramakrishnan
b409fd775d
Revert "Fix crash"
...
This reverts commit 12a5965740 .
Really fix crash
2018-11-30 19:10:44 -08:00
Girish Ramakrishnan
dbcfb20fab
Remove shebang hack, this does not apply anymore
2018-11-30 17:10:28 -08:00
Girish Ramakrishnan
12a5965740
Fix crash
2018-11-30 17:10:28 -08:00
Girish Ramakrishnan
006ab75433
More changes
2018-11-30 17:10:28 -08:00
Girish Ramakrishnan
c72ea91743
make task args an object and put it in eventlog
2018-11-30 14:57:24 -08:00
Girish Ramakrishnan
f39ce20580
better name for task functions
2018-11-30 14:41:11 -08:00
Girish Ramakrishnan
b5c59e6b7d
Add args to tasks table
2018-11-30 14:12:24 -08:00
Girish Ramakrishnan
b0ecdcc8b6
Fix another crash
2018-11-30 10:03:16 -08:00
Girish Ramakrishnan
8e1560f412
Fix crash in apptask
2018-11-30 09:48:26 -08:00
Girish Ramakrishnan
df927eae74
move backupupload.js to scripts
...
it is just a sudo helper
2018-11-29 23:30:56 -08:00
Girish Ramakrishnan
30aea047e3
startTask now takes args
2018-11-29 23:28:26 -08:00
Girish Ramakrishnan
cbcadaa449
Return an active field to indicate if task is actually running
2018-11-29 23:12:03 -08:00
Girish Ramakrishnan
9f4226093b
Handle bad state if task is already stopped
2018-11-29 23:10:15 -08:00
Girish Ramakrishnan
fca0e897b2
Add tasks.startTask
2018-11-29 16:21:04 -08:00
Girish Ramakrishnan
2f729b56fa
Use result in db instead of ipc
2018-11-29 15:34:05 -08:00
Girish Ramakrishnan
d9f3f64c76
Store result and error message separately
2018-11-29 14:45:28 -08:00
Girish Ramakrishnan
e8fa909c2f
Bump graphite since the container port changed
2018-11-29 09:33:46 -08:00
Johannes Zellner
44f6636653
Add more changes
2018-11-29 16:44:44 +01:00
Johannes Zellner
148a0d0fc6
Add memory usage for addon status api
2018-11-28 12:33:24 +01:00
Girish Ramakrishnan
632ba69663
Make restore/download logic have progress callbacks
2018-11-27 12:13:16 -08:00
Girish Ramakrishnan
b2465dd2ee
Set the backup task progress in the task only
2018-11-27 12:12:27 -08:00
Girish Ramakrishnan
e56b87766b
backupApp should not set backup task progress
2018-11-27 11:06:03 -08:00
Girish Ramakrishnan
f7ca2e416a
Add progress callback for snapshotting
2018-11-27 11:03:58 -08:00
Girish Ramakrishnan
002f68b0a1
Add progress info during backup rotation
2018-11-27 10:51:35 -08:00
Girish Ramakrishnan
aa31be5c5a
backup: make upload progress available with callback+ipc
2018-11-27 10:42:34 -08:00
Johannes Zellner
6c0b7017bd
Add some 3.4 changes
2018-11-27 14:41:03 +01:00
Girish Ramakrishnan
581774e001
Use ipc to pass back the result
2018-11-26 20:39:52 -08:00
Girish Ramakrishnan
3847a6616e
No need to track backup time since it is killable now
2018-11-26 20:39:20 -08:00
Girish Ramakrishnan
48fbe28355
Make upload task abort when parent dies
2018-11-26 19:11:30 -08:00
Girish Ramakrishnan
e3ee5bc1d5
lint
2018-11-26 15:55:00 -08:00
Girish Ramakrishnan
a2da9bea58
backup: use ipc for communicating with upload process
2018-11-26 15:21:48 -08:00
Johannes Zellner
e4512e12c5
Add --help for cloudron-support and make ssh key enabling optional
2018-11-26 15:28:11 +01:00
Johannes Zellner
114f48fb17
Remove leftover console.log()
2018-11-26 14:50:10 +01:00
Johannes Zellner
289e018160
Fix comment text
2018-11-26 08:19:24 +01:00
Johannes Zellner
cb6699eeed
Add api to check if the server needs a reboot
2018-11-26 08:19:24 +01:00
Girish Ramakrishnan
802011bb7e
Fix args to shell.sudo
2018-11-25 14:57:51 -08:00
Girish Ramakrishnan
6cd8e769be
remove all uses of sudoSync
2018-11-25 14:43:29 -08:00
Girish Ramakrishnan
9f6f67d331
ssh: remove use of shell.sudoSync
2018-11-25 14:27:06 -08:00
Johannes Zellner
161a8fe2bf
Make docker restartable
2018-11-24 22:12:28 +01:00
Girish Ramakrishnan
b9c9839bb7
apparmor is always enabled on all ubuntu
2018-11-23 13:11:31 -08:00
Girish Ramakrishnan
76edbee48c
Better error message
2018-11-23 13:11:15 -08:00
Girish Ramakrishnan
4142d7a050
Fix error handling of all the execSync usage
2018-11-23 13:11:15 -08:00
Girish Ramakrishnan
a0306c69e1
remove unused acme1.js
...
it got merged to acme2.js
2018-11-23 13:11:15 -08:00
Girish Ramakrishnan
31823f6282
Check if result is not null
2018-11-23 13:11:15 -08:00
Girish Ramakrishnan
9b4fffde29
Use shell.exec instead of shell.execSync
2018-11-23 11:18:45 -08:00
Girish Ramakrishnan
cce03e250d
these can just be debugs
2018-11-22 18:05:41 -08:00
Girish Ramakrishnan
9b32cad946
typoe
2018-11-22 17:26:06 -08:00
Girish Ramakrishnan
2877a1057e
Add CLOUDRON_PROXY_IP
2018-11-22 16:50:02 -08:00
Johannes Zellner
e2debe3c39
Add starting addon state when we wait for healthcheck
2018-11-22 21:54:31 +01:00
Johannes Zellner
f54ab11f18
Handle mail related addon logs
2018-11-22 12:38:50 +01:00
Johannes Zellner
b560e281d0
share container addon status code
2018-11-22 12:38:50 +01:00
Girish Ramakrishnan
3bb4ef5727
Some servers can be very slow starting databases
2018-11-21 09:49:08 -08:00
Johannes Zellner
900c008d20
Only allow addon restarts, no start+stop
2018-11-21 16:06:58 +01:00
Johannes Zellner
c1183a09a8
Add addon configure route
2018-11-21 15:47:41 +01:00
Girish Ramakrishnan
e04b7b55b0
Remove upgrade flag
...
This is not used since ages since we changed our update methodology
2018-11-20 10:29:54 -08:00
Johannes Zellner
329cc80933
Send memory settings on addon status
2018-11-20 16:53:27 +01:00
Johannes Zellner
a13f0706b4
Report addon state detail for further use
2018-11-20 13:11:11 +01:00
Johannes Zellner
55811de4b8
Check for docker ping result
2018-11-20 13:07:41 +01:00
Johannes Zellner
ab456f179e
Check for healthcheck in addon status code
2018-11-20 12:26:33 +01:00
Johannes Zellner
f9d5bcd352
Make getAddonDetails() return AddonsError
2018-11-20 12:12:25 +01:00
Johannes Zellner
6a337884b5
Add start/stop addon code
2018-11-20 11:09:09 +01:00
Johannes Zellner
f953d115da
Fix missing require
2018-11-20 11:09:09 +01:00
Johannes Zellner
88e8fc840f
Fetch basic addon status from docker
2018-11-20 11:09:09 +01:00
Johannes Zellner
d1818e31b0
Add addon status hooks
2018-11-20 11:09:09 +01:00
Johannes Zellner
3f4bf647e8
Allow console.* in the linter config
2018-11-20 11:09:09 +01:00
Johannes Zellner
725a7e6dec
Add missing requires
2018-11-20 11:09:09 +01:00
Johannes Zellner
e08b210001
Add initial addons rest apis
2018-11-20 11:09:09 +01:00
Girish Ramakrishnan
ec08ccb996
move tasks to separate directory
...
these are just wrappers that we use to launch as processes
2018-11-19 21:17:04 -08:00
Girish Ramakrishnan
b47a146c2b
unlock on log failure
2018-11-19 21:12:58 -08:00
Girish Ramakrishnan
14dff27d45
boxUpdateInfo cannot be null here
2018-11-19 21:09:33 -08:00
Girish Ramakrishnan
305a3c94d0
Rework the progress API to use the task progress
2018-11-19 21:06:44 -08:00
Girish Ramakrishnan
218739a6b5
Add tasks table and API
...
progress will be tracked with this table instead of being in-process
like progress.js
2018-11-19 17:37:42 -08:00
Girish Ramakrishnan
390e69c01c
Fix backup API routes
2018-11-19 14:41:16 -08:00
Johannes Zellner
4ef274acf0
Box logs are now in a log file
2018-11-19 19:47:19 +01:00
Girish Ramakrishnan
8267279779
backup can now be stopped
...
track the backup process and killable
2018-11-17 20:31:07 -08:00
Girish Ramakrishnan
6d971b9235
backupupload also logs to stdout now
2018-11-17 19:38:02 -08:00
Girish Ramakrishnan
98dc160886
remove the progress and watchdog timers
...
not needed since we will track these processes now and can be killed
by the user.
2018-11-17 19:38:02 -08:00
Girish Ramakrishnan
a869c88b43
Remove setBackupProgress
...
the upload task can just output to stdout. for progress status, we
can just use a tailstream on the ui side
2018-11-17 19:38:02 -08:00
Girish Ramakrishnan
0b86070fe9
run backuptask as separate process
2018-11-17 19:38:02 -08:00
Girish Ramakrishnan
5c9b6736f0
Remove pruneInfraImages out of platform startup
...
If it fails, it's really OK. Maybe we will have a button to remove
images.
This goes further into step of webadmin always staying up and not
crashing/erroring for cosmetic issues.
2018-11-17 19:35:39 -08:00
Girish Ramakrishnan
fd4057df94
shell.exec -> shell.spawn
2018-11-17 19:26:19 -08:00
Girish Ramakrishnan
1b1945e1f5
Move out graphite from port 8000
...
Port 8000 is used by esxi management service (!)
2018-11-17 19:14:21 -08:00
Girish Ramakrishnan
ebb053b900
add back timestamps to debug output
2018-11-16 14:16:11 -08:00
Girish Ramakrishnan
3381d9b595
Add format to the default backup config
2018-11-16 14:15:20 -08:00
Girish Ramakrishnan
d7a11ef394
runBackupTask -> runBackupUpload
2018-11-16 09:21:07 -08:00
Johannes Zellner
9d40cffabe
Add logrotate config for box logs
2018-11-16 13:14:59 +01:00
Johannes Zellner
de44c63557
box now also logs to a a file instead of journald
2018-11-16 13:05:11 +01:00
Johannes Zellner
ac25477cd7
Ensure we prefix all output with a timestamp
...
note that debug() already does this now on its own in the same format
it does not use console.log but process.stderr
2018-11-16 13:02:37 +01:00
Johannes Zellner
59b86aa090
Stop logging box to journald
2018-11-16 12:15:38 +01:00
Girish Ramakrishnan
6abd48d480
rename backuptask to backupupload
2018-11-15 12:00:51 -08:00
Girish Ramakrishnan
72fc6b8c5a
Fix tests
2018-11-15 12:00:51 -08:00
Girish Ramakrishnan
fcce4a6853
Add note on StandardError
2018-11-15 10:52:31 -08:00
Girish Ramakrishnan
a3b1a2c781
Get the domain correctly from subject
2018-11-15 10:47:20 -08:00
Johannes Zellner
a838a1706f
Fix indentation
2018-11-15 19:26:50 +01:00
Johannes Zellner
a24c9fbafb
Put cloudron-updater (installer.sh) logs persistently to /var/log/
2018-11-15 14:54:12 +01:00
Johannes Zellner
ab255e78c5
Make the cert subject match
2018-11-15 14:18:34 +01:00
Girish Ramakrishnan
2628678d82
3.3.4 changes
2018-11-14 22:11:46 -08:00
Girish Ramakrishnan
eaf9b7f049
Add certificate.new event
2018-11-14 20:47:18 -08:00
Girish Ramakrishnan
b8df4d0b79
bare domains are getting continuously renewed
...
the code is not handling the case where bare domain is not part
of the wildcard SAN.
2018-11-14 20:47:15 -08:00
Girish Ramakrishnan
eb315f34dc
Pass around domainObject
2018-11-14 20:32:14 -08:00
Girish Ramakrishnan
af535757a8
Fix issue where request module was buffering all data
...
when request is give a callback, it will save all the data in memory
to give the data in the response callback
2018-11-14 19:03:27 -08:00
Girish Ramakrishnan
600e030c6d
add a note what the script is about
2018-11-14 10:25:43 -08:00
Girish Ramakrishnan
e86b813551
cloudron-support: use timeout command for docker ps output
2018-11-14 10:22:10 -08:00
Girish Ramakrishnan
af6653dfeb
do not timeout when checking for updates
2018-11-13 10:38:18 -08:00
Johannes Zellner
f93e0c868c
Warn the user if / or /tmp is full
2018-11-13 13:31:49 +01:00
Johannes Zellner
e53aaddc9c
Add 3.3.3 changes
2018-11-13 12:54:40 +01:00
Johannes Zellner
d3ebb99131
Fix apptask concurrency
...
This broke due to async behavior introduced with 1dc649b7a2
2018-11-13 12:54:40 +01:00
Girish Ramakrishnan
82037b70e4
retry apply of platform config
...
it seems that scaling down addons can fail at times. this can happen
if the kernel is busy swapping things etc. so, we do not block the
platform startup for this operation.
Nov 13 05:20:00 localhost dockerd[28831]: time="2018-11-13T05:20:00.365056059Z" level=error msg="Handler for POST /v1.37/containers/mongodb/update returned error: Cannot update container 6532d4a923ce9f10303f2e2aa7f03c35383864f44f3db6abd5c58da3c1a7702f: docker-runc did not terminate sucessfully: failed to write 419430400 to memory.memsw.limit_in_bytes: write /sys/fs/cgroup/memory/docker/6532d4a923ce9f10303f2e2aa7f03c35383864f44f3db6abd5c58da3c1a7702f/memory.memsw.limit_in_bytes: device or resource busy\n: unknown"
Nov 13 05:20:00 localhost node[5486]: box:shell updatemongodb (stderr): Error response from daemon: Cannot update container 6532d4a923ce9f10303f2e2aa7f03c35383864f44f3db6abd5c58da3c1a7702f: docker-runc did not terminate sucessfully: failed to write 419430400 to memory.memsw.limit_in_bytes: write /sys/fs/cgroup/memory/docker/6532d4a923ce9f10303f2e2aa7f03c35383864f44f3db6abd5c58da3c1a7702f/memory.memsw.limit_in_bytes: device or resource busy
2018-11-12 21:58:57 -08:00
Girish Ramakrishnan
323dfb1853
More typos
2018-11-12 10:27:56 -08:00
Girish Ramakrishnan
59b6d2ef66
mail: clear timeout for dns route
2018-11-12 10:25:15 -08:00
Girish Ramakrishnan
7b99167d30
typo
2018-11-12 09:32:02 -08:00
Girish Ramakrishnan
c829f190df
3.3.2 changes
2018-11-11 22:18:46 -08:00
Girish Ramakrishnan
f306f334c0
Update mongodb for invalid index fix
2018-11-11 22:15:51 -08:00
Girish Ramakrishnan
3fb8243264
Add route to trigger app import
2018-11-11 21:58:20 -08:00
Girish Ramakrishnan
b8861b9d78
Use debug instead
2018-11-11 21:57:45 -08:00
Girish Ramakrishnan
61d98ca4ca
give addons more memory when starting up / importing
...
we scale it back after the import is done
2018-11-11 21:45:02 -08:00
Girish Ramakrishnan
a3a22604ba
Mark import errors as app errors
2018-11-11 10:36:11 -08:00
Girish Ramakrishnan
1766c3f6d6
lint
2018-11-11 10:12:51 -08:00
Girish Ramakrishnan
aae259479f
move configure webadmin and status out of setup logic
2018-11-11 09:56:01 -08:00
Girish Ramakrishnan
b640a053e3
Always generate webadmin config on startup
2018-11-11 08:19:24 -08:00
Girish Ramakrishnan
a3cc17705d
Do not remove default.conf and admin.conf when re-configuring apps
2018-11-10 22:02:42 -08:00
Girish Ramakrishnan
78ac1d2a12
Add isCloudronManaged label to containers managed by cloudron
2018-11-10 19:00:03 -08:00
Girish Ramakrishnan
6ec36c9605
Do not crash if platform.start fails
...
With this change, the box code always starts up even if nginx fails,
docker fails etc.
2018-11-10 18:34:37 -08:00
Girish Ramakrishnan
bd2b03876b
Add users.isActivated
...
it's easier to see where we do activation checks
2018-11-10 18:09:00 -08:00
Girish Ramakrishnan
0c5cb9c98f
Remove settings.initialize/uninitialize
...
this simplifies the startup sequence
2018-11-10 14:55:23 -08:00
Girish Ramakrishnan
eddcc6fe27
Fix another test
2018-11-10 01:35:49 -08:00
Girish Ramakrishnan
953b55439c
eventlog: add domain events
2018-11-10 01:25:34 -08:00
Girish Ramakrishnan
e526890e3e
Add a separate disabled event
2018-11-10 00:35:56 -08:00
Girish Ramakrishnan
71e1e2468b
fix test
2018-11-10 00:22:38 -08:00
Girish Ramakrishnan
fcb7c3e82a
fix casing
2018-11-10 00:18:56 -08:00
Girish Ramakrishnan
0d65635bc4
eventlog: add email enabled/disabled events
2018-11-10 00:17:38 -08:00
Girish Ramakrishnan
4aa76a859f
eventlog: mail list add,remove events
2018-11-10 00:17:25 -08:00
Girish Ramakrishnan
003789265c
eventlog: mailbox add,remove events
2018-11-10 00:06:02 -08:00
Girish Ramakrishnan
1bb3b5e51b
addons: refactor code into dumpPath
2018-11-09 12:02:38 -08:00
Girish Ramakrishnan
032ac3ed97
cloudron-provision args
...
zone -> domain
appstore configs -> license
+backup_config
cloudflare* -> dns_config
2018-11-08 21:44:56 -08:00
Girish Ramakrishnan
edc2c25bda
Add libpython
...
On ubuntu 18.04, on hetzner and vultr, collectd does not start without
this.
2018-11-08 16:11:01 -08:00
Girish Ramakrishnan
2fa44879e9
cloudron-support: Add more services
2018-11-08 16:05:37 -08:00
Girish Ramakrishnan
7e27413b29
18.04: Add sudo
...
This was hit on scaleway
2018-11-08 14:47:49 -08:00
Johannes Zellner
77508d180e
Add changes for 3.3.1
2018-11-08 21:51:07 +01:00
Johannes Zellner
111f5a7c99
Update postgres addon to 2.0.2
2018-11-08 20:51:14 +01:00
Johannes Zellner
d2182559e8
change the ssh user detection to rely on SUDO_USER
2018-11-08 19:39:25 +01:00
Johannes Zellner
9fe91cf9cb
Log if we receive SIGINT or SIGTERM
2018-11-08 14:35:22 +01:00
Girish Ramakrishnan
de000648dc
do not chown redis during updates
2018-11-07 15:21:12 -08:00
Girish Ramakrishnan
0958a57c45
Fix path to conf file
2018-11-07 10:37:00 -08:00
Johannes Zellner
9aae0d9d4c
Add initial version of the cloudron-support tool
2018-11-07 17:37:16 +01:00
Girish Ramakrishnan
ccfd385beb
Fix waitForDns
2018-11-05 23:00:55 -08:00
Girish Ramakrishnan
ee6cca5cdf
Make cert an object
2018-11-05 22:39:06 -08:00
Girish Ramakrishnan
0093e840c6
Fix various typos
2018-11-05 21:26:53 -08:00
Girish Ramakrishnan
7c6e5ac32b
newline replace certs for json databag
2018-11-05 21:23:22 -08:00
Girish Ramakrishnan
15039bf293
Fix validation of fallback certs
2018-11-05 21:13:34 -08:00
Girish Ramakrishnan
89b6cd9d1f
cloudron-provision: set tls cert and key
2018-11-05 20:59:29 -08:00
Girish Ramakrishnan
60992405d5
generate cert with correct CN
2018-11-05 20:48:28 -08:00
Girish Ramakrishnan
d96b1cc864
generate fallback cert correctly for hyphenated domains
2018-11-05 19:53:50 -08:00
Girish Ramakrishnan
5165cd8f40
Use debug
2018-11-05 17:36:23 -08:00
Girish Ramakrishnan
9f8b47daa9
domains.fqdn only takes 2 args
2018-11-05 17:35:50 -08:00
Girish Ramakrishnan
9372afad9a
Fix debug
2018-11-05 17:12:04 -08:00
Girish Ramakrishnan
eef6056174
bump timeout of setup route
2018-11-05 16:55:46 -08:00
Girish Ramakrishnan
a1dfc758c6
Fix debug
2018-11-02 17:10:16 -07:00
Girish Ramakrishnan
8caf5cc741
typo
2018-11-02 14:50:45 -07:00
Girish Ramakrishnan
7739f8f174
Set container hostname to something constant
...
currently, it defaults to the container name. apps might use this hostname
for communication with child containers. but this breaks if app gets updated
and gets a new hostname
2018-11-02 14:47:00 -07:00
Girish Ramakrishnan
0618431be7
print the cloudronId on registration
2018-11-01 23:10:26 -07:00
Girish Ramakrishnan
609c4388f0
cloudron-provision: take appstore user id and token
2018-11-01 23:08:26 -07:00
Girish Ramakrishnan
28243956db
Add cert and appstore info to provision script
2018-11-01 22:38:21 -07:00
Girish Ramakrishnan
ff3a4f65dd
autoprovision: register cloudron when provided appstore config
2018-11-01 22:28:51 -07:00
Girish Ramakrishnan
44da148fd1
remove collectd directory again
2018-11-01 20:33:40 -07:00
Girish Ramakrishnan
0b37479838
Add provision script
2018-11-01 20:17:15 -07:00
Girish Ramakrishnan
c09aa2a498
Make LE work with hyphenated domains
2018-11-01 19:08:05 -07:00
Girish Ramakrishnan
00d032616f
More changes
2018-11-01 13:55:27 -07:00
Johannes Zellner
041285b187
Add dynamic dns settings routes
2018-10-31 16:02:51 +01:00
Johannes Zellner
fa9aa50fdf
support --output again in createReleaseTarball script for hotfix to work
...
This avoids having to calculate the output filename with revisions and
exact format in the cli tool.
2018-10-31 08:54:24 +01:00
Girish Ramakrishnan
e0b1ebba92
verifyOperator -> isUnmanaged
2018-10-30 21:17:34 -07:00
Girish Ramakrishnan
581bbafa06
registry_config route does not require operator check
2018-10-30 20:54:35 -07:00
Girish Ramakrishnan
ce93518c0a
allow hyphenated subdomains on all editions
2018-10-30 20:35:35 -07:00
Girish Ramakrishnan
0ba0b009c7
make the domain locking code more clear
2018-10-30 20:35:32 -07:00
Girish Ramakrishnan
eed8f109bc
operator check is now directly based on edition type
2018-10-30 20:26:22 -07:00
Girish Ramakrishnan
63946509b3
Get autoconf data as separate object
...
This was done because restore API already takes a backupConfig.
So, it's best to split up the primary parameters and the autoconf
2018-10-30 19:27:14 -07:00
Girish Ramakrishnan
668ff99450
Add support for restricted certs as part of dns setup
2018-10-30 18:15:26 -07:00
Girish Ramakrishnan
03984a811f
dnsSetup -> setup
...
It now takes a dnsConfig object. It will end up taking other config
objects for provisioning.
2018-10-30 14:01:02 -07:00
Girish Ramakrishnan
7c733ae150
Fix error handling
2018-10-29 20:19:48 -07:00
Girish Ramakrishnan
9fe02d3818
lint
2018-10-29 20:19:42 -07:00
Girish Ramakrishnan
f10b80d90d
Make apps test great again
2018-10-29 12:49:41 -07:00
Girish Ramakrishnan
caf1d18250
Add flag for tests to check if platform is ready
2018-10-29 12:46:02 -07:00
Girish Ramakrishnan
c700635656
certs: make renew switch to fallback certs
2018-10-28 19:03:57 -07:00
Girish Ramakrishnan
d6d2ee7d19
Add version to release filename
...
This is required because we have to patch the VERSION file inside
the tarball for 'rerelease'. Which then requires release tarballs
to have a unique name.
The version is at the end because there is code in release script
which relies on the box sha at the front
2018-10-28 16:16:51 -07:00
Girish Ramakrishnan
f5a5da6731
3.0 changes
2018-10-28 14:43:20 -07:00
Girish Ramakrishnan
8f2ce5f4f8
cloudron-setup: Fixup script to support pre-3.2 versions
...
This is required for e2e and restore of old cloudrons
2018-10-28 14:21:51 -07:00
Girish Ramakrishnan
62619d21c0
Handle 409 in container exec
2018-10-27 14:15:52 -07:00
Girish Ramakrishnan
bf7707b70b
cleanup old base image as well
2018-10-27 13:10:02 -07:00
Girish Ramakrishnan
698f3c833b
cloudflare: Fix crash
...
{ success: false,
errors:
[ { code: 9103, message: 'Unknown X-Auth-Key or X-Auth-Email' } ],
messages: [],
result: null }
/home/yellowtent/box/src/dns/cloudflare.js:36
} else if (error.error_chain[0] && error.error_chain[0].message) {
^
TypeError: Cannot read property '0' of undefined
at translateRequestError (/home/yellowtent/box/src/dns/cloudflare.js:36:37)
at /home/yellowtent/box/src/dns/cloudflare.js:57:83
2018-10-27 12:51:24 -07:00
Girish Ramakrishnan
5996a107ed
Return a bogus version to fix the tests
2018-10-27 12:26:39 -07:00
Girish Ramakrishnan
0307dc5145
Carefully prune addon images
...
With the docker image prune we ended up removing the redis image
which was ununsed...
This also prevents us from removing images of some app using the
docker addon
2018-10-27 12:01:22 -07:00
Girish Ramakrishnan
f9aa09f717
typo
2018-10-27 11:28:30 -07:00
Girish Ramakrishnan
2688a57d46
Move version out of config.js
...
We now store this in a file called VERSION inside the tarball
itself.
2018-10-27 11:13:36 -07:00
Girish Ramakrishnan
7ad069fd94
Make config.setVersion hidden
2018-10-27 10:44:21 -07:00
Girish Ramakrishnan
06d043dac4
Make baseImage an array of objects
2018-10-26 16:58:18 -07:00
Girish Ramakrishnan
94be6a9e3c
Pull images in installer.sh
...
This way if the network is not working, then the update will just
fail and use the old version
This also tags the addon images with the semver properly
2018-10-26 16:35:18 -07:00
Girish Ramakrishnan
97567b7d2a
Do not re-create cloudron.conf
...
All this argument passing going around is just needless
* boxdata/version file is not used
* dashboard config.json is also unused
2018-10-26 15:29:14 -07:00
Girish Ramakrishnan
95d691154d
scripts/cloudron-setup: --data-dir is obsolete
2018-10-26 10:59:06 -07:00
Girish Ramakrishnan
9ac9b49522
Move ntp setup to base image init script
2018-10-26 10:57:19 -07:00
Girish Ramakrishnan
6a887c2bba
SSH port configuration will be done in appstore
2018-10-26 10:13:35 -07:00
Girish Ramakrishnan
0250508a89
Add comment for installer.sh and start.sh
2018-10-26 10:13:35 -07:00
Girish Ramakrishnan
f97973626c
start.sh: curl is not used
...
we will move network stuff to installer.sh anyways
2018-10-26 09:55:13 -07:00
Girish Ramakrishnan
5cdf9d1c6f
Move host configuration to setup script since Cloudron does not rely on it
...
Also hostname cannot be set here since admin_fqdn is not available on
initial setup
2018-10-25 18:49:05 -07:00
Girish Ramakrishnan
009e888686
remove dead migration of nginx certs
2018-10-25 18:43:24 -07:00
Girish Ramakrishnan
e3478c9d13
Use docker cli to cleanup old images
2018-10-25 16:33:12 -07:00
Girish Ramakrishnan
2e3ddba7e5
cloudron-setup: Log arguments later
2018-10-25 11:31:39 -07:00
Girish Ramakrishnan
81ac44b7da
Fix failing test
2018-10-25 00:01:32 -07:00
Girish Ramakrishnan
ffe50ff977
detect change in provider type and renew accordingly
2018-10-24 20:40:05 -07:00
Girish Ramakrishnan
73faba3c28
certs: Fix the config filename of admin domain
2018-10-24 20:32:03 -07:00
Girish Ramakrishnan
c1db52927e
Add a debug
2018-10-24 20:32:03 -07:00
Girish Ramakrishnan
e7120bd086
Move renewal logic to domain model code
2018-10-24 20:32:03 -07:00
Girish Ramakrishnan
91ad94f978
No more prereleases
2018-10-24 15:28:41 -07:00
Girish Ramakrishnan
ee517da4f4
Add route to renew certs of a domain
2018-10-24 13:09:41 -07:00
Girish Ramakrishnan
0d04213199
Ensure app can be uninstalled even if image format is invalid
2018-10-24 13:09:41 -07:00
Johannes Zellner
114f6c596d
Use new mongodb addon with fixed return paths
2018-10-24 10:45:30 +02:00
Johannes Zellner
5dadd083be
Use new mysql addon with fixed db import
2018-10-23 15:59:40 +02:00
Johannes Zellner
28d61a4d70
Use postgres addon with fixed restore
2018-10-23 13:05:39 +02:00
Girish Ramakrishnan
a49969f2be
Move apphealthmonitor into a cron job
...
This makes sure that it only runs post activation
See also a9c1af50f7
2018-10-22 20:08:49 -07:00
Girish Ramakrishnan
65eaf0792e
Remove any appdata dir symlinks correctly
2018-10-18 19:58:37 -07:00
Girish Ramakrishnan
6153f45fd9
Remove legacy redis directory
2018-10-18 19:30:10 -07:00
Girish Ramakrishnan
d5ffb8b118
Fix appstore casing
...
The API on cloudron.io wants appstore and not appStore
2018-10-18 14:21:09 -07:00
Girish Ramakrishnan
bc283f1485
Validate env vars
2018-10-18 13:40:26 -07:00
Girish Ramakrishnan
2d427a86f0
Send appstoreId as part of purchase/unpurchase
2018-10-18 11:01:32 -07:00
Girish Ramakrishnan
2a6edd53b6
Update postgresql (clone/restore fix)
2018-10-17 18:49:35 -07:00
Girish Ramakrishnan
cf8bb3da9e
Update mysql (prefix backup and restore)
2018-10-17 18:40:48 -07:00
Girish Ramakrishnan
7c1325cb34
Update mail addon (gnutls-bin)
2018-10-17 14:18:54 -07:00
Girish Ramakrishnan
f4ad912cf3
redis: do not import if not upgrading
...
There will be no backup to import from
2018-10-17 10:55:11 -07:00
Girish Ramakrishnan
78936a35c5
redis: Check the new dump location first
...
we do not cleanup the old dumps (yet). this then means that we will
constantly be importing the older dump.
2018-10-17 10:33:41 -07:00
Johannes Zellner
4ab2f8c153
Fix typo
2018-10-17 18:20:39 +02:00
Girish Ramakrishnan
858f03e02d
Update redis addon container
...
Fixes #223
2018-10-16 15:40:40 -07:00
Girish Ramakrishnan
045cfeeb0d
Move the addon startup logic to addons.js
...
Moved the graphite logic to new graphs.js
The settings code now does change notification itself. Over time,
it makes sense to just having settings code do this for everything
and not have this change listener logic. This lets us:
* Maybe the settings can only return based on final handler result
* All dependant modules otherwise have to "init"ed to listen on startup
* Easier to test those handlers without having to actually change the
setting (since they will now be in "exports" naturally)
Also, maybe someday with this abstraction we can allow apps to have their
own isolated databases etc
2018-10-16 14:40:29 -07:00
Girish Ramakrishnan
bbc121399e
Stop containers by name before killing them outright
2018-10-16 13:24:11 -07:00
Girish Ramakrishnan
03d513a3b1
Remove infra upgrade logic
...
We now upgrade using the dumps of the last backups which are in the
filesystem itself instead of downloading the entire app from the
backup all over.
2018-10-16 11:06:01 -07:00
Girish Ramakrishnan
539447409e
Fix mongodb addon digest
2018-10-16 10:06:04 -07:00
Johannes Zellner
4525c6f39e
Revert base image change
2018-10-16 15:10:11 +02:00
Girish Ramakrishnan
a6618c5813
Update mongodb (healthcheck)
2018-10-16 00:23:18 -07:00
Girish Ramakrishnan
5c1a0c1305
Check the status field for healthcheck
2018-10-16 00:21:48 -07:00
Girish Ramakrishnan
62c9fc90f9
Fix crash when oldConfig is null
2018-10-15 16:29:30 -07:00
Girish Ramakrishnan
2c60614d4b
remove special rm script for redis
2018-10-15 16:14:16 -07:00
Girish Ramakrishnan
816fa94555
Upgrade the db addons using dumps when major version changes
2018-10-15 16:14:13 -07:00
Girish Ramakrishnan
bbdafc6a2f
pass existing infra information to start funcs
2018-10-15 14:09:13 -07:00
Girish Ramakrishnan
5333db5239
Add method to import database from dumps
2018-10-15 10:15:47 -07:00
Girish Ramakrishnan
6254fe196a
Install resolvconf
...
When we disable systemd-resolved, the system goes into a state
where no DNS queries work anymore. Even if unbound is installed
right after. Installing 'resolvconf' fixes this.
There is competition even for this tiny package! (openresolv)
2018-10-15 08:58:37 -07:00
Girish Ramakrishnan
79d3713a4b
All apps are being updated already to 1.0.0
2018-10-14 16:31:49 -07:00
Girish Ramakrishnan
f1da537c80
wait for addons to start using heathcheck routes
2018-10-14 13:26:01 -07:00
Girish Ramakrishnan
b19fc23cb2
Fix the tests
2018-10-12 17:05:31 -07:00
Girish Ramakrishnan
5366524dc0
Add route to set/unset the registry config
2018-10-12 17:04:04 -07:00
Girish Ramakrishnan
f86d4f0755
Update manifestformat
2018-10-12 16:13:28 -07:00
Girish Ramakrishnan
3ad495528f
whitespace
2018-10-11 16:18:38 -07:00
Girish Ramakrishnan
5bfb253869
Custom env vars for apps
...
Add a table and the install/configure routes. Initially, I thought
we can just keep the env vars in docker container but that doesn't
work since we create the container only later in apptask. And if the
container gets deleted we lose this information.
2018-10-11 16:17:18 -07:00
Girish Ramakrishnan
630fbb373c
healthCheckPath is optional for non-appstore apps
2018-10-11 13:20:31 -07:00
Girish Ramakrishnan
8d09ec5ca6
Disable systemd-resolved on 18.04
2018-10-08 20:09:45 -07:00
Girish Ramakrishnan
23af20ddc9
Update graphite addon
2018-10-08 14:18:13 -07:00
Girish Ramakrishnan
86441bfeb6
Update mail container with latest base image
2018-10-08 10:08:05 -07:00
Johannes Zellner
be51daabf0
Use restified addons based on new base image as v2.0.0
2018-10-08 13:41:39 +02:00
Girish Ramakrishnan
86e8db435a
Add new 18.04 base image
2018-10-05 14:11:31 -07:00
Girish Ramakrishnan
d8401f9ef9
Add 18.04 to changelog
2018-10-05 10:47:17 -07:00
Girish Ramakrishnan
64f98aca5a
18.04 support
2018-10-05 10:28:02 -07:00
Johannes Zellner
f660947594
Do not silently retry on dns upsert in apptask
2018-10-05 17:07:34 +02:00
Girish Ramakrishnan
576e22e1a0
Update hash of mail container
2018-10-05 08:00:27 -07:00
Johannes Zellner
e004a00073
Add some 3.3.0 changes
2018-10-05 16:24:32 +02:00
Johannes Zellner
c0fdac5b34
The additional fetch wont hurt but makes it more readable
2018-10-05 16:21:06 +02:00
Johannes Zellner
a2a035235e
Use postgres addon 2.0.2
2018-10-05 16:07:22 +02:00
Girish Ramakrishnan
85ac2bbe52
Update 3.2.2 changelog
...
(cherry picked from commit e67fc64e65 )
2018-10-04 21:21:04 -07:00
Girish Ramakrishnan
c26e9bbef7
Fix debugs to match function name
2018-10-04 10:29:40 -07:00
Girish Ramakrishnan
3e85029ea1
Add 3.2.1 changes (updated dashboard)
...
(cherry picked from commit 0189539b27 )
2018-09-30 15:03:43 -07:00
Girish Ramakrishnan
8dd3c55ecf
Use async unlink
2018-09-28 17:05:53 -07:00
Girish Ramakrishnan
1ee902a541
typoe
2018-09-28 17:01:56 -07:00
Girish Ramakrishnan
55cbe46c7c
godaddy: empty the text record for del
2018-09-28 14:35:57 -07:00
Girish Ramakrishnan
5a8a4e7907
acme2: Display any errors when cleaning up challenge
2018-09-28 14:33:08 -07:00
Girish Ramakrishnan
3b5be641f0
acme2: fix challenge subdomain calculation in cleanup
2018-09-28 13:24:34 -07:00
Girish Ramakrishnan
a34fe120fb
TXT values must be quoted
2018-09-27 20:17:39 -07:00
Girish Ramakrishnan
b9918cb6fb
Fix changelog ordering
2018-09-26 22:34:14 -07:00
Girish Ramakrishnan
21a86175b4
Use the local branch in hotfix
...
(cherry picked from commit ffb02a3ba8 )
2018-09-26 22:30:23 -07:00
Girish Ramakrishnan
84150f53e7
Revert "Do not require dashboard remote branch with the same name for hotfix"
...
This reverts commit b2469de9b0 .
This affects the release scripts and always creates dashboard tarball from master
2018-09-26 22:03:38 -07:00
Girish Ramakrishnan
42c1f8bb04
start most cron jobs only after activation
...
Importing the db might take some time. If a cron runs in the middle,
it crashes.
TypeError: Cannot read property 'domain' of undefined
at Object.fqdn (/home/yellowtent/box/src/domains.js:126:111)
at /home/yellowtent/box/src/apps.js:460:36
at /home/yellowtent/box/node_modules/async/dist/async.js:3110:16
at replenish (/home/yellowtent/box/node_modules/async/dist/async.js:1011:17)
at /home/yellowtent/box/node_modules/async/dist/async.js:1016:9
at eachLimit$1 (/home/yellowtent/box/node_modules/async/dist/async.js:3196:24)
at Object.<anonymous> (/home/yellowtent/box/node_modules/async/dist/async.js:1046:16)
at /home/yellowtent/box/src/apps.js:458:19
at /home/yellowtent/box/src/appdb.js:232:13
at Query.args.(anonymous function) [as _callback] (/home/yellowtent/box/src/database.js
2018-09-26 14:56:45 -07:00
Girish Ramakrishnan
a504759b95
more debugs and comments
2018-09-26 12:39:33 -07:00
Girish Ramakrishnan
af763eadd4
Fix perms issue when restoring
...
Fixes #536
2018-09-26 11:59:19 -07:00
Girish Ramakrishnan
818735e2c8
Fix import of older redis backups
2018-09-26 09:48:18 -07:00
Girish Ramakrishnan
aefa8ed0d6
Add .eslintrc
...
Looks like only this supports async/await nicely
2018-09-25 18:31:15 -07:00
Girish Ramakrishnan
78d3aafd7a
Fix case where mailbox already exists
2018-09-25 17:04:17 -07:00
Girish Ramakrishnan
1fed7335cf
Update the db addons
2018-09-25 14:24:32 -07:00
Girish Ramakrishnan
34626abdcf
reset mailboxname to .app when empty
...
fixes #587
2018-09-25 11:26:38 -07:00
Girish Ramakrishnan
477f8a3ca1
mysql: Add message to error string
2018-09-24 16:45:08 -07:00
Girish Ramakrishnan
bd7bd2adae
3.1.4 changes
2018-09-24 09:29:58 -07:00
Girish Ramakrishnan
d47fd34f66
Use alternateDomain fqdn for ensuring certificate
...
this makes it work for hyphenated domains as well
2018-09-22 16:26:28 -07:00
Girish Ramakrishnan
f6ceee7f50
list domains only once
2018-09-22 16:19:12 -07:00
Girish Ramakrishnan
a08f05fb44
Attach fqdn to all the alternateDomains
2018-09-22 15:11:01 -07:00
Girish Ramakrishnan
6214ba7b31
allow hyphenated subdomains in caas
2018-09-22 12:37:38 -07:00
Girish Ramakrishnan
e69004548b
waitForDnsRecord: use subdomain as argument
...
this allows to hyphenate the subdomain correctly in all places
the original issue was that altDomain in caas was not working
because waitForDnsRecord was not hyphenating.
2018-09-22 11:26:33 -07:00
Girish Ramakrishnan
c8216d84ac
register alt domains in install route
2018-09-22 10:09:46 -07:00
Girish Ramakrishnan
5cfc3b22fa
Add redis healthcheck
2018-09-20 12:46:08 -07:00
Girish Ramakrishnan
a755aecfc5
typo
2018-09-19 17:25:40 -07:00
Girish Ramakrishnan
64e34e13be
display error messages
2018-09-19 15:55:42 -07:00
Girish Ramakrishnan
e455ea987a
postgresql: fix various issues during backup/restore/clear
2018-09-19 15:35:47 -07:00
Girish Ramakrishnan
bf87d3fc8b
Update redis sha256
2018-09-19 15:11:55 -07:00
Girish Ramakrishnan
cfdb939bff
redis: various fixes
2018-09-19 14:29:27 -07:00
Girish Ramakrishnan
16fab63442
Update mysql for quoting fix
2018-09-19 12:26:18 -07:00
Johannes Zellner
fe14bcf155
Use updated mysql addon
2018-09-19 12:48:44 +02:00
Girish Ramakrishnan
9732b899b0
redis: backup returns 200 now
2018-09-18 14:11:42 -07:00
Girish Ramakrishnan
23b9854c57
Use REST API instead of volumes for redis
2018-09-18 13:09:24 -07:00
Girish Ramakrishnan
0b3f65c70e
postgres: restore need not call setup anymore
2018-09-18 12:29:40 -07:00
Girish Ramakrishnan
83d56f79c6
lint
2018-09-18 12:22:19 -07:00
Johannes Zellner
8632939c6e
Use restified mysql addon
2018-09-18 20:25:07 +02:00
Johannes Zellner
93cdba8137
Use post instead of delete for postgres clear
2018-09-18 20:23:19 +02:00
Johannes Zellner
2686a1b9e3
Fixup copy and paste errors and linter warnings
2018-09-18 20:20:27 +02:00
Johannes Zellner
eec1fe1272
Start mysql addon with env vars instead of vars.sh file
2018-09-18 20:18:39 +02:00
Johannes Zellner
f7f26fdf78
Fix logging in getAddonDetails()
2018-09-18 20:18:39 +02:00
Johannes Zellner
d980d44833
Talk to the mysql addon via rest apis
2018-09-18 20:18:39 +02:00
Girish Ramakrishnan
af4b2b075e
redis: fix clear return code
2018-09-17 20:44:13 -07:00
Girish Ramakrishnan
3fcf6aa339
Add a timeout to wait for redis to start
2018-09-17 20:40:07 -07:00
Girish Ramakrishnan
1b205ac107
postgresql: fix clear route to have username and remove extra }
2018-09-17 19:53:12 -07:00
Girish Ramakrishnan
bcee0aa2ad
Update postgresql (reset root password fix)
2018-09-17 19:22:27 -07:00
Girish Ramakrishnan
e2bf52b69d
postgresql: Add missing db prefix in routes
2018-09-17 18:11:38 -07:00
Girish Ramakrishnan
3c6dffbbc7
Remove old docker images correctly
...
Old images had no sha256, so it prints "<none>". These images
have to be accessed by tag which uses the ":tag" format whereas
the sha images use the "@sha" format
2018-09-17 16:39:31 -07:00
Girish Ramakrishnan
691b876d61
Update postgresql image (re-setup fix)
2018-09-17 16:25:17 -07:00
Girish Ramakrishnan
ed14115ff1
Fix new account return value
...
https://tools.ietf.org/html/draft-ietf-acme-acme-07#section-7.3
2018-09-17 15:30:16 -07:00
Girish Ramakrishnan
6d9c6ffba3
acme2: register new account returns 201
2018-09-17 15:19:19 -07:00
Johannes Zellner
b8dd01d502
Bump postgres addon image again with latest fixes
2018-09-17 15:56:02 +02:00
Johannes Zellner
7e16b96abe
Use updated postgres addon
2018-09-17 12:54:05 +02:00
Johannes Zellner
705d0ba7f9
Use restified postgresql addon
2018-09-16 22:56:26 +02:00
Girish Ramakrishnan
306c80dd93
Fix addons.js with the new env var names
2018-09-15 20:38:18 -07:00
Girish Ramakrishnan
c8ed1d950b
Update mongodb addon (restore does not clear anymore)
2018-09-15 20:29:04 -07:00
Girish Ramakrishnan
705bf3db98
Use only CLOUDRON_* prefixed vars (we reserve these)
2018-09-15 20:15:58 -07:00
Girish Ramakrishnan
e2b388f721
Update redis addon that has clear route
2018-09-15 20:14:16 -07:00
Girish Ramakrishnan
3f34734933
withFileTypes is only available on node 10
2018-09-15 18:47:34 -07:00
Girish Ramakrishnan
391ee00db8
Fix cleanup of old images
2018-09-15 18:41:06 -07:00
Girish Ramakrishnan
64a7b80395
Fix issue deleting app dir during restore
...
During restore, only the superfluous addons are teardown. Rest of
the addons are kept as-is. This is done to preserve the addon
configuration across restores (thus preserving db passwords).
We then rely on the restoreApp logic to call restore in each addon.
Each restore currently setup, clear and them imports the backup.
With the volume changes, we have moved volume create/delete to the
localstorage addon. Currently, the localstorage addon has no concept of restore
because the backup download extracts it directly into the volume.
Because of the above, during the restore code path, we don't teardown
the localstorage addon and thus files are left behind in appid/data/. This
prevents deleteAppDir() from removing the appid/ directory.
The fix is to add a new 'clear' command to addons. Before restore, we
clear the addons.
2018-09-15 17:35:47 -07:00
Girish Ramakrishnan
46a00c839b
rename create/deleteVolume to avoid confusion
2018-09-15 15:30:26 -07:00
Girish Ramakrishnan
9f6621434f
Use sha256 to accidentally prevent overwritten tags
2018-09-14 20:20:46 -07:00
Johannes Zellner
3963eb687f
Use the sudo script for app volume
2018-09-14 14:37:20 +02:00
Johannes Zellner
56cd97147a
Unify the code to get addon container ip and token
2018-09-14 13:26:56 +02:00
Johannes Zellner
614b3ed5d1
Remove unused variable
2018-09-14 13:19:47 +02:00
Johannes Zellner
9f622c5e65
Do not store the cloudron redis service token in the addon env blob
2018-09-14 13:19:33 +02:00
Girish Ramakrishnan
4f6a467181
bump minor version to make apps reconfigure themselves
...
this is because the container configuration has changed
(we create volume)
2018-09-13 15:47:08 -07:00
Girish Ramakrishnan
a46e208c63
Use docker volumes instead of bind mount for app data
2018-09-13 15:35:41 -07:00
Johannes Zellner
a0fd60408b
Use https with selfsigned certs for addon service calls
2018-09-13 21:37:55 +02:00
Johannes Zellner
ffbbba938a
Replace superagent with request for talking to addons
2018-09-13 12:54:33 +02:00
Johannes Zellner
a222b3ed58
Use new restified mongodb and redis addons
2018-09-13 12:54:33 +02:00
Girish Ramakrishnan
6ba574432a
calculate subdomain correctly for non-wildcard domains
2018-09-12 15:55:20 -07:00
Girish Ramakrishnan
96075c7c20
Fix double callback
2018-09-12 14:43:15 -07:00
Girish Ramakrishnan
64665542bc
select app's cert based on domain's wildcard flag
...
this also removes the confusing type field in the bundle. we instead
check the current nginx config to see what cert is in use.
2018-09-12 14:22:54 -07:00
Girish Ramakrishnan
54d2a4f17b
rework args to ensureCertificate
2018-09-12 12:50:04 -07:00
Girish Ramakrishnan
1d829c4af2
Allow wildcard only with programmable DNS backend
2018-09-12 12:36:13 -07:00
Girish Ramakrishnan
dc4dc05628
Fixup changes file
2018-09-12 10:00:16 -07:00
Johannes Zellner
b2469de9b0
Do not require dashboard remote branch with the same name for hotfix
2018-09-12 12:56:24 +02:00
Johannes Zellner
812d3576a9
Use mongodb rest api for backup and restore
2018-09-12 12:56:24 +02:00
Johannes Zellner
6012eb7898
docker inspect and the rest api have a different output format
2018-09-12 12:56:24 +02:00
Johannes Zellner
a591b5910e
Restify mongodb addon
2018-09-12 12:56:24 +02:00
Johannes Zellner
1e084e98d1
Change mongodb addon from env vars file to passing directly
2018-09-12 12:56:24 +02:00
Johannes Zellner
b4224a7f8d
Call the rest route on redis backup
...
The addons are an array of key/value
2018-09-12 12:56:24 +02:00
Johannes Zellner
ab8a010b94
Redis does not use the vars.sh file anymore
2018-09-12 12:56:24 +02:00
Johannes Zellner
4c164c17cf
Support internal only addon configs with redis persistent token
2018-09-12 12:56:24 +02:00
Johannes Zellner
650f181a07
Provision redis addon with new set of required env vars
2018-09-12 12:56:24 +02:00
Girish Ramakrishnan
97ab521038
make ensureCertificate check any wildcard cert
2018-09-11 23:47:23 -07:00
Girish Ramakrishnan
c138c4bb5f
acme2: implement wildcard certs
2018-09-11 23:15:50 -07:00
Girish Ramakrishnan
1067ff882a
Move type validation to routes logic
2018-09-11 22:17:40 -07:00
Girish Ramakrishnan
b6ad6e121b
refactor to validateTlsConfig
2018-09-11 21:53:18 -07:00
Girish Ramakrishnan
a756345138
consolidate hyphenatedSubdomains handling
2018-09-11 21:41:50 -07:00
Girish Ramakrishnan
35f69cfea9
acme2: wait for dns
2018-09-11 19:41:41 -07:00
Girish Ramakrishnan
3f0bc6165b
Enhance waitForDns to support TXT records
2018-09-11 19:41:38 -07:00
Girish Ramakrishnan
d0dde04695
acme2: dns authorization
2018-09-10 21:46:53 -07:00
Girish Ramakrishnan
2f38a4018c
pass domain arg to getCertificate API
2018-09-10 20:48:47 -07:00
Girish Ramakrishnan
2c76716bc7
rename func
2018-09-10 20:35:48 -07:00
Girish Ramakrishnan
f38b87c660
lint
2018-09-10 20:30:38 -07:00
Girish Ramakrishnan
9bac2acc37
Fix callback use
2018-09-10 17:39:13 -07:00
Girish Ramakrishnan
68536b6d7d
acme2 implementation
2018-09-10 16:26:24 -07:00
Girish Ramakrishnan
1d0a52404a
Fix tests
2018-09-10 13:45:05 -07:00
Girish Ramakrishnan
017460b497
acme -> acme1
2018-09-10 10:57:48 -07:00
Girish Ramakrishnan
8efd496579
storage: add access denied function (unused)
2018-09-10 10:41:08 -07:00
Girish Ramakrishnan
229fe0f66f
Add 3.1.4 changes
2018-09-10 09:28:08 -07:00
Girish Ramakrishnan
efa36ab161
cloudflare: Add the chain message
2018-09-07 11:46:10 -07:00
Girish Ramakrishnan
191c85d01f
cloudflare: priority is now an integer
2018-09-07 11:44:31 -07:00
Girish Ramakrishnan
88330ab415
Return 424 for external errors
2018-09-07 11:27:19 -07:00
Girish Ramakrishnan
76f5b22c07
dns: implement wildcard dns validation
2018-09-06 20:45:10 -07:00
Girish Ramakrishnan
0639ca1594
Make wildcard a separate provider
...
this is required because the config object is not returned for
locked domains and the UI display for the provider field is then
wrong.
2018-09-06 20:09:08 -07:00
Girish Ramakrishnan
e620a26c04
typo
2018-09-06 20:05:08 -07:00
Girish Ramakrishnan
867c3595b2
more changes
2018-09-06 13:18:26 -07:00
Girish Ramakrishnan
df66d77a68
cloudflare: Fix crash when there is an external error updating dns records
2018-09-06 12:26:11 -07:00
Girish Ramakrishnan
5e919b90f5
Better fix for grub
2018-09-06 11:56:50 -07:00
Girish Ramakrishnan
428269f503
3.1.3 changes
2018-09-06 00:41:45 -07:00
Girish Ramakrishnan
b03e26a510
Fix typo
2018-09-06 00:41:37 -07:00
Girish Ramakrishnan
1e15b63a4a
prevent deletion of mail domain as well
2018-09-06 00:16:12 -07:00
Girish Ramakrishnan
8d5e70f6aa
lock the admin domain based on the edition
2018-09-06 00:15:45 -07:00
Girish Ramakrishnan
91a1bc7a01
move verifyOperator to users routes
2018-09-06 00:10:09 -07:00
Girish Ramakrishnan
0e3f9c9569
Move verifyAppOwnership to app route
2018-09-06 00:09:42 -07:00
Girish Ramakrishnan
2ad0a57fc1
Typo
2018-09-05 23:59:40 -07:00
Girish Ramakrishnan
def3521ee1
Do not allow admin domain to be deleted
2018-09-05 17:12:02 -07:00
Girish Ramakrishnan
3d004b3dcc
Disable various server/operator routes based on edition
...
The initial idea was to put an owner flag but this means that the
owner will be visible inside apps.
2018-09-05 15:31:58 -07:00
Girish Ramakrishnan
0439bd8869
move addSpacesSuffix to model logic
2018-09-04 16:37:08 -07:00
Girish Ramakrishnan
10b4043358
Add alternateDomains to app install route
2018-09-04 16:27:35 -07:00
Girish Ramakrishnan
ac3b0f0082
Add spaces suffix for alternate domains
2018-09-04 14:12:50 -07:00
Girish Ramakrishnan
d49a1dea7a
Fix usage of domains.fqdn
2018-09-04 11:35:01 -07:00
Girish Ramakrishnan
ec9c96da6f
Fix comments
2018-09-04 10:48:54 -07:00
Johannes Zellner
2de630e491
Put the app owner also into ldap groups
...
Fixes #585
2018-09-03 17:14:11 +02:00
Johannes Zellner
3af358b9bc
List app owner as admins in ldap search
2018-09-03 16:08:05 +02:00
Johannes Zellner
b61478edc9
Attach req.app for further use in ldap routes
2018-09-03 15:38:50 +02:00
Johannes Zellner
b23afdd32d
Fix tests to match the adjusted purchase logic
2018-09-01 11:53:05 +02:00
Girish Ramakrishnan
43055da614
Add route to let admin set user password
2018-08-31 14:35:01 -07:00
Girish Ramakrishnan
2c3f1ab720
Fix the error messages
2018-08-31 14:06:06 -07:00
Johannes Zellner
35a31922a5
Always run all tests
2018-08-31 22:25:06 +02:00
Girish Ramakrishnan
bf432dc26f
Revert "Disable memory accounting setup"
...
This reverts commit ad22df6f71 .
This actually serves the purpose of enabling swap.
https://raw.githubusercontent.com/moby/moby/master/contrib/check-config.sh
2018-08-31 13:21:33 -07:00
Johannes Zellner
18cc93799e
Fully rely on the appstore during 'purchase' call
2018-08-31 10:53:35 +02:00
Girish Ramakrishnan
fc3bc48f47
Fix crash when location is not provided
2018-08-30 22:08:48 -07:00
Girish Ramakrishnan
fc96f59ecc
Add edition checks
2018-08-30 21:20:49 -07:00
Girish Ramakrishnan
534a00b3af
Disallow dot in location in hyphenatedSubdomains
2018-08-30 21:03:54 -07:00
Girish Ramakrishnan
619d1e44e5
Move validateHostname to domains code
2018-08-30 20:54:15 -07:00
Girish Ramakrishnan
068113bd5d
remove redundant domain arg to domains.fqdn
2018-08-30 19:57:12 -07:00
Girish Ramakrishnan
ca16072d90
hypenatedSubdomains: do not hyphenate txt dns records
2018-08-30 16:17:56 -07:00
Girish Ramakrishnan
6fac59cf9d
cloudron-setup: print before we shift all the args
2018-08-30 14:30:49 -07:00
Girish Ramakrishnan
f953cfc4d5
cloudron-setup: print the args to the log file
2018-08-30 14:06:25 -07:00
Johannes Zellner
7a1723d173
Fix app tests
2018-08-30 00:32:38 +02:00
Johannes Zellner
b6643518f6
Adjust apps test to how we check subscriptions
2018-08-29 23:57:59 +02:00
Johannes Zellner
91470156c9
Only remove all app container on uninstall
...
For update and configure, we do not want to purge potential docker addon
created ones. They are managed by the app itself.
2018-08-29 21:28:58 +02:00
Johannes Zellner
40c6ab5615
Remove unused require
2018-08-29 21:25:02 +02:00
Girish Ramakrishnan
6cc4e44f22
pass edition to update.sh
2018-08-28 22:14:27 -07:00
Girish Ramakrishnan
976cf1740e
Put edition in status route
2018-08-28 21:43:25 -07:00
Girish Ramakrishnan
22cdd3f55e
spaces: add username suffix to location
2018-08-28 20:27:17 -07:00
Girish Ramakrishnan
e0cd7999eb
Make spaces an edition instead of setting
2018-08-28 18:31:48 -07:00
Johannes Zellner
4f7242fa6a
add --edition option to cloudron-setup
2018-08-28 18:06:25 -07:00
Johannes Zellner
964da5ee52
Send the edition in the config route
2018-08-28 18:05:45 -07:00
Johannes Zellner
baa99d1a44
add edition property to cloudron.conf
2018-08-28 18:05:15 -07:00
Girish Ramakrishnan
6d1cb1bb14
Do not update grub packages
...
It looks on some VPS, the grub then asks the user to re-install
since the disk name has changed/moved (presumably because the
image was created on a server with a different disk name)
2018-08-28 14:33:07 -07:00
Girish Ramakrishnan
f7e6c5cd40
Add galaxygate as a provider
2018-08-28 12:25:16 -07:00
Girish Ramakrishnan
ad22df6f71
Disable memory accounting setup
...
Overall, this is outside the scope of Cloudron
2018-08-28 12:18:31 -07:00
Girish Ramakrishnan
8e572a7c23
Fix changelog
2018-08-27 16:05:01 -07:00
Girish Ramakrishnan
e49b57294d
Give optional name for tokens
2018-08-27 14:59:52 -07:00
Girish Ramakrishnan
badb6e4672
add note on clients.appId
2018-08-27 14:30:39 -07:00
Girish Ramakrishnan
d09ff985af
remove all user tokens when user is deleted
2018-08-27 14:05:22 -07:00
Girish Ramakrishnan
a3130c8aab
inviteLink is not available during user create anymore
2018-08-27 10:40:58 -07:00
Girish Ramakrishnan
0843d51c98
Check for existing port bindings in udpPorts
2018-08-26 17:50:17 -07:00
Girish Ramakrishnan
9a1b5dd5cc
Add 3.1.1 changelog
2018-08-25 18:32:02 -07:00
Girish Ramakrishnan
6f398144cb
validate hyphenatedSubdomain
2018-08-25 18:29:55 -07:00
Girish Ramakrishnan
d91df50b9f
caas: add hyphenateSubdomain property
2018-08-25 17:49:31 -07:00
Johannes Zellner
99ead48fd5
Add more changes
2018-08-25 11:14:14 +02:00
Johannes Zellner
922b6d2b18
Also renew alternate domain certificates
...
Part of #583
2018-08-25 11:04:53 +02:00
Girish Ramakrishnan
6a3b45223a
Better name for internal functions
2018-08-24 15:38:44 -07:00
Girish Ramakrishnan
93b0f39545
ensureCertificate: make it take appDomain object
2018-08-24 15:07:13 -07:00
Girish Ramakrishnan
dbe86af31e
Make getApi takes a string domain
2018-08-24 15:00:19 -07:00
Girish Ramakrishnan
3ede50a141
remove unused function
2018-08-24 14:11:02 -07:00
Girish Ramakrishnan
e607fe9a41
Specify subdomain fields explicitly
2018-08-24 10:39:59 -07:00
Johannes Zellner
43d125b216
Send hyphenatedSubdomains as non restricted property
2018-08-22 17:19:18 +02:00
Johannes Zellner
9467a2922a
Return hyphenated subdomain name in getName()
2018-08-22 14:13:48 +02:00
Johannes Zellner
b35c81e546
Handle hyphenatedSubdomains in the backend verifyDnsConfig()
2018-08-22 12:16:19 +02:00
Johannes Zellner
59700e455e
Use the full domain record for domains.fqdn()
2018-08-22 12:15:46 +02:00
Johannes Zellner
e8fcfc4594
Allow to specify hyphenatedSubdomains for a domain
2018-08-22 11:59:42 +02:00
Johannes Zellner
9bac7e8124
Move the comment where it belongs
2018-08-22 11:02:06 +02:00
Girish Ramakrishnan
210c453508
More changes
2018-08-21 21:25:07 -07:00
Girish Ramakrishnan
442d4e5c6f
Fix failing tests
2018-08-21 18:57:11 -07:00
Girish Ramakrishnan
af63cb936d
More changes
2018-08-21 18:47:12 -07:00
Girish Ramakrishnan
b4c9f64721
Issue token on password reset and setup
2018-08-21 18:42:18 -07:00
Girish Ramakrishnan
c64a29e6fc
More 3.1.0 changes
2018-08-21 17:06:51 -07:00
Johannes Zellner
f05df7cfef
Allow set admin flag on user creation
2018-08-21 17:12:46 +02:00
Johannes Zellner
f4a76a26af
Remove left-over docker proxy start call in platform.js
2018-08-21 15:31:53 +02:00
Girish Ramakrishnan
f338e015d5
Revert "Also allow docker in containers spawned by an authorized app"
...
This reverts commit 4f336a05fc .
This is not required by an app yet. Besides, it breaks tests
2018-08-20 20:10:16 -07:00
Girish Ramakrishnan
89cf8167e6
Make tests work
2018-08-20 20:10:14 -07:00
Johannes Zellner
d5194cfdc9
Remove nativeLogging docker addon support
...
Was only required for eclipse che
2018-08-20 15:22:10 +02:00
Johannes Zellner
eb07d3d543
Drop all custom network configs in docker proxy
2018-08-20 15:19:08 +02:00
Girish Ramakrishnan
6a1a697820
Split the invite route into two
2018-08-17 16:27:29 -07:00
Girish Ramakrishnan
e5cc81d8fa
Fix test name
2018-08-17 13:45:10 -07:00
Johannes Zellner
3640b0bd0e
Allow to override the logging backend for app like che
2018-08-17 15:30:37 +02:00
Johannes Zellner
4d4ce9b86e
Bare bones support of docker exec through the proxy
2018-08-17 15:30:23 +02:00
Johannes Zellner
db385c6770
Ensure the docker proxy tests cleanup correctly
2018-08-17 13:44:12 +02:00
Johannes Zellner
2925e98d54
Make PUT requests through the docker proxy work
2018-08-17 12:33:46 +02:00
Girish Ramakrishnan
75ee40865e
3.0.2 changes
2018-08-16 23:30:20 -07:00
Girish Ramakrishnan
af58e56732
Fix issue where normal users are shown all apps
2018-08-16 20:04:03 -07:00
Johannes Zellner
dc3e3f5f4d
Ensure we pipe the parsed body again upstream to docker
2018-08-16 14:28:51 +02:00
Johannes Zellner
83304ff66c
Verify that docker logs is correctly reporting another logging driver
2018-08-16 12:07:15 +02:00
Johannes Zellner
575e0cea33
Use syslog for containers created in apps
2018-08-16 11:37:08 +02:00
Girish Ramakrishnan
0bf3b45ddc
Fix bind mapping logic
2018-08-15 16:52:30 -07:00
Johannes Zellner
826a0e7708
Add test case for docker logs through the proxy
2018-08-15 18:16:03 +02:00
Johannes Zellner
0522d1e3c4
Simply prefix all docker volume mounts with the app data dir
2018-08-15 18:00:51 +02:00
Johannes Zellner
12970bf50a
Add some debugs for volume rewriting
2018-08-15 16:51:10 +02:00
Johannes Zellner
4a739213bf
When creating a container the Labels are toplevel
2018-08-15 12:51:52 +02:00
Johannes Zellner
4f336a05fc
Also allow docker in containers spawned by an authorized app
2018-08-15 12:35:34 +02:00
Girish Ramakrishnan
c3dacba894
dockerproxy: rewrite labels and binds
2018-08-14 20:49:41 -07:00
Girish Ramakrishnan
f88c01eea6
dockerproxy: Add app authorization
2018-08-14 20:04:15 -07:00
Girish Ramakrishnan
15b0dfcb60
rename variable
2018-08-14 19:03:59 -07:00
Girish Ramakrishnan
ebd27b444d
dockerproxy: use express
2018-08-14 18:59:41 -07:00
Johannes Zellner
ee1c587922
Overwrite the docker container network in the proxy
2018-08-14 22:54:02 +02:00
Johannes Zellner
4da91ec90d
Make the docker proxy work
2018-08-14 22:54:02 +02:00
Girish Ramakrishnan
3cf3c36e86
Fix tests
2018-08-13 22:54:56 -07:00
Girish Ramakrishnan
8bd6c9933f
Add interval secs
...
Part of #568
2018-08-13 22:35:38 -07:00
Girish Ramakrishnan
2e0a7dcd47
Fix migration filename
2018-08-13 22:31:58 -07:00
Johannes Zellner
714c205538
Set the correct debug label
2018-08-13 22:06:28 +02:00
Johannes Zellner
00041add55
No need to pull in underscore to build an object
2018-08-13 22:01:51 +02:00
Johannes Zellner
7f5fe12712
Use DOCKER_HOST to make the cli work out of the box
2018-08-13 21:59:02 +02:00
Johannes Zellner
441fdb81f8
Move docker proxy into its own file
2018-08-13 21:14:17 +02:00
Johannes Zellner
fb02e8768c
Remove unused require
2018-08-13 21:05:07 +02:00
Johannes Zellner
14f0f954b7
Use docker proxy over DOCKER_URL env var when docker addon is used
2018-08-13 20:47:15 +02:00
Johannes Zellner
10f0d48b2a
Use docker proxy port from config
2018-08-13 20:41:02 +02:00
Johannes Zellner
6933184c2e
Revert "Expose the host /app/data folder when localstorage and docker addons are used"
...
We will use the docker proxy for that
This reverts commit b3aa59de19 .
2018-08-13 20:39:23 +02:00
Johannes Zellner
a1b983de23
Initial code for docker addon proxy
2018-08-13 20:38:39 +02:00
Johannes Zellner
b3aa59de19
Expose the host /app/data folder when localstorage and docker addons are used
2018-08-13 19:40:41 +02:00
Girish Ramakrishnan
796ced999f
Add some 3.1 changes
2018-08-13 09:18:44 -07:00
Girish Ramakrishnan
353b5e07bf
Save correct type of port in db
...
Part of #504
2018-08-13 08:33:17 -07:00
Girish Ramakrishnan
c29eef4c14
Set the udp ports in docker configuration
...
Part of #504
2018-08-12 22:47:59 -07:00
Girish Ramakrishnan
8bc7dc9724
Pass the manifest to validatePortBindings
2018-08-12 22:37:36 -07:00
Girish Ramakrishnan
60984d18dd
Add type field to port bindings table
...
Part of #504
2018-08-12 22:32:36 -07:00
Girish Ramakrishnan
df1dc80fc1
Change the internal portBindings representation
...
Part of #504
2018-08-12 22:32:31 -07:00
Girish Ramakrishnan
8e2f0cdf73
Update cloudron-manifestformat (udpPorts)
2018-08-12 19:00:28 -07:00
Ian Fijolek
bf1e19f8e6
Add more detailed checking of DMARC
...
Fixes #570
2018-08-12 13:47:24 -07:00
Girish Ramakrishnan
9a7214ea07
Update manifestformat for docker addon
2018-08-10 12:31:46 -07:00
Johannes Zellner
4499f08357
Revert "Remove _docker addon"
...
This reverts commit d6f49eb54f .
2018-08-09 11:54:46 +02:00
Girish Ramakrishnan
8671c4c015
3.0.1 changes
2018-08-06 19:45:46 -07:00
Girish Ramakrishnan
2612cc18fa
Expire existing webadmin token so that the UI gets a new token
...
This is because we added a new appstore scope
2018-08-06 19:40:46 -07:00
Girish Ramakrishnan
36a21acae8
skip verification for prereleases because we remove it from release.json
2018-08-06 16:23:23 -07:00
Girish Ramakrishnan
1ed4710c68
Better error message
2018-08-05 23:38:49 -07:00
Girish Ramakrishnan
75b6688734
Clear timeout when setting backup config
2018-08-05 22:29:27 -07:00
Girish Ramakrishnan
f7a7e4e95a
Fix text in account setup screen
2018-08-05 21:58:07 -07:00
Girish Ramakrishnan
a8ba0b91f7
Allow subdomain in the location field
...
This allows one to easily add "dev.staging@domain.com " etc without having to create
yet another domain. This plays well with the concept that we have a
mail domain for every domain. So we get mails from @domain.com working for
these subdomain installations.
2018-08-04 09:37:18 -07:00
Girish Ramakrishnan
95540e8cbc
Do ownership check in exec route
2018-08-03 22:19:42 -07:00
Girish Ramakrishnan
9ebd22d6f7
add api note
2018-08-03 22:19:36 -07:00
Girish Ramakrishnan
1cf5807fb9
Send spaces config in config route
...
This is here because normal users cannot access settings route
2018-08-03 18:26:16 -07:00
Girish Ramakrishnan
cc7824681b
Return ownerId in apps response
2018-08-03 18:15:22 -07:00
Girish Ramakrishnan
a0a523ae71
spaces: verify app ownership in app management routes
2018-08-03 17:35:58 -07:00
Girish Ramakrishnan
fba70d888b
Remove tokenScopes
...
decided that the UI won't use this any more and will just the admin flag
2018-08-03 10:07:23 -07:00
Girish Ramakrishnan
ce9fc7b3f7
Better error message
2018-08-03 09:46:22 -07:00
Girish Ramakrishnan
3d4df8e26c
Add test for spaces config
2018-08-03 09:46:16 -07:00
Girish Ramakrishnan
d3f9647cd5
Add settings for Spaces
2018-08-03 09:40:57 -07:00
Girish Ramakrishnan
2a49569805
Send admin flag in the profile
2018-08-03 09:34:25 -07:00
Girish Ramakrishnan
47c8700d42
make scopesForUser async
2018-08-03 09:34:19 -07:00
Girish Ramakrishnan
d302dbc634
Fix tests
2018-08-02 14:59:50 -07:00
Girish Ramakrishnan
eab3cd6b2b
ownerId for domains is not implemented yet
2018-08-01 18:53:49 -07:00
Girish Ramakrishnan
92151b1e42
Add note on npm rebuild
2018-08-01 18:37:40 -07:00
Girish Ramakrishnan
621d00a5c6
GPG verify releases
...
Part of #189
2018-08-01 17:16:42 -07:00
Girish Ramakrishnan
5bd7cd6749
Check if syslog binary exists first
...
The command fails in a subshell and strange things happen
==> installer: update cloudron-syslog
/tmp/box-src-hotfix/scripts/installer.sh: line 99: /usr/local/cloudron-syslog/bin/cloudron-syslog: No such file or directory
/tmp/box-src-hotfix/scripts/installer.sh: line 99: : command not found
2018-08-01 12:18:56 -07:00
Girish Ramakrishnan
5fb525f011
Commit binary public key
...
GPG's --verify option can only use binary format
2018-07-31 20:25:46 -07:00
Girish Ramakrishnan
d8257c4745
refactor updater logic into updater.js
2018-07-31 20:20:10 -07:00
Girish Ramakrishnan
ef5dc7311f
Do not encrypt empty path
2018-07-31 19:41:03 -07:00
Girish Ramakrishnan
498642b670
Fix debugs
2018-07-31 19:32:56 -07:00
Girish Ramakrishnan
daa8514654
Pass the message and not error object
2018-07-31 10:46:35 -07:00
Girish Ramakrishnan
608de479fb
Add releases public key
...
Part of #189
2018-07-31 10:34:01 -07:00
Johannes Zellner
51f7a47ea6
Fix db migration script
2018-07-30 22:58:09 +02:00
Girish Ramakrishnan
480aed9f33
Update mail addon
2018-07-30 12:37:37 -07:00
Girish Ramakrishnan
74ae0a1787
More changes
2018-07-30 10:46:14 -07:00
Girish Ramakrishnan
ed8351b0dc
Add re-installation check
...
Fixes #536
2018-07-30 10:10:30 -07:00
Girish Ramakrishnan
a1070b7da3
storage: fix file not found message
2018-07-30 07:47:52 -07:00
Girish Ramakrishnan
3067d87ca9
handle decryption errors
2018-07-29 21:01:20 -07:00
Girish Ramakrishnan
56ca6f449f
Set any restore errors in status object
...
Fixes #505
2018-07-29 20:31:58 -07:00
Girish Ramakrishnan
99ad3e499d
s3: do not rely on entry.s3
2018-07-29 09:00:57 -07:00
Girish Ramakrishnan
7182ad4205
s3: Remove usage of entries.s3
2018-07-29 07:51:12 -07:00
Girish Ramakrishnan
0b10e2b332
s3: add listDir
...
Fixes #440
2018-07-28 09:05:44 -07:00
Girish Ramakrishnan
f546d53ca2
gcs: add listDir
...
part of #440
2018-07-28 03:51:32 -07:00
Girish Ramakrishnan
2bcc0eef96
fs: downloadDir is unused
2018-07-27 16:56:30 -07:00
Girish Ramakrishnan
a5daad2e1a
rsync: encrypted download (fs backend)
...
Part of #440
2018-07-27 16:06:13 -07:00
Girish Ramakrishnan
b3c8767d79
rsync: encrypted upload (fs backend)
...
Part of #440
2018-07-27 15:34:48 -07:00
Girish Ramakrishnan
f97f528f05
backup: Implement downloadDir using listDir
2018-07-27 15:24:35 -07:00
Girish Ramakrishnan
ba8a549235
fs: open the source stream using download()
2018-07-27 15:23:48 -07:00
Girish Ramakrishnan
737541f707
storage: standardize the listDir API
2018-07-27 15:23:26 -07:00
Girish Ramakrishnan
94cb222869
filesystem: Use listDir
...
We can now refactor all the iterating/fs write logic into backups.js
(required for restoring encrypted backups)
2018-07-27 14:09:52 -07:00
Girish Ramakrishnan
df98847535
Remove backupDone from storage interface
...
This is only used by caas
2018-07-27 12:08:19 -07:00
Girish Ramakrishnan
3d22458f9b
Add the 3.0 UI changes
2018-07-27 00:08:08 -07:00
Girish Ramakrishnan
d76381fa26
More 3.0 changes
2018-07-27 00:04:31 -07:00
Girish Ramakrishnan
606cd4da36
Allow - in mailbox names (for no-reply)
2018-07-26 23:48:21 -07:00
Girish Ramakrishnan
554006683e
Only unset of admin flag is disallowed
2018-07-26 23:43:44 -07:00
Girish Ramakrishnan
0966edd8fe
Fix missing require
2018-07-26 22:36:20 -07:00
Girish Ramakrishnan
78a2176d1d
Make admin simply a boolean instead of group
...
This simplifies a lot of logic. Keeping an admin group has no benefit
2018-07-26 22:29:57 -07:00
Girish Ramakrishnan
39848a25a8
Refactor a bit
2018-07-26 15:35:41 -07:00
Girish Ramakrishnan
ea946396e7
Use users.isAdmin in all places
2018-07-26 13:23:06 -07:00
Girish Ramakrishnan
b4d5def56d
Revert role support
2018-07-26 13:23:06 -07:00
Johannes Zellner
477abf53f3
Add initial 3.0.0 changes
2018-07-26 21:36:43 +02:00
Girish Ramakrishnan
0cb03e3789
Add REST route for platform config
...
Fixes #566
2018-07-25 14:09:15 -07:00
Girish Ramakrishnan
f4d7d4e7f2
Set the domain field
2018-07-25 11:41:42 -07:00
Girish Ramakrishnan
c09ae963e9
merge set/addDnsRecords
...
This also makes the update mail domain route redundant
2018-07-25 10:51:21 -07:00
Girish Ramakrishnan
fa30312cea
lint
2018-07-25 10:34:57 -07:00
Girish Ramakrishnan
c063267c72
Split setting of dns records from mail config route
...
This allows us to enable email server but not setup the dns records
yet. Useful for importing existing mailboxes from another server
without adjusting the DNS.
2018-07-25 10:29:28 -07:00
Girish Ramakrishnan
589602cdb0
Add note
2018-07-25 08:29:39 -07:00
Girish Ramakrishnan
6be062f8fd
Return empty object for angular
2018-07-24 22:19:34 -07:00
Girish Ramakrishnan
837ec4eb12
Send subdomain field in mail status
2018-07-24 14:25:21 -07:00
Girish Ramakrishnan
4a4166764a
relay: Add a connect timeout
2018-07-23 17:05:15 -07:00
Girish Ramakrishnan
7654f36e23
Do temporary redirect instead
...
Permanent redirect can be cached forever in the browser which
means that changing redirect settings appear to not work.
2018-07-15 17:43:36 -07:00
Girish Ramakrishnan
6810c61e58
Add audit event for ownership transfer
2018-07-05 13:51:22 -07:00
Johannes Zellner
75f9b19db2
Ensure we uri encode the email query arguments for invite, reset and setup links
2018-07-04 11:09:29 +02:00
Johannes Zellner
17410c9432
Remove notes about updates only on paid plan for the digest
2018-07-04 10:59:17 +02:00
Johannes Zellner
8a1de81284
Cleanup sysadmin backup trigger test to only test for backup start event
2018-06-30 14:33:51 +02:00
Johannes Zellner
7b540a1d2d
Fixup database tests
2018-06-30 14:12:35 +02:00
Johannes Zellner
8e8488a8e6
Lets be explicit about the error
2018-06-30 14:02:40 +02:00
Johannes Zellner
b1b843fdd8
Fix dns tests
2018-06-30 13:59:23 +02:00
Johannes Zellner
c13c4d0b28
Ensure we purge all nginx configs of an app
2018-06-29 23:14:06 +02:00
Johannes Zellner
2371c8053f
We have added a query for removing subdomains in the transaction
2018-06-29 23:14:06 +02:00
Johannes Zellner
7dc2f3cb5b
Also wait for alternateDomains to be in sync
2018-06-29 23:14:06 +02:00
Johannes Zellner
163563f400
Remove now unused dnsRecordId
2018-06-29 23:14:06 +02:00
Johannes Zellner
868ed977b3
Cleanup alternateDomain dns records and nginx config
2018-06-29 23:14:06 +02:00
Johannes Zellner
262fe18fb2
Set dns record id for alternateDomains
2018-06-29 23:14:06 +02:00
Johannes Zellner
1eba79660e
Move dnsRecordId to subdomains table
2018-06-29 23:14:06 +02:00
Johannes Zellner
3088ac098f
Put redirect label into alternateDomain nginx configs
2018-06-29 23:14:06 +02:00
Johannes Zellner
45a41ea161
Fix typo
2018-06-29 23:14:06 +02:00
Johannes Zellner
6c17709d2a
Fix fqdn building for alternateDomains
2018-06-29 23:14:06 +02:00
Johannes Zellner
2a52543087
The property is called subdomain not location
2018-06-29 23:14:06 +02:00
Johannes Zellner
f4f6f4e7e0
Use business logic for getting all apps in taskmanager
2018-06-29 23:14:06 +02:00
Johannes Zellner
f53c526677
Remove superflous . for user cert key file location
2018-06-29 23:14:06 +02:00
Johannes Zellner
1aa58a3905
ignore alternateDomains field for appdb updates
2018-06-29 23:14:06 +02:00
Johannes Zellner
2d58a6bdff
Fix typo
2018-06-29 23:14:06 +02:00
Johannes Zellner
40c22a1ad7
send alternateDomains over the wire
2018-06-29 23:14:06 +02:00
Johannes Zellner
3d0da34960
Create nginx configs for app redirects
2018-06-29 23:14:06 +02:00
Johannes Zellner
a6e53e3617
Ensure certificates for alternateDomains
2018-06-29 23:14:06 +02:00
Johannes Zellner
8efab41d37
Amend the alternateDomains property to app objects
2018-06-29 23:14:06 +02:00
Johannes Zellner
9af456cc7d
Fix appdb.add as location and domain columns are gone
2018-06-29 23:14:06 +02:00
Johannes Zellner
9ba78b5b87
Setup alternate domains in apptask configure
2018-06-29 23:14:06 +02:00
Johannes Zellner
b1b848de21
Support configuring alternateDomains for apps
2018-06-29 23:14:06 +02:00
Johannes Zellner
5497a7d4d8
Do not handle location and domain field for apps table updates
2018-06-29 23:14:06 +02:00
Johannes Zellner
18887b27e6
Fix migration script typo
2018-06-29 23:14:06 +02:00
Johannes Zellner
fb42b54210
Remove apps.location and apps.domain
...
This is now managed in the subdomains table
2018-06-29 23:14:06 +02:00
Johannes Zellner
4d2ba2adaa
Use subdomains table in appdb
2018-06-29 23:14:06 +02:00
Johannes Zellner
c97e8d6bd4
add subdomains table with migration scripts
2018-06-29 23:14:06 +02:00
Girish Ramakrishnan
b15029de11
Send tokenScopes as an array
2018-06-29 09:53:12 -07:00
Girish Ramakrishnan
9aa74c99fc
Make setup route return tokenScopes
...
This is used by the dashboard logic during initial activation
2018-06-29 08:27:34 -07:00
Girish Ramakrishnan
35c9e99102
Move the update info into separate route (since it is sensitive)
2018-06-28 17:50:27 -07:00
Girish Ramakrishnan
cab9bc3a61
Unify the config routes into /api/v1/config
...
No more separate config routes for different types of user
2018-06-28 17:40:57 -07:00
Girish Ramakrishnan
712c920b86
Move caas config to separate route
2018-06-28 17:28:46 -07:00
Girish Ramakrishnan
9978dff627
Add API to set and transfer ownership
2018-06-28 16:48:04 -07:00
Girish Ramakrishnan
ff5bd42bef
remove mostly dead comment
2018-06-28 14:19:56 -07:00
Girish Ramakrishnan
dfa318e898
Add ownerId for apps
...
This tracks who installed the app.
2018-06-28 14:13:12 -07:00
Girish Ramakrishnan
38977858aa
When issuing token intersect with the existing user roles
...
Also:
* Move token validation to accesscontrol.js
* Use clients.addTokenByUserId everywhere
2018-06-28 00:07:43 -07:00
Girish Ramakrishnan
6510240c0a
Fix accesscontrol.intersectScopes
2018-06-27 18:08:38 -07:00
Girish Ramakrishnan
d66dc11f01
Make canonicalScopeString return sorted array
2018-06-27 14:07:25 -07:00
Girish Ramakrishnan
ce4424d115
debug out the scope
2018-06-27 13:54:10 -07:00
Girish Ramakrishnan
a958c01974
digest: drop the Cloudron prefix in the subject
2018-06-27 11:00:41 -07:00
Girish Ramakrishnan
877f181f8d
Put ts in app listing as well
2018-06-26 19:58:21 -07:00
Girish Ramakrishnan
02c0137dc1
Add a timestamp column to apps table
...
this field can be used in UI to see if more detailed app information
has to be fetched (since it calls the list apps REST API periodically)
2018-06-26 18:16:39 -07:00
Girish Ramakrishnan
d0b34cc43e
Fix schema
2018-06-26 18:05:34 -07:00
Girish Ramakrishnan
93a2cab355
Ignore internal mailbox conflict errors
2018-06-26 17:44:14 -07:00
Girish Ramakrishnan
6907475f7a
Add app management scope
...
This splits the apps API into those who have just 'read' access
and those who have 'manage' access.
2018-06-26 08:56:30 -07:00
Girish Ramakrishnan
9bf93b026b
rename to removeInternalFields
2018-06-25 16:40:16 -07:00
Girish Ramakrishnan
f932f8b3d3
Add user management scope
...
This splits the user and groups API into those who have just 'read' access
and those who have 'manage' access.
2018-06-25 16:10:00 -07:00
Girish Ramakrishnan
7ab5d5e50d
Add domain management scope
...
This splits the domains API into those who have just 'read' access
(i.e without configuration details) and those who have 'manage' access.
2018-06-25 15:12:22 -07:00
Johannes Zellner
5028230354
Update cloudron-syslog
...
Fixes #564
2018-06-25 19:35:13 +02:00
Girish Ramakrishnan
80e9214f5b
Reduce password length for sendmail/recvmail
...
Fixes #565
2018-06-22 16:37:34 -07:00
Girish Ramakrishnan
5ca64dd642
Normalize host path to prevent access to arbitrary paths
2018-06-22 08:29:08 -07:00
Girish Ramakrishnan
24d9d3063b
Allow specifying bindMounts array to localstorage addon
2018-06-21 22:04:06 -07:00
Girish Ramakrishnan
74b1df17c0
Fix groups test and route to make name optional
2018-06-20 09:31:50 -07:00
Girish Ramakrishnan
7880a2f9c3
API returns 403 for incorrect password
2018-06-20 09:27:24 -07:00
Girish Ramakrishnan
8a84872704
Wrong password logs out the user
2018-06-18 18:52:35 -07:00
Girish Ramakrishnan
5d13cc363f
Allow group name to be changed
2018-06-18 18:30:40 -07:00
Girish Ramakrishnan
987a42b448
Fix syntax
2018-06-18 17:58:35 -07:00
Girish Ramakrishnan
3601e4f8a6
if -> while
2018-06-18 17:39:15 -07:00
Girish Ramakrishnan
60ed290179
validate role names against existing roles
2018-06-18 17:32:07 -07:00
Girish Ramakrishnan
ff73bc121f
Make tokenScope plural
2018-06-18 15:10:02 -07:00
Girish Ramakrishnan
6cd0601629
Map group roles to scopes
2018-06-18 14:52:39 -07:00
Girish Ramakrishnan
b5c8e7a52a
Rename to getGroups
2018-06-18 14:10:29 -07:00
Girish Ramakrishnan
7f3114e67d
Rename to get/setMembership (to indicate IDs and not group objects
2018-06-18 13:57:17 -07:00
Girish Ramakrishnan
1dbcf2a46a
Rename to groups.update
2018-06-18 13:41:27 -07:00
Girish Ramakrishnan
898cbd01b3
tokens table always has canonical scope
2018-06-17 23:11:36 -07:00
Girish Ramakrishnan
b6b7d08af3
Rename to accesscontrol.canonicalScopeString
2018-06-17 22:43:42 -07:00
Girish Ramakrishnan
6a2dacb08a
Make intersectScopes take an array
2018-06-17 22:39:33 -07:00
Girish Ramakrishnan
1015b0ad9c
validateScope -> validateScopeString
2018-06-17 22:29:17 -07:00
Girish Ramakrishnan
106e17f7ff
caas: verify dns config
...
this is so that it fails if someone gives invalid token via API call
2018-06-17 22:22:05 -07:00
Girish Ramakrishnan
6ca28d9a58
validate dns config parameters
2018-06-17 22:21:51 -07:00
Girish Ramakrishnan
ad6bc191f9
Make hasScopes take an array
2018-06-17 21:06:17 -07:00
Girish Ramakrishnan
682f7a710c
Add an appstore scope for subscription settings
2018-06-17 18:09:13 -07:00
Girish Ramakrishnan
f24a099e79
Remove user.admin property
...
The UI will now base itself entirely off the scopes of the token
2018-06-17 16:49:56 -07:00
Girish Ramakrishnan
156ffb40c9
Remove scope from users.get
2018-06-17 16:07:20 -07:00
Girish Ramakrishnan
db8b6838bb
Move skip password verification logic to accesscontrol.js
2018-06-17 15:20:27 -07:00
Girish Ramakrishnan
c3631350cf
We can skip user.scope here since we will intersect at access time anyway
2018-06-17 15:11:10 -07:00
Girish Ramakrishnan
669a1498aa
Do not dump token in logs
2018-06-17 15:01:42 -07:00
Girish Ramakrishnan
12e55d1fab
Use _.flatten instead
2018-06-16 13:03:52 -07:00
Girish Ramakrishnan
ca9cd2cf0f
Add groups.getRoles
2018-06-16 00:29:56 -07:00
Girish Ramakrishnan
e8d9597345
Fix various error codes
...
401 - bad password/wrong password
403 - authenticated but not authorized
409 - conflict
2018-06-15 23:15:30 -07:00
Girish Ramakrishnan
24b0a96f07
Move passport logic to routes
2018-06-15 17:32:40 -07:00
Girish Ramakrishnan
858ffcec72
Add note
2018-06-15 17:04:18 -07:00
Girish Ramakrishnan
05a8911cca
condense the comments
2018-06-15 16:56:35 -07:00
Girish Ramakrishnan
89b41b11a4
Remove bogus accesscontrol logic
2018-06-15 16:26:14 -07:00
Girish Ramakrishnan
491d1c1273
getByResetToken already has the user object
2018-06-15 16:22:28 -07:00
Girish Ramakrishnan
0a0884bf93
lint
2018-06-15 16:10:06 -07:00
Girish Ramakrishnan
a1ac7f2ef9
Remove support for authenticating non-oauth2 clients via BasicStrategy
...
This is not used anywhere
2018-06-15 15:38:58 -07:00
Girish Ramakrishnan
6aef9213aa
Add notes on the various strategies
2018-06-15 15:38:53 -07:00
Girish Ramakrishnan
2e92172794
Do not dump the entire token
2018-06-15 14:56:52 -07:00
Girish Ramakrishnan
c210359046
Create the backup logs dir
2018-06-15 14:56:32 -07:00
Girish Ramakrishnan
042ea081a0
Typo
2018-06-15 14:35:52 -07:00
Girish Ramakrishnan
1c32224a8a
Move backup logs to make the REST API work
2018-06-15 09:47:34 -07:00
Johannes Zellner
b3fa5afe3a
First show apptask logs, then app logs
2018-06-15 14:58:07 +02:00
Johannes Zellner
843fec9dcb
Fix wrong hasSubscription logic for digest email
2018-06-15 13:44:33 +02:00
Johannes Zellner
35d9cc3c02
Update cloudron-syslog
2018-06-15 10:20:03 +02:00
Girish Ramakrishnan
02d5d2f808
Add API to add and update the group roles
2018-06-15 00:28:27 -07:00
Girish Ramakrishnan
a77d45f5de
Add rolesJson to groups table
...
This will contain the roles ('role definition') of a group of
users. We will internally map these to our API scopes.
2018-06-14 22:54:52 -07:00
Girish Ramakrishnan
5e09f3dcb2
Group names can contain - and end with .app
...
now that we have decoupled it from mailbox names, this restriction
can be removed
2018-06-14 22:22:09 -07:00
Girish Ramakrishnan
eb566d28e7
Remove groupdb._addDefaultGroups
...
Putting this in db code causes issues when we merge in the
accesscontrol/roles variables (groupdb needs to source those
variables)
2018-06-14 21:56:34 -07:00
Girish Ramakrishnan
8795da5d20
Allow subscopes
...
We can now have scopes as apps:read, apps:write etc
2018-06-14 20:56:04 -07:00
Girish Ramakrishnan
a9ec46c97e
Add test for accesscontrol.validateScope
2018-06-14 20:51:22 -07:00
Girish Ramakrishnan
dc86b0f319
validateRequestedScopes -> hasScopes
2018-06-14 20:31:48 -07:00
Girish Ramakrishnan
f7089c52ff
normalizeScope -> intersectScope
2018-06-14 20:23:56 -07:00
Girish Ramakrishnan
62793ca7b3
Add accesscontrol.canonicalScope tests
2018-06-14 20:17:59 -07:00
Girish Ramakrishnan
92e6909567
Move feedback route to cloudronScope
2018-06-14 20:03:51 -07:00
Girish Ramakrishnan
55e5c319fe
Fix failing log test
2018-06-14 13:43:44 -07:00
Johannes Zellner
1f8451fedb
Do not print tail file headers in the logs
2018-06-14 12:53:49 +02:00
Johannes Zellner
cdc78936b5
Ignore faulty empty log lines
2018-06-14 12:53:19 +02:00
Girish Ramakrishnan
eaf0b4e56e
mail api: handle not found errors
2018-06-13 07:51:22 -07:00
Girish Ramakrishnan
7339c37b98
Fix invite link in userAdded notification
2018-06-12 20:08:59 -07:00
Girish Ramakrishnan
3176938ea0
Add 2.4.1 changes
2018-06-12 19:25:24 -07:00
Girish Ramakrishnan
c3c77c5a97
Fix wording
2018-06-12 18:18:41 -07:00
Girish Ramakrishnan
32e6b9024c
Add email query param to reset code path
...
This reduces any attack surface
2018-06-12 17:56:41 -07:00
Girish Ramakrishnan
5a6ea33694
Display apptask logs
2018-06-12 14:55:58 -07:00
Girish Ramakrishnan
60bff95d9f
Add journalctl fallback for box logs
2018-06-12 14:39:33 -07:00
Girish Ramakrishnan
0cc2838b8b
lint
2018-06-12 13:49:52 -07:00
Girish Ramakrishnan
0fc4f4bbff
Explicitly pass port and logdir
2018-06-11 22:53:12 -07:00
Girish Ramakrishnan
0b82146b3e
Install cloudron-syslog service file from box repo
2018-06-11 22:42:49 -07:00
Girish Ramakrishnan
4369b3046e
Make options non-optional
2018-06-11 15:14:59 -07:00
Girish Ramakrishnan
ac75b60f47
Fix password validation text in setup and reset forms
2018-06-11 14:01:40 -07:00
Girish Ramakrishnan
d752ef5fad
Move password generation logic to model code
2018-06-11 13:06:08 -07:00
Girish Ramakrishnan
c099d5d3fa
Make password strength be 8 chars
...
Fixes #434
2018-06-11 12:55:24 -07:00
Girish Ramakrishnan
6534297a5d
Remove hat module
...
It's not been updated for 6 years!
2018-06-11 12:38:29 -07:00
Girish Ramakrishnan
2aa6350c94
Change the function names
...
We had these because user and mailbox code used to be mixed
2018-06-11 11:43:41 -07:00
Girish Ramakrishnan
8b4a399b8f
More changes
2018-06-11 11:43:41 -07:00
Johannes Zellner
177243b7f2
Support new platform/addon log style
2018-06-11 20:09:45 +02:00
Girish Ramakrishnan
c2ca827458
Add 2.4.0 changes
2018-06-11 10:13:48 -07:00
Girish Ramakrishnan
90d7dc893c
Fix test
2018-06-11 10:01:54 -07:00
Girish Ramakrishnan
eeaaa95ca3
Put email on free plan
2018-06-09 18:26:00 -07:00
Girish Ramakrishnan
04be582573
make the mailbox name follow the apps new location, if the user did not set it explicitly
2018-06-09 11:05:54 -07:00
Girish Ramakrishnan
0953787559
Fix docker exec terminal resize issue
...
Fixes #549
2018-06-08 11:44:24 -07:00
Girish Ramakrishnan
3bd8a58ea5
Update docker to 18.03.1
2018-06-08 09:13:46 -07:00
Girish Ramakrishnan
275181824f
Not sure why package lock keeps changing
2018-06-07 18:45:30 -07:00
Girish Ramakrishnan
f814ffb14f
Update node version
2018-06-07 18:43:52 -07:00
Girish Ramakrishnan
95ae948fce
more package lock changes
2018-06-07 18:42:47 -07:00
Girish Ramakrishnan
9debf1f6c6
Update some packages
2018-06-07 18:36:36 -07:00
Girish Ramakrishnan
0e583b5afe
Update node to 8.11.2
2018-06-07 17:06:47 -07:00
Girish Ramakrishnan
fa47031a63
cloudron-activate: Set externalDisk to true
2018-06-07 11:38:07 -07:00
Girish Ramakrishnan
7fd1bb8597
backup: Add externalDisk option to fs backend
...
This merely confirms from the user understands that backups have to
stored on an external disk.
2018-06-07 11:14:13 -07:00
Johannes Zellner
8c5b550caa
Explicitly use cloudron-syslog 1.0.0 instead of moving master
2018-06-07 16:38:44 +02:00
Johannes Zellner
3d57c32853
Explicitly send empty object for successful post to avoid angular warnings
2018-06-07 16:10:47 +02:00
Johannes Zellner
898d928dd6
logrotate files under platformdata must be owned by root
2018-06-06 18:45:54 +02:00
Johannes Zellner
c578a048dd
Ensure app logrotate file is owned by root
2018-06-06 18:39:52 +02:00
Johannes Zellner
2a475c1199
Add logrotate for app and addon logs
2018-06-06 17:36:48 +02:00
Johannes Zellner
57e195883c
Use plain syslog tags to be compatible with the format
2018-06-06 14:09:50 +02:00
Johannes Zellner
f2178d9b81
Setup addons to log to cloudron-syslog
2018-06-06 14:09:50 +02:00
Johannes Zellner
df1ac43f40
Use subshells correctly
2018-06-06 14:09:50 +02:00
Johannes Zellner
39059c627b
Add --unsafe-perm for cloudron-syslog installation
2018-06-06 14:09:50 +02:00
Johannes Zellner
d942c77ceb
Bump infra version to reconfigure the container
2018-06-06 14:09:50 +02:00
Johannes Zellner
c39240c518
Install cloudron-syslog
2018-06-06 14:09:50 +02:00
Johannes Zellner
fd0e2782d8
Deliver the correct utc timestamp instead of the ISO string
2018-06-06 14:09:50 +02:00
Johannes Zellner
36aaa0406e
Fix comment about firewall rule setup
2018-06-06 14:09:50 +02:00
Johannes Zellner
17ecb366af
Bring back json log format for now
2018-06-06 14:09:50 +02:00
Johannes Zellner
1a83281e16
use port 2514 for syslog
2018-06-06 14:09:50 +02:00
Johannes Zellner
ec41e0eef5
Use tail instead of journalctl to deliver logs
2018-06-06 14:09:50 +02:00
Johannes Zellner
d4097ed4e0
Move logs into platformdata/logs
2018-06-06 14:09:50 +02:00
Johannes Zellner
8fa99fae1a
Put all apptask logs of an app in the same log file
2018-06-06 14:09:50 +02:00
Johannes Zellner
e9400e5dce
support test usecase to not put logs in /var/log
2018-06-06 14:09:50 +02:00
Johannes Zellner
372a17dc37
Cleanup logs on app uninstall
2018-06-06 14:09:50 +02:00
Johannes Zellner
5ca60b2d3c
Since we use log files now, lets keep the apptask timestamp for debug()
2018-06-06 14:09:50 +02:00
Johannes Zellner
1dc649b7a2
Put apptask logs alongside the app logs
2018-06-06 14:09:50 +02:00
Johannes Zellner
74437db740
Use syslog logging backend for apps and addons
2018-06-06 14:09:50 +02:00
Girish Ramakrishnan
70128458b2
Fix crash when renewAll is called when cloudron is not setup yet
2018-06-05 21:27:32 -07:00
Girish Ramakrishnan
900225957e
typo: code should return SetupError
2018-06-05 21:19:47 -07:00
Girish Ramakrishnan
fd8f5e3c71
Return error for trailing dot instead
2018-06-05 21:09:07 -07:00
Girish Ramakrishnan
7382ea2b04
Handle my subdomain already existing
2018-06-05 20:53:28 -07:00
Girish Ramakrishnan
09163b8a2b
strip any trailing dot in the domain and zoneName
2018-06-05 20:33:14 -07:00
Girish Ramakrishnan
953398c427
lint
2018-06-05 20:02:47 -07:00
Girish Ramakrishnan
9f7406c235
cloudron-activate: Add option to setup backup dir
2018-06-05 19:40:46 -07:00
Girish Ramakrishnan
2e427aa60e
Add 2.3.2 changes
2018-06-05 09:51:56 -07:00
Girish Ramakrishnan
ab80cc9ea1
Add username to the TOTP secret name
...
This works around issue in FreeOTP app which crashed when
the same name is used.
https://github.com/freeotp/freeotp-ios/issues/69
https://github.com/freeotp/freeotp-android/issues/69
2018-06-04 16:08:03 -07:00
Girish Ramakrishnan
321f11c644
mysql: _ prefix is hardcoded in mysql addon already
...
Fixes #560
2018-06-04 12:31:40 -07:00
Girish Ramakrishnan
47f85434db
cloudron-activate: always login since activate return token and not accessToken
2018-06-01 00:12:19 -07:00
Girish Ramakrishnan
7717c7b1cd
Add cloudron-activate script to automate activation from VM image
2018-05-31 23:46:44 -07:00
Johannes Zellner
7618aa786c
Handle AppstoreError properly when no appstore account was set
2018-05-30 20:33:58 +02:00
Girish Ramakrishnan
f752cb368c
Remove spamcannibal
...
Fixes #559
2018-05-30 11:07:17 -07:00
Girish Ramakrishnan
ca500e2165
mailer: do not send notifications to fallback email
2018-05-30 09:26:59 -07:00
Johannes Zellner
371f81b980
Add test for mail enabling without a subscription
2018-05-30 00:02:18 +02:00
Johannes Zellner
c68cca9a54
Fixup mail test, which requires a subscription
2018-05-29 23:59:53 +02:00
Johannes Zellner
9194be06c3
Fix app purchase test
2018-05-29 23:24:08 +02:00
Johannes Zellner
9eb58cdfe5
Check for plan when enabling email
2018-05-29 13:31:43 +02:00
Johannes Zellner
99be89012d
No need to check for active subscription state, as the appstore already does this
2018-05-29 13:31:43 +02:00
Johannes Zellner
541fabcb2e
Add convenience function to determine if subscription is 'free' or not
2018-05-29 13:31:43 +02:00
Johannes Zellner
915e04eb08
We do not have an 'undecided' plan state anymore
2018-05-29 13:31:43 +02:00
Girish Ramakrishnan
48896d4e50
more changes
2018-05-28 10:06:46 -07:00
Johannes Zellner
29682c0944
Only allow max of 2 apps on the free plan
2018-05-26 18:53:20 +02:00
Girish Ramakrishnan
346b1cb91c
more changes
2018-05-26 08:11:19 -07:00
Girish Ramakrishnan
e552821c01
Add 2.3.1 changes
2018-05-25 11:44:04 -07:00
Girish Ramakrishnan
bac3ba101e
Add mailboxName to app configure route
...
Fixes #558
2018-05-24 16:26:34 -07:00
Girish Ramakrishnan
87c46fe3ea
apps: return mailbox name as part of app
...
part of cloudron/box#558
2018-05-24 15:50:46 -07:00
Girish Ramakrishnan
f9763b1ad3
namecom: MX record not set properly
2018-05-24 09:41:52 -07:00
Girish Ramakrishnan
f1e6116b83
Fix copyright years
2018-05-23 20:02:33 -07:00
Girish Ramakrishnan
273948c3c7
Fix tests
2018-05-22 13:22:48 -07:00
Girish Ramakrishnan
9c073e7bee
Preserve addons credentials when restoring
2018-05-22 13:07:58 -07:00
Girish Ramakrishnan
8b3edf6efc
Bump mail container for managesieve fix
2018-05-18 18:26:19 -07:00
Girish Ramakrishnan
07e649a2d3
Add more changes
2018-05-17 20:17:24 -07:00
Girish Ramakrishnan
8c63b6716d
Trigger a re-configure
2018-05-17 20:16:51 -07:00
Girish Ramakrishnan
6fd314fe82
Do not change password on app update
...
Fixes #554
2018-05-17 19:48:57 -07:00
Girish Ramakrishnan
0c7eaf09a9
bump container versions
2018-05-17 10:00:00 -07:00
Girish Ramakrishnan
d0988e2d61
Generate password for mongodb on platform side
...
Part of #554
2018-05-17 10:00:00 -07:00
Girish Ramakrishnan
4bedbd7167
Generate password for postgresql on platform side
...
Part of #554
2018-05-17 10:00:00 -07:00
Girish Ramakrishnan
7ca7901a73
Generate password for mysql on platform side
...
Part of #554
2018-05-17 09:59:57 -07:00
Girish Ramakrishnan
d28dfdbd03
Add 2.3.0 changes
2018-05-17 09:24:47 -07:00
Girish Ramakrishnan
c85ca3c6e2
account setup simply redirects to main page now
2018-05-17 09:17:08 -07:00
Girish Ramakrishnan
da934d26af
call callback
2018-05-17 09:16:32 -07:00
Girish Ramakrishnan
f7cc49c5f4
move platform config to db
...
this way it can be tied up to some REST API later
part of #555
2018-05-16 17:34:56 -07:00
Girish Ramakrishnan
27e263e7fb
lint
2018-05-16 14:08:54 -07:00
Girish Ramakrishnan
052050f48b
Add a way to persist addon memory configuration
...
Fixes #555
2018-05-16 14:00:55 -07:00
Girish Ramakrishnan
81e29c7c2b
Make the INFRA_VERSION_FILE more readable
2018-05-16 09:54:42 -07:00
Girish Ramakrishnan
c3fbead658
Allow zoneName to be changed in domain update route
2018-05-15 15:39:30 -07:00
Girish Ramakrishnan
36f5b6d678
manual dns: handle ENOTFOUND
...
Fixes #548
2018-05-15 15:39:18 -07:00
Girish Ramakrishnan
a45b1449de
Allow ghost users to skip 2fa
2018-05-14 15:07:01 -07:00
Girish Ramakrishnan
a1020ec6b8
remove /user from profile route
2018-05-13 21:53:06 -07:00
Johannes Zellner
d384284ec8
Add name.com DNS provider in the CHANGES file
2018-05-11 10:03:58 +02:00
Girish Ramakrishnan
bd29447a7f
gcdns: Fix typo
2018-05-10 10:05:42 -07:00
Johannes Zellner
aa5952fe0b
Wait longer for dns in apptask
...
name.com often takes longer to sync all nameservers, which means we
timeout too early for them
2018-05-10 15:37:47 +02:00
Johannes Zellner
39dc5da05a
We have to return a value on dns record upserting
2018-05-09 18:58:09 +02:00
Johannes Zellner
d0e07d995a
Add name.com dns tests
2018-05-09 18:13:21 +02:00
Johannes Zellner
94408c1c3d
Add name.com DNS provider
2018-05-09 18:13:14 +02:00
Girish Ramakrishnan
66f032a7ee
route53: use credentials instead of dnsConfig
2018-05-07 23:41:03 -07:00
Girish Ramakrishnan
4356df3676
bump timeout
2018-05-07 16:28:11 -07:00
Girish Ramakrishnan
1e730d2fc0
route53: more test fixing
2018-05-07 16:20:03 -07:00
Girish Ramakrishnan
e8875ccd2e
godaddy: add tests
2018-05-07 16:09:00 -07:00
Girish Ramakrishnan
2b3656404b
route53: fix tests
2018-05-07 15:53:08 -07:00
Girish Ramakrishnan
60b5e6f711
gandi: add tests
2018-05-07 15:51:51 -07:00
Girish Ramakrishnan
b9166b382d
route53: set listHostedZonesByName for new/updated domains
2018-05-07 13:42:10 -07:00
Girish Ramakrishnan
d0c427b0df
Add more 2.2 changes
2018-05-07 11:46:27 -07:00
Girish Ramakrishnan
da5d0c61b4
godaddy: workaround issue where there is no del record API
2018-05-07 11:41:37 -07:00
Girish Ramakrishnan
1f75c2cc48
route53: add backward compat for pre-2.2 IAM perms
...
backward compat for 2.2, where we only required access to "listHostedZones"
2018-05-07 11:24:34 -07:00
Girish Ramakrishnan
d0197aab15
Revert "No need to iterate over the hosted zones anymore"
...
This reverts commit e4a70b95f5 .
We will add backward compat route for pre-2.2 cloudrons
2018-05-07 11:23:28 -07:00
Johannes Zellner
e4a70b95f5
No need to iterate over the hosted zones anymore
2018-05-07 16:35:32 +02:00
Johannes Zellner
f4d3d79922
Query only requested Route53 zone
...
Fixes #550
2018-05-07 16:30:42 +02:00
Girish Ramakrishnan
e3827ee25f
Add more 2.2 changes
2018-05-06 23:52:02 -07:00
Girish Ramakrishnan
9981ff2495
Add GoDaddy Domain API
2018-05-06 23:07:52 -07:00
Girish Ramakrishnan
722b14b13d
Add note on MX records
2018-05-06 22:14:39 -07:00
Girish Ramakrishnan
eb2fb6491c
gandi: more fixes
2018-05-06 21:16:47 -07:00
Girish Ramakrishnan
a53afbce91
Add Gandi LiveDNS backend
2018-05-06 19:48:51 -07:00
Girish Ramakrishnan
31af6c64d0
Expire existing webadmin token so that the UI gets a new token
2018-05-06 13:08:22 -07:00
Girish Ramakrishnan
e8efc5a1b2
Fix test
2018-05-06 12:58:39 -07:00
Girish Ramakrishnan
0c07c6e4d0
Allow "-" in usernames
...
now that username and mailboxes are totally separate, we can allow '-'.
'+' is still reserved because LDAP it.
Fixes #509
2018-05-05 09:56:21 -07:00
Girish Ramakrishnan
da5fd71aaa
Bump mail container for CRAM-MD5 login fix
2018-05-04 21:57:26 -07:00
Girish Ramakrishnan
d57d590363
2.2.0 changes
2018-05-04 10:30:24 -07:00
Johannes Zellner
d6e49415d4
Only list user mailboxes in ldap search
2018-05-04 17:02:04 +02:00
Johannes Zellner
cb73eb61d4
Allow binds against mailboxes
2018-05-04 17:02:04 +02:00
Johannes Zellner
4ce3a262a3
Allow search for mailboxes over ldap for a specific domain
2018-05-04 17:02:04 +02:00
Girish Ramakrishnan
d18d1a977a
Add duplicate profile route for compat with old apps using oauth addon
2018-05-03 09:29:46 -07:00
Girish Ramakrishnan
616e38189c
Revert "x"
...
This reverts commit 182ea3dac3 .
2018-05-03 09:29:23 -07:00
Johannes Zellner
726cafcee4
Rollback appdb record on clone and install if appstore purchase fails
2018-05-03 13:20:34 +02:00
Girish Ramakrishnan
e5c43e9acd
Remove debug
2018-05-02 12:41:22 -07:00
Girish Ramakrishnan
f09e8664d1
Return canonical scope in REST responses
...
The '*' scope is purely an implementation detail. It cannot
be requested as such.
2018-05-02 12:36:41 -07:00
Girish Ramakrishnan
182ea3dac3
x
2018-05-01 15:17:48 -07:00
Girish Ramakrishnan
97acd40829
remove obsolete roleSdk from the database
...
the file is renamed because cloudron.io was patched by mistake and we want to run this
migration there
2018-05-01 14:53:46 -07:00
Girish Ramakrishnan
f1abb2149d
gravatar url is already generated client side
2018-05-01 14:30:48 -07:00
Girish Ramakrishnan
8c4015851a
merge auth.js into accesscontrol.js
2018-05-01 14:03:10 -07:00
Girish Ramakrishnan
a545bdd574
merge developer.js into clients.js
2018-05-01 14:02:59 -07:00
Girish Ramakrishnan
d1135accbd
lint
2018-05-01 13:58:13 -07:00
Girish Ramakrishnan
d5b594fade
return the scope as part of the user profile
...
send canonical scope in the profile response
2018-05-01 13:25:47 -07:00
Girish Ramakrishnan
c5ffb65563
Fix usage of normalizeScope
2018-05-01 13:21:53 -07:00
Girish Ramakrishnan
f76a5a7ba7
Move the clients API out of oauth prefix
2018-05-01 11:30:51 -07:00
Girish Ramakrishnan
17bcd95961
typo: return the scope as the scope
2018-05-01 10:59:46 -07:00
Girish Ramakrishnan
23bc0e8db7
Remove SDK Role
...
Just compare with the token's clientId instead
2018-04-30 23:03:30 -07:00
Girish Ramakrishnan
240ee5f563
Ensure we hand out max user.scope
...
The token.scope was valid at token creation time. The user's scope
could since have changed (maybe we got kicked out of a group).
2018-04-30 22:51:57 -07:00
Girish Ramakrishnan
200f43a58e
lint
2018-04-30 22:41:23 -07:00
Girish Ramakrishnan
61d803f528
Use SCOPE_ANY everywhere
2018-04-30 21:44:24 -07:00
Girish Ramakrishnan
e7c8791356
lint
2018-04-30 21:41:09 -07:00
Girish Ramakrishnan
bc4f9cf596
Remove redundant requireAdmin
...
We already hand out scopes based on the user's access control
2018-04-30 21:38:48 -07:00
Girish Ramakrishnan
9789966017
Set the scope for a token basedon what the user has access to
2018-04-30 21:21:18 -07:00
Girish Ramakrishnan
1432d90f37
lint
2018-04-30 21:13:23 -07:00
Girish Ramakrishnan
68317a89cb
remove the analytics hooks
2018-04-30 15:33:25 -07:00
Girish Ramakrishnan
c84f984205
No need to create a token on password reset
2018-04-30 15:15:05 -07:00
Johannes Zellner
6e19153350
Remove now unused result argument
2018-04-30 20:37:12 +02:00
Johannes Zellner
4dc778f7c2
Change reset password button text
2018-04-30 20:17:56 +02:00
Johannes Zellner
c5c3748aa9
Do not auto login on password reset
2018-04-30 19:55:59 +02:00
Girish Ramakrishnan
f809e359c9
refactor the global variables as functions
2018-04-29 20:17:45 -07:00
Girish Ramakrishnan
91e846d976
Add SCOPE_DOMAINS
2018-04-29 18:11:33 -07:00
Girish Ramakrishnan
b5f8ca6c16
Fix nasssty typo
2018-04-29 17:50:12 -07:00
Girish Ramakrishnan
922ab3bde1
lint
2018-04-29 17:50:12 -07:00
Girish Ramakrishnan
3b7bcc1f61
refactor scopes into accesscontrol.js
...
this will be our authorization layer for oauth and non-oauth tokens.
2018-04-29 17:50:07 -07:00
Girish Ramakrishnan
6e3b060615
Use SCOPE_PROFILE constant
2018-04-29 17:12:30 -07:00
Girish Ramakrishnan
cc113d0bb5
Add SCOPE_CLIENTS for oauth clients API
2018-04-29 17:03:10 -07:00
Girish Ramakrishnan
3e22d513eb
Add SCOPE_MAIL for mail APIs
2018-04-29 17:01:12 -07:00
Girish Ramakrishnan
9cf51ef680
Update cid-webadmin to have all the scopes possible
2018-04-29 16:57:49 -07:00
Girish Ramakrishnan
1c55a3e310
typo
2018-04-29 11:29:21 -07:00
Girish Ramakrishnan
d8acf92929
UserError -> UsersError
2018-04-29 11:22:15 -07:00
Girish Ramakrishnan
7bb8d059b5
GroupError -> GroupsError
2018-04-29 11:21:01 -07:00
Girish Ramakrishnan
863afc68cb
DomainError -> DomainsError
2018-04-29 11:20:12 -07:00
Girish Ramakrishnan
4fd58fb46b
Rename user.js to users.js
2018-04-29 11:19:04 -07:00
Girish Ramakrishnan
b1b664ceca
Move removeInternalAppFields to model code
2018-04-29 10:47:34 -07:00
Girish Ramakrishnan
1a27009fb5
Make expiresAt a body parameter
2018-04-28 22:02:07 -07:00
Girish Ramakrishnan
6c8c206e89
Move input validation logic to routes
2018-04-28 21:58:56 -07:00
Girish Ramakrishnan
82207c3ccd
Keep naming consistent with delToken
2018-04-28 21:55:57 -07:00
Girish Ramakrishnan
6768994bbe
Capitalize the 2fa text
2018-04-28 10:20:33 -07:00
Girish Ramakrishnan
b72efb1018
Remove private fields when listing domains
...
Currently, domains list route does not return the fallback cert.
make it future proof, just in case.
2018-04-27 11:41:30 -07:00
Johannes Zellner
7a8c525beb
Add 2fa Oauth route tests
2018-04-27 14:08:22 +02:00
Johannes Zellner
9372d8797a
Add 2fa tests for developer login api
2018-04-27 12:29:11 +02:00
Johannes Zellner
faeb89b258
Add 2fa token login to oauth login form
2018-04-27 11:46:41 +02:00
Johannes Zellner
50d7ade0d9
Remove unused property on set 2fa secret
2018-04-27 08:20:12 +02:00
Johannes Zellner
497c76a905
Add 2fa token check to developer login
2018-04-27 08:18:13 +02:00
Johannes Zellner
bbc434dc21
Attach the whole user object also for basic authed routes
2018-04-27 08:18:13 +02:00
Girish Ramakrishnan
a7bb5d6b5c
add route to query apps specific to user
...
it's not nice to overload a route to mean different things depending
on who queries it.
2018-04-26 20:07:12 -07:00
Girish Ramakrishnan
e0da6679e9
Move user routes to /api/v1/user
2018-04-26 19:57:44 -07:00
Girish Ramakrishnan
561d2d9f8b
admin column is no more in users table
2018-04-26 19:55:26 -07:00
Girish Ramakrishnan
7549b3e837
enhance user creation API to take a password
2018-04-26 14:13:40 -07:00
Girish Ramakrishnan
7756c07bc6
Add better text for the secret
2018-04-26 09:39:35 -07:00
Johannes Zellner
0d58a6bf33
Send 2fa auth status with profile info
2018-04-26 16:29:40 +02:00
Johannes Zellner
fbba636fb3
Handle more 2fa route errors
2018-04-26 16:14:37 +02:00
Johannes Zellner
9cd6333cf7
2fa routest work with the req.user object
2018-04-26 15:12:14 +02:00
Johannes Zellner
eb02c182e5
Avoid linter issue
2018-04-26 14:45:12 +02:00
Johannes Zellner
6574b22cf6
Add 2fa routest and business logic
2018-04-26 08:46:35 +02:00
Girish Ramakrishnan
d1ed2aa2ce
remove untested route set_admin
2018-04-25 21:43:21 -07:00
Girish Ramakrishnan
c2a762cb29
Do not reserve mailbox names
...
Now that user management is split from mailboxes, we don't need to
reserve mailbox names anymore.
2018-04-25 21:14:33 -07:00
Girish Ramakrishnan
34d40edef4
Fix issue where docker needs more recent packages
...
The following packages have unmet dependencies:
docker-ce : Depends: libseccomp2 (>= 2.3.0) but 2.2.3-3ubuntu3 is to be installed
E: Unable to correct problems, you have held broken packages.
2018-04-25 13:44:53 -07:00
Johannes Zellner
5ceb14cbca
Add required 2fa node modules qrcode and speakeasy
2018-04-25 17:03:16 +02:00
Johannes Zellner
38668937ad
Fixup database tests
2018-04-25 17:03:16 +02:00
Johannes Zellner
0167f83d4a
Handle 2fa fields in userdb code
2018-04-25 17:03:16 +02:00
Johannes Zellner
9e66adb6d0
Add 2fa db record fields to users table
2018-04-25 17:03:16 +02:00
Girish Ramakrishnan
0a537029bc
add mailbox domain to the constraint
2018-04-23 10:14:16 -07:00
Girish Ramakrishnan
c0716e86a7
Remove the "or Email"
...
The email here can be confused with the Cloudron email which it is not.
The preferred approach is to login via username anyway.
2018-04-22 18:29:10 -07:00
Girish Ramakrishnan
50185adcf4
Add 2.1.1 changes
2018-04-18 12:49:11 -07:00
Johannes Zellner
0c728c6af5
Fix mail rest api tests
2018-04-13 12:54:40 +02:00
Johannes Zellner
34d3d79b12
Improve error message when alias name is already taken
2018-04-13 12:37:27 +02:00
Johannes Zellner
ff856a5978
Rename 'address' catchall property to 'addresses' to better indiciate this being an array
2018-04-13 12:15:15 +02:00
Johannes Zellner
c4dad2f55f
Fix address property error response in catchall
2018-04-13 12:15:15 +02:00
Girish Ramakrishnan
734286ba2e
Add support for installing private docker images
2018-04-12 11:43:57 -07:00
Girish Ramakrishnan
0f7f8af4b2
Use docker 18.03.0-ce
...
17.12.0-ce has strange issues like https://github.com/moby/moby/issues/34097
2018-04-11 18:25:19 -07:00
Johannes Zellner
60381d938e
Fix search and replace mistake
2018-04-11 15:29:37 +02:00
Johannes Zellner
ddaa52163b
Update ssl ciphers according to mozillas recommendation
2018-04-11 15:15:29 +02:00
Johannes Zellner
799c1ba05d
Improve on the csp header restriction
2018-04-11 13:00:08 +02:00
Johannes Zellner
838838b90d
nginx would drop other headers if add_header is defined in the location section
2018-04-11 12:29:57 +02:00
Girish Ramakrishnan
4554d9f2f8
Add more changes
2018-04-10 15:13:04 -07:00
Johannes Zellner
573d0e993e
Add CSP header for dashboard
2018-04-10 17:59:06 +02:00
Johannes Zellner
97313fe1c8
Remove other unused assets from the release tarball
2018-04-10 14:08:13 +02:00
Johannes Zellner
944f743438
Use the node modules defined in the dashboard repo
2018-04-10 13:51:01 +02:00
Johannes Zellner
96a5b0e6ba
Remove dashboard related node modules
2018-04-10 13:12:42 +02:00
Girish Ramakrishnan
95f7e50065
bump mail container
2018-04-10 00:00:27 -07:00
Girish Ramakrishnan
d6a8837716
mail: verify with the owner id
2018-04-09 13:17:07 -07:00
Johannes Zellner
cc759e3550
set the mailbox record type for apps
2018-04-09 15:39:36 +02:00
Girish Ramakrishnan
bf0dd935e5
mail: add type field
2018-04-07 21:29:44 -07:00
Girish Ramakrishnan
1d761deec0
Fix test
2018-04-07 18:39:17 -07:00
Girish Ramakrishnan
b6335a327c
Rename TYPE_* to OWNER_TYPE_*
2018-04-07 18:33:30 -07:00
Johannes Zellner
55d53ef311
Do not succeed if mailbox name is already taken
2018-04-06 16:55:01 +02:00
Johannes Zellner
878940edae
Fix sql syntax
2018-04-06 15:54:55 +02:00
Johannes Zellner
15648a3ab2
fix typo name -> username
2018-04-06 14:53:20 +02:00
Johannes Zellner
2fae98dd5b
pass the dashboard version as a revision to the gulp file
2018-04-06 07:47:42 +02:00
Girish Ramakrishnan
9beeb33090
mail: validate list and mailbox names
2018-04-05 17:49:16 -07:00
Girish Ramakrishnan
605dc00422
mail: add members field for lists
...
we have to track the members of a list in the mail app separately
from groups. this is required because users can now have multiple
mailboxes. and because of that we cannot do a 1-1 mapping of group
members to mailboxes anymore. the ui is changed to select mailboxes
when creating a list.
2018-04-05 16:07:38 -07:00
Girish Ramakrishnan
2c8fa01d6d
mail: split the functions to add list and mailbox
2018-04-05 15:01:28 -07:00
Girish Ramakrishnan
467bfa2859
remove mailboxdb from groups code
2018-04-04 20:08:52 -07:00
Girish Ramakrishnan
affb420181
cloudron-setup: highlight reboot in red
2018-04-04 09:55:22 -07:00
Girish Ramakrishnan
e7b26e5655
Add note on accepting self-signed cert
2018-04-04 09:54:14 -07:00
Girish Ramakrishnan
5af657ee22
rename mail crud functions
2018-04-03 15:06:14 -07:00
Girish Ramakrishnan
7fac92c519
validate user id when adding mailbox
2018-04-03 14:27:09 -07:00
Girish Ramakrishnan
f8a731f63a
Add routes to change the mailbox and list owner
2018-04-03 14:12:43 -07:00
Girish Ramakrishnan
a1f4a4d614
mail: make mailbox API based on mailbox name
...
this decouples mail API from users
2018-04-03 13:59:03 -07:00
Girish Ramakrishnan
696e864459
mail: make list API based on list name
...
this decouples mail API from groups
2018-04-03 12:06:22 -07:00
Girish Ramakrishnan
678ea50f87
validateAlias -> validateName
2018-04-03 09:47:15 -07:00
Girish Ramakrishnan
69d3b3cac8
2.0.2 -> 2.1.0
2018-04-02 13:37:06 -07:00
Girish Ramakrishnan
76915b99a8
Fix linter
2018-04-02 09:46:30 -07:00
Girish Ramakrishnan
255a5a12a5
Decouple mailbox deletion from user delete
2018-04-02 09:45:46 -07:00
Johannes Zellner
602291895c
Mention which alias is reserved
2018-04-02 14:59:10 +02:00
Johannes Zellner
045ea4681a
Do not return an error on mailinglist listing if none exists
...
We usually return the empty array, to avoid the need for specific error
handling
2018-04-01 21:51:56 +02:00
Johannes Zellner
e364661813
Send correct status code if mail alias already exists
2018-04-01 19:29:47 +02:00
Johannes Zellner
df9a191434
Add rest api to list all aliases for a given domain
2018-04-01 18:23:54 +02:00
Johannes Zellner
b4aac42032
Add more changes for 2.0.2
2018-04-01 15:15:52 +02:00
Johannes Zellner
2a8be279e7
The package lock now uses sha512 for checksum
2018-04-01 13:15:05 +02:00
Johannes Zellner
4af69fb8c8
Do not show a warning like log, but just dump the tag and detail
2018-03-29 17:36:00 +02:00
Girish Ramakrishnan
cbc98a48ef
Slight wording change
2018-03-28 10:17:17 -07:00
Girish Ramakrishnan
874541b988
Add issue templates
2018-03-28 10:14:35 -07:00
Girish Ramakrishnan
0aa1b758ec
Update docker to 17.12.0-ce
2018-03-26 16:34:33 -07:00
Girish Ramakrishnan
2e0c632942
Do not crash if mail alias does not validate
2018-03-25 21:08:15 -07:00
Girish Ramakrishnan
82a593e82a
Forward stats calls to mail container
2018-03-23 10:52:07 -07:00
Girish Ramakrishnan
e33ebe7304
Revert "mysql: increase max_allowed_packet"
...
This reverts commit 9123ea7016 .
Not needed. This was a db corruption issue
2018-03-22 21:49:08 -07:00
Girish Ramakrishnan
d81930be72
add note on conn limit
2018-03-22 21:07:06 -07:00
Girish Ramakrishnan
aac914182f
remove options from database.initialize
2018-03-22 20:34:49 -07:00
Girish Ramakrishnan
26d4a11c44
cleanup eventlog more aggressively
...
Those login entries are really adding up on old cloudrons
2018-03-22 20:31:32 -07:00
Girish Ramakrishnan
f498443cae
remove unused exports
2018-03-22 20:29:26 -07:00
Girish Ramakrishnan
d84d761bad
Remove unused export
2018-03-22 19:40:38 -07:00
Girish Ramakrishnan
07601d1292
Fix schema
2018-03-22 18:41:10 -07:00
Girish Ramakrishnan
6cbe964301
Add note
2018-03-22 17:13:32 -07:00
Girish Ramakrishnan
84dcdbba33
Re-assign 2020 to mail server
2018-03-21 23:15:30 -07:00
Girish Ramakrishnan
9123ea7016
mysql: increase max_allowed_packet
...
some cloudrons are reporting some errors after 2.0. maybe all those
additional joins/fields we put in is causing this
2018-03-21 17:52:22 -07:00
Girish Ramakrishnan
2a18070016
do-spaces: Force retry of 4xx error codes when copying
2018-03-21 15:41:21 -07:00
Girish Ramakrishnan
e0ece06b26
s3: improved copy logging
2018-03-21 14:22:41 -07:00
Girish Ramakrishnan
83d2eb31dd
clarify debug
2018-03-21 11:39:16 -07:00
Girish Ramakrishnan
c6b8ad88dd
2.0.2 changes
2018-03-20 20:04:35 -07:00
Girish Ramakrishnan
6adf88a6e5
Make uploads work with very slow upload speeds
...
chunk uploads get a timeout of 2mins (derived from http.timeout).
On servers like kimsufi, uploads takes forever (100 MB/sec limit).
Currently, our upload code does not dynamically adapt itself to
changing the concurrency when network is slow.
2018-03-20 19:37:45 -07:00
Girish Ramakrishnan
7699f6721d
Add hack to figure out the position in the queue
...
this helps us track the progress a bit in the logs
2018-03-20 19:37:35 -07:00
Girish Ramakrishnan
ce33681c37
Dump etag info
2018-03-20 18:19:14 -07:00
Girish Ramakrishnan
565eed015f
Add better backup logs
2018-03-20 16:41:45 -07:00
Girish Ramakrishnan
dd296544be
Remove extra prefix
2018-03-15 14:30:10 -07:00
Girish Ramakrishnan
a07c4423c4
Rename webadmin to dashboard
...
The box nginx config has to be re-generated but this is always
done at box restart time
2018-03-15 14:14:23 -07:00
Girish Ramakrishnan
65f07cb7c0
Add more changes
2018-03-14 09:15:58 -07:00
Girish Ramakrishnan
8d1a6cb06b
Add more changes
2018-03-14 09:14:45 -07:00
Girish Ramakrishnan
873ea0fecd
Restart mail server after DKIM keys are generated
...
Haraka won't do change notification on those
2018-03-13 09:53:41 -07:00
Girish Ramakrishnan
ace1f36f9c
2.0.1 changes
2018-03-13 00:36:58 -07:00
Girish Ramakrishnan
4cc9818139
remove error prone short-circuit update
...
when we do pre-releases, there really is no way for us to update
all the cloudrons. this worked when everything was managed cloudron.
2018-03-13 00:36:03 -07:00
Girish Ramakrishnan
390639bac0
Bump mail container
...
This fixes delivery of incoming mail from an outbound only domain
2018-03-13 00:20:48 -07:00
Girish Ramakrishnan
830c685ead
recreate mail configs when mail domain is added
2018-03-12 21:14:45 -07:00
Girish Ramakrishnan
65b174f950
Domain removal can fail because of mailbox as well
2018-03-12 09:54:16 -07:00
Girish Ramakrishnan
331ed4e6b9
Pass on any appstore purchase error
2018-03-11 12:43:24 -07:00
Girish Ramakrishnan
afef548097
cloudron-setup: make sure --help runs as non-root
2018-03-09 10:37:18 -08:00
Johannes Zellner
60e924d5b8
We do require a domain entry in the mails table always
2018-03-09 14:26:33 +01:00
Johannes Zellner
c0ea91a688
We have to parse the JSON data from the raw db results
2018-03-09 10:27:13 +01:00
Girish Ramakrishnan
ecf1f9255d
relay: cloudron-smtp can always be set
2018-03-08 23:23:02 -08:00
Girish Ramakrishnan
1125643a80
Add Haraka 2.8.18 to changelog
2018-03-08 20:12:34 -08:00
Girish Ramakrishnan
61243f6a09
Wait for DNS records call to finish
2018-03-08 20:08:01 -08:00
Girish Ramakrishnan
2e156aa34a
simplify the configureWebadmin logic
2018-03-08 18:26:44 -08:00
Girish Ramakrishnan
440629530f
remove redundant check for "test" mode
2018-03-08 18:15:09 -08:00
Girish Ramakrishnan
3922824dc6
no reason to keep retrying
2018-03-08 18:00:16 -08:00
Girish Ramakrishnan
6bc5add023
Add a way to re-sync mail DNS records
...
Also, make restore resync the admin domain record which gets messed
up by the dns setup
2018-03-08 17:59:53 -08:00
Girish Ramakrishnan
f284245e16
dkim keys are needed for the test
2018-03-08 16:10:33 -08:00
Girish Ramakrishnan
ac62ee5a16
better debug
2018-03-08 15:29:18 -08:00
Girish Ramakrishnan
66f251be06
dnsSetup must fail if domain already exists
2018-03-08 15:10:38 -08:00
Girish Ramakrishnan
ab932c4f5c
Do not regenerate domain key if domain already exists
2018-03-08 15:01:08 -08:00
Girish Ramakrishnan
074c6fdba3
More renaming to forum
2018-03-08 10:50:18 -08:00
Girish Ramakrishnan
b36f4becbc
remove bad changelog
2018-03-08 10:22:46 -08:00
Girish Ramakrishnan
ac69b96f92
clear timeout when getting mail status
2018-03-08 09:32:06 -08:00
Girish Ramakrishnan
6da7a7d2f4
clear the request timeout when adding/updating domain
...
DO API takes very long to respond at times :/ Currently, there is
no easy way to reset the timeout middleware timeout. We should add
this feature upstream (https://github.com/expressjs/timeout/issues/26 )
2018-03-08 09:27:56 -08:00
Girish Ramakrishnan
22c54ced05
email: add MAIL_DOMAINS
2018-03-07 20:39:58 -08:00
Girish Ramakrishnan
c7b1d49de6
cloudron-setup: add some color
2018-03-07 15:51:00 -08:00
Girish Ramakrishnan
b7bf5b180c
Display the format as well
2018-03-07 13:59:17 -08:00
Girish Ramakrishnan
12aba46893
use apps.getAll since app.fqdn is otherwise undefined
2018-03-07 13:39:40 -08:00
Johannes Zellner
9d4eee0dfe
reword error message, all apps using a domain have to be deleted
2018-03-07 10:45:03 +01:00
Girish Ramakrishnan
d69c8f49e5
Migrate daily update pattern
2018-03-06 21:29:08 -08:00
Girish Ramakrishnan
dd5f41aee8
Fix failing test
2018-03-06 01:35:38 -08:00
Girish Ramakrishnan
0b20b265de
Do not crash if domain is not found
2018-03-06 01:30:40 -08:00
Girish Ramakrishnan
ac94d0b5c7
Make apps also auto-update like before by default
2018-03-05 21:33:18 -08:00
Girish Ramakrishnan
c5a70d10d7
Add robotsTxt to appdb.add
2018-03-05 16:14:23 -08:00
Girish Ramakrishnan
b83eb993d8
Add sso and robotsTxt to app backup config.json
2018-03-05 15:03:03 -08:00
Girish Ramakrishnan
6cadaca307
clone: copy enableBackup and robotsTxt
2018-03-05 14:56:24 -08:00
Girish Ramakrishnan
36b91ae7db
Add PSBL
2018-03-05 14:26:53 -08:00
Johannes Zellner
3115432309
Fix missed eventlog.getAllPaged() usage
2018-03-05 17:53:18 +01:00
Johannes Zellner
8340f77e20
Fixup the database tests
2018-03-05 17:17:01 +01:00
Johannes Zellner
75932e2805
Collect app information for feedback email
2018-03-05 17:03:54 +01:00
Johannes Zellner
ff6d468604
Support multiple actions for eventlog api
2018-03-05 11:46:06 +01:00
Girish Ramakrishnan
161b2ac6f5
clone: Fix crash where port conflict is not handled
2018-03-02 19:37:15 -08:00
Johannes Zellner
9775ab5e8e
make correct use of eventlog for developer/cli login
2018-03-02 19:26:55 +01:00
Johannes Zellner
726202b040
Amend app object where applicable to login event
2018-03-02 19:21:11 +01:00
Johannes Zellner
39d6ec96b7
amend full user object to login action
2018-03-02 19:21:11 +01:00
Johannes Zellner
87fedb71b7
Use shared function to remove private user fields for api
2018-03-02 11:24:27 +01:00
Johannes Zellner
8424e687cb
Amend full user object to user action eventlog entries
2018-03-02 11:24:06 +01:00
Johannes Zellner
c0d030c978
Amend full user object to user eventlog action entries
2018-03-02 11:02:32 +01:00
Johannes Zellner
53470e286f
Use app model code to get all amended properties
2018-03-02 10:58:05 +01:00
Girish Ramakrishnan
e22c17eabe
Fix issue where new package versions are getting skipped
2018-03-01 11:39:10 -08:00
Girish Ramakrishnan
5ac1fccb98
mail: Fix crashes when user has no username yet
2018-02-28 13:31:28 -08:00
Girish Ramakrishnan
0cc58fafd6
Do not crash if user does not have username
2018-02-28 13:18:41 -08:00
Girish Ramakrishnan
98e19e6df5
fix upload errors causing double callback
2018-02-27 19:16:03 -08:00
Girish Ramakrishnan
441e514119
scheduler: give scheduler tasks twice the memory by default
2018-02-27 15:03:09 -08:00
Girish Ramakrishnan
ff4b09a342
Use the container StartedAt instead of lastDate
...
CronJob.lastDate keeps resetting on every tick. Also, it doesn't
work across box code restarts.
2018-02-27 14:26:40 -08:00
Girish Ramakrishnan
f8c8133148
scheduler: better debugs
2018-02-27 13:54:38 -08:00
Girish Ramakrishnan
938a41e12c
scheduler: give cron jobs a grace period of 30 mins to complete
2018-02-27 13:28:42 -08:00
Girish Ramakrishnan
5d231f4fef
scheduler: do no start all cronjobs at once
2018-02-27 12:44:11 -08:00
Girish Ramakrishnan
a4e6181edf
Fix tests
2018-02-27 11:59:15 -08:00
Girish Ramakrishnan
6685118b03
Use safe.JSON.parse instead
...
safe.require() caches the credentials which is annoying
2018-02-27 11:24:08 -08:00
Girish Ramakrishnan
4c9919a98b
Drop the "your"
2018-02-27 09:22:43 -08:00
Girish Ramakrishnan
470c9971f8
mail exchange does not have trailing dot
2018-02-23 17:26:28 -08:00
Girish Ramakrishnan
b6fb49956f
s3: better debug output when copying
2018-02-22 12:41:18 -08:00
Girish Ramakrishnan
0bba985ff1
storage: Add implementation note
2018-02-22 12:30:55 -08:00
Girish Ramakrishnan
3c8c15db01
s3: use a constant backoff since it takes forever to fail otherwise
2018-02-22 12:30:44 -08:00
Girish Ramakrishnan
c8a6294772
lint
2018-02-22 12:24:16 -08:00
Girish Ramakrishnan
cea83889ec
s3: Fix issue where it takes forever to timeout if the backend is down
2018-02-22 12:19:23 -08:00
Girish Ramakrishnan
2ecb66afd7
s3: cleanup code
2018-02-22 12:16:01 -08:00
Girish Ramakrishnan
f5d426fd69
debug out the progress message
2018-02-22 11:11:36 -08:00
Girish Ramakrishnan
e6c07fc148
merge the done callback into the main code
2018-02-22 11:06:28 -08:00
Girish Ramakrishnan
1f30a4f3ea
Make s3.deleteObjects return error
2018-02-22 11:05:29 -08:00
Girish Ramakrishnan
0bfdaeb2fb
rename to chunkSize
2018-02-22 11:01:04 -08:00
Girish Ramakrishnan
e022dbf8a6
Revert "merge the done callback into the main code"
...
This reverts commit c39bec8cc1 .
This was committed with extra stuff by mistake
2018-02-22 10:58:56 -08:00
Girish Ramakrishnan
0e7e672dd2
Update node modules
2018-02-22 10:52:42 -08:00
Girish Ramakrishnan
6075a7a890
typo
2018-02-22 10:34:48 -08:00
Girish Ramakrishnan
28b864c346
sos: Copy in 96M chunks as recommended by exoscale
2018-02-22 10:31:56 -08:00
Girish Ramakrishnan
e9437131ff
mail: set domain_selector to be mail_from
2018-02-21 20:46:32 -08:00
Girish Ramakrishnan
c39bec8cc1
merge the done callback into the main code
2018-02-21 20:17:58 -08:00
Girish Ramakrishnan
727a25f491
DO Spaces: multipart copy now works
2018-02-20 14:48:03 -08:00
Johannes Zellner
26bacfcbd6
Allow partial match of eventlog actions
2018-02-20 11:20:17 -08:00
Johannes Zellner
a777e7aeb3
add full app object to app related eventlog actions
2018-02-20 10:34:09 -08:00
Johannes Zellner
676625a3f6
Add more appstore tests
2018-02-18 22:43:11 -08:00
Johannes Zellner
f41603ea94
Add appstore.sendAliveStatus() tests
2018-02-18 21:42:37 -08:00
Johannes Zellner
18ae958e87
Send all domains with provider with the alive post
2018-02-18 21:36:21 -08:00
Johannes Zellner
d68d4295de
Remove unused require
2018-02-18 20:16:17 -08:00
Girish Ramakrishnan
0244529b45
Add more changelog
2018-02-18 02:45:46 -08:00
Girish Ramakrishnan
1d044a7392
Bump mail container for multi-domain support
2018-02-18 00:54:41 -08:00
Girish Ramakrishnan
06eab93f0e
restart mail container when mail.ini changes
2018-02-18 00:54:11 -08:00
Girish Ramakrishnan
84b7672509
caas can be a provider
2018-02-17 10:28:03 -08:00
Girish Ramakrishnan
c9cd4ed363
Fix changelog version
2018-02-16 16:43:04 -08:00
Girish Ramakrishnan
05c98ccadb
Enable auto-updates for major versions
...
Cloudron is always rolling releases and we never break compat
2018-02-16 16:01:10 -08:00
Johannes Zellner
cb62cdcfa1
Report dependency error for clone if backup or domain was not found
2018-02-16 10:45:06 -08:00
Girish Ramakrishnan
c0fddf5d8a
Version 1.11.0 changes
2018-02-11 01:22:26 -08:00
Girish Ramakrishnan
bcf3e71979
Add API to remove mailboxes by domain
2018-02-11 01:18:29 -08:00
Girish Ramakrishnan
baf5cae58a
Fix tests
2018-02-11 00:04:41 -08:00
Girish Ramakrishnan
5c1f9d5686
typo
2018-02-11 00:04:28 -08:00
Girish Ramakrishnan
4d89340c7d
Handle FK error when deleting mail domain
2018-02-10 22:49:35 -08:00
Girish Ramakrishnan
0b6846787e
The mailboxes domain column must reference the mail domain column
2018-02-10 21:31:50 -08:00
Girish Ramakrishnan
79976cd29d
add an extra newline in config
2018-02-10 21:29:00 -08:00
Girish Ramakrishnan
574cf1057e
mail: ensure mail is disabled when deleting mail domain
2018-02-10 10:38:45 -08:00
Johannes Zellner
1b3450e3a2
update the altDomain migration to also generate certs with SAN
2018-02-10 15:55:22 +01:00
Girish Ramakrishnan
bec032702d
Remove SAN check
...
-checkhost already checks the SAN. It is implementation dependent
as to whether the CN is checked for.
2018-02-09 14:20:03 -08:00
Girish Ramakrishnan
fc79047bbf
Generate fallback cert to contain naked domain in SAN
2018-02-09 13:44:29 -08:00
Girish Ramakrishnan
5263ea860d
Add cert tests
2018-02-09 11:19:47 -08:00
Johannes Zellner
5140dee81d
Generate a fallback cert for domains added during altDomain migration
2018-02-09 13:08:45 +01:00
Johannes Zellner
24d3195660
Add dns setup and activation route tests
2018-02-09 12:43:20 +01:00
Johannes Zellner
721a4c4349
Validate the adminFqdn in dns setup route
2018-02-09 12:43:03 +01:00
Girish Ramakrishnan
83ff295f6d
debug: authenticateMailbox
2018-02-08 18:49:27 -08:00
Girish Ramakrishnan
6decc790d6
Follow CNAME records
...
DNS records can now be a A record or a CNAME record. All we care
about is them resolving to the public IP of the server somehow.
The main reason for this change is that altDomain is migrated into
domains table and the DNS propagation checks have to work after that.
(previously, the 'altDomain' was a signal for a CNAME check which now
cannot be done post-migration).
In the future, we can make this more sophisticated to instead maybe
do a well-known URI query. That way it will work even if there is
some proxy like Cloudflare in the middle.
Fixes #503
2018-02-08 15:43:31 -08:00
Girish Ramakrishnan
459cf8d0cd
Add note on unbound at 127.0.0.1
2018-02-08 14:43:49 -08:00
Girish Ramakrishnan
58386b0c54
remove resolveNs
2018-02-08 14:39:35 -08:00
Girish Ramakrishnan
101c1bda25
translate cancelled errors to timeout errors
2018-02-08 14:27:02 -08:00
Girish Ramakrishnan
d31c948d3e
Remove type argument from waitForDns
...
The function is going to be changed to handle only A/CNAME records
2018-02-08 14:24:11 -08:00
Girish Ramakrishnan
0927c8161c
Add note on return value of dns.resolve
2018-02-08 14:10:53 -08:00
Girish Ramakrishnan
4d92aea2f3
Fix usage of callback
2018-02-08 14:10:32 -08:00
Girish Ramakrishnan
0ca2451eaa
fix tests
2018-02-08 12:09:06 -08:00
Girish Ramakrishnan
3b987f1970
DNS -> Dns
2018-02-08 12:05:29 -08:00
Girish Ramakrishnan
a7b0ba2178
PTR must be resolved by the domain and not IP
2018-02-08 11:56:25 -08:00
Girish Ramakrishnan
744e6b8af0
replace the verizon smtp
2018-02-08 11:48:55 -08:00
Girish Ramakrishnan
8254e795be
add missing export
2018-02-08 11:42:45 -08:00
Girish Ramakrishnan
26c95a25b6
Use the native dns resolver
...
it now supports cancel()
also, fixes #514
2018-02-08 11:37:58 -08:00
Girish Ramakrishnan
209f37312b
createReleaseTarball must use the local branch for master branch
2018-02-08 08:58:20 -08:00
Johannes Zellner
5bd218b3b6
Fix intrinsicFqdn removal breakage
2018-02-08 15:23:38 +01:00
Johannes Zellner
d57b772ada
We can use js multiline strings
2018-02-08 15:19:00 +01:00
Johannes Zellner
b6384d5025
Remove intrinsicFqdn
2018-02-08 15:07:49 +01:00
Johannes Zellner
fa65576688
Remove unused require
2018-02-08 15:04:13 +01:00
Johannes Zellner
3572b4eb91
Do not crash if certs cannot be found. Error object does not exist
2018-02-08 10:27:30 +01:00
Johannes Zellner
e710a210fd
Fixup the unit tests
2018-02-08 09:00:31 +01:00
Johannes Zellner
265db7d0f7
Fix typo in appdb
2018-02-08 09:00:31 +01:00
Johannes Zellner
b1939e73f4
Remove all occurances of altDomain in the code
...
Tests are pending
2018-02-08 09:00:31 +01:00
Johannes Zellner
28f5f62414
Add altDomain migration script
2018-02-08 09:00:31 +01:00
Girish Ramakrishnan
ff577a8ed5
stop and disable postfix for good measure
2018-02-07 09:08:04 -08:00
Johannes Zellner
63d06d7024
Use fresh settings key for app autoupdate pattern
2018-02-07 16:51:53 +01:00
Johannes Zellner
4d4b77d6fb
Add 1.10.2 changes
2018-02-07 16:27:54 +01:00
Johannes Zellner
3b4ff18881
Keep the invite email for users, which have not yet setup a username
2018-02-07 16:27:49 +01:00
Girish Ramakrishnan
d65cb93158
Remove obsolete action
2018-02-06 23:14:02 -08:00
Girish Ramakrishnan
e00f98884c
setup SPF record of non-primary domain correctly
2018-02-06 23:11:47 -08:00
Girish Ramakrishnan
21016cc2e0
createReleaseTarball: Make sure we pick the current branch on webadmin
2018-02-06 16:20:29 -08:00
Girish Ramakrishnan
d12803bb9d
Add 1.10.1 changes
2018-02-06 16:11:06 -08:00
Girish Ramakrishnan
039a31318a
Generate per-domain enable_outbound relay settings
2018-02-06 14:43:14 -08:00
Johannes Zellner
3eb11ee20a
Fixup updatechecker tests
2018-02-06 19:25:03 +01:00
Johannes Zellner
11d740682e
Split box and app autoupdate pattern settings
2018-02-06 19:25:03 +01:00
Johannes Zellner
09b33e7ef9
Disable autoupdates by default
2018-02-06 19:25:03 +01:00
Johannes Zellner
19fafca9df
Drop users email unique constraint for the migration timeframe
2018-02-06 12:14:11 +01:00
Girish Ramakrishnan
da29c69be4
generate per-domain mail configuration
2018-02-05 15:13:35 -08:00
Johannes Zellner
c4531e32d5
Fix all app route tests
2018-02-05 22:17:16 +01:00
Johannes Zellner
8f74cacfd0
Remove unused require
2018-02-05 20:45:53 +01:00
Girish Ramakrishnan
9ba830ab21
"installing" is easier to understand
2018-02-05 11:13:51 -08:00
Girish Ramakrishnan
ad152bacdd
Do not allow dns setup and restore to run in parallel
...
In the e2e, we did not check the webadminStatus after a dnsSetup
and immediately rushed into restore. This ended up mangling the
cert/key files of the admin domain.
2018-02-05 09:35:16 -08:00
Johannes Zellner
89673fa7f0
Make more of the app route tests work
2018-02-05 17:28:30 +01:00
Johannes Zellner
c8613e646b
Show more descriptive error message if minBoxVersion blocks update
2018-02-05 15:20:42 +01:00
Girish Ramakrishnan
faef3114f5
Add more 1.10 changes
2018-02-04 09:33:44 -08:00
Girish Ramakrishnan
087f14643a
catch_all_address in settings table is JSON
2018-02-04 01:27:40 -08:00
Girish Ramakrishnan
77fe595970
lint
2018-02-04 00:15:41 -08:00
Girish Ramakrishnan
14529d313a
sos: CopySource requires fancier encoding rules
2018-02-04 00:12:28 -08:00
Girish Ramakrishnan
72f56ff91c
rename the gcdns key file
2018-02-03 22:18:04 -08:00
Girish Ramakrishnan
2a7eabfa68
fix test mail route
2018-02-03 18:34:11 -08:00
Girish Ramakrishnan
d18fe0a40c
app: Check altDomain when saving certs
2018-02-03 01:03:23 -08:00
Girish Ramakrishnan
8f5105388f
Fix crash when cert renewal fails
2018-02-02 21:21:51 -08:00
Girish Ramakrishnan
4c0da7a8c9
use fallback cert of altDomain
2018-02-02 20:29:04 -08:00
Girish Ramakrishnan
f607010396
sos: remove exoscale specific hacks which are obsolete now
2018-02-02 20:13:51 -08:00
Girish Ramakrishnan
909db5b80e
put the ui version in the string as well
2018-02-02 19:57:55 -08:00
Girish Ramakrishnan
7563dd4ac8
remove ununsed require
2018-02-02 18:49:55 -08:00
Girish Ramakrishnan
de1af3ac72
typo
2018-02-02 16:01:20 -08:00
Girish Ramakrishnan
2b9e90397d
Do not delete the old conf dir (migration might use it)
2018-02-02 15:44:49 -08:00
Girish Ramakrishnan
8e258f11ec
caas: import appstore and caas configs for existing caas
2018-02-02 13:29:57 -08:00
Johannes Zellner
2e818fd689
Make first half of the app route tests pass
2018-02-02 14:06:01 +01:00
Girish Ramakrishnan
f85b7a4336
How many commits to fix a typo?
2018-02-01 22:24:41 -08:00
Girish Ramakrishnan
f4a021b751
Fix path to nginx cert
2018-02-01 21:58:42 -08:00
Johannes Zellner
272b0489ff
Fixup the app route test startup sequence
2018-02-01 18:04:43 +01:00
Johannes Zellner
1b25a0d7b7
Fix copy'n'paste error
2018-02-01 17:28:04 +01:00
Johannes Zellner
d8b62f95be
Fix domains tests
2018-02-01 11:19:42 +01:00
Johannes Zellner
b337300a7b
Do not use removed setTlsConfig in apptask tests
2018-02-01 11:16:55 +01:00
Girish Ramakrishnan
2083b035e8
create images in sfo2 now
2018-01-31 22:36:00 -08:00
Girish Ramakrishnan
2873793e7b
typo
2018-01-31 22:31:19 -08:00
Girish Ramakrishnan
17128f0b56
Start the platform code only after 3 secs
2018-01-31 22:16:06 -08:00
Girish Ramakrishnan
1f5ecd5ff8
Set default for CAAS_CONFIG_KEY
2018-01-31 21:48:33 -08:00
Girish Ramakrishnan
52e23c1299
createReleaseTarball: warn about uncommitted changes in webadmin
2018-01-31 20:48:12 -08:00
Girish Ramakrishnan
298a2d2f0f
cloudron-setup: remove unused source-url
2018-01-31 20:14:31 -08:00
Girish Ramakrishnan
38b6e49d44
cloudron-setup: remove unused dns-provider
2018-01-31 20:11:13 -08:00
Girish Ramakrishnan
d915ea348f
cloudron-setup: tls-provider is obsolete
2018-01-31 20:10:47 -08:00
Girish Ramakrishnan
8014cc8ae1
le -> letsencrypt
2018-01-31 18:53:29 -08:00
Girish Ramakrishnan
7dc7c56e97
Fix tests
2018-01-31 18:23:49 -08:00
Girish Ramakrishnan
a5af87e47a
caas: never return key
2018-01-31 18:22:33 -08:00
Girish Ramakrishnan
ab7448926f
Fix use of fallback certs
...
We used to always use nginx cert dir. When custom fallback certs
were set, we used to copy it in boxdata cert dir and then nginx cert dir.
The issue is then that we have to copy all certs to nginx cert dir on
cloudron restore.
To fix this, we simply give priority to nginx cert dir and not copy
around certs anymore. caas cert will reside in nginx cert dir and
not get backed up, as expected.
2018-01-31 18:20:29 -08:00
Johannes Zellner
a727fc5efa
Use tlsConfig from domain, not settings in reverseproxy
2018-01-31 18:37:08 +01:00
Johannes Zellner
0b31568c14
Remove tlsConfig from the settings code
2018-01-31 18:27:31 +01:00
Johannes Zellner
9b21167a8d
Use tlsConfig from the domain, not from settings
2018-01-31 18:27:18 +01:00
Johannes Zellner
3c198550be
Do not send tlsConfig with alive status
2018-01-31 18:27:02 +01:00
Johannes Zellner
31be178210
Add tlsConfig provider validation
2018-01-31 18:20:11 +01:00
Johannes Zellner
d1ef35ae1d
Fixup all the tests to use domain tlsConfig
2018-01-31 18:09:38 +01:00
Johannes Zellner
1ec294a04b
Add tlsConfig to domains and setup rest apis
2018-01-31 17:42:26 +01:00
Johannes Zellner
75775fa192
Add tlsConfig in domain model code
2018-01-31 16:57:59 +01:00
Johannes Zellner
5db1716664
Add tlsConfig handling in domaindb.js
2018-01-31 16:56:22 +01:00
Johannes Zellner
2db35e42de
Add migration script for tlsConfig in domains
2018-01-31 16:53:00 +01:00
Johannes Zellner
5521e17313
Remove progress.json generation in start.sh
2018-01-31 11:56:51 +01:00
Johannes Zellner
35d2755cfb
Remove splashpage logic
2018-01-31 09:24:43 +01:00
Johannes Zellner
8ee1c87c45
Do not setup the splashscreen anymore
2018-01-31 09:11:04 +01:00
Johannes Zellner
e1533ccd54
Prefix all installer log output for better tracking
2018-01-31 09:10:51 +01:00
Girish Ramakrishnan
7907dd5c4f
migrate any existing host.cert/key to domain based host.cert/key
...
we don't remove the old one's yet since existing nginx config
might still be referencing them (not sure)
2018-01-30 22:09:55 -08:00
Girish Ramakrishnan
be66d1ff4d
arg_fqdn is no more
2018-01-30 21:27:27 -08:00
Girish Ramakrishnan
686a01b3e6
autoprovision: Save tlsKey/tlsCert with domain prefix
2018-01-30 20:41:52 -08:00
Girish Ramakrishnan
3299efc113
typos
2018-01-30 20:38:58 -08:00
Girish Ramakrishnan
7a15777ca5
1.9.4 changes
2018-01-30 19:54:04 -08:00
Girish Ramakrishnan
a553a5de79
Copy over the correct license file
2018-01-30 19:52:03 -08:00
Girish Ramakrishnan
21f11c4136
cloudron-setup: remove many obsolete args
2018-01-30 19:51:58 -08:00
Girish Ramakrishnan
cd31ed23bc
rewrite renewAll to use existing functions
2018-01-30 16:34:26 -08:00
Girish Ramakrishnan
639a0eb43b
Move the BOX_ENV check for more test coverage
2018-01-30 16:14:05 -08:00
Girish Ramakrishnan
86cf8bf9e7
Add auditSource to ensureCertificate
2018-01-30 15:16:34 -08:00
Girish Ramakrishnan
8e500e0243
caas: make the cert provider use domain fallback certs
2018-01-30 14:18:34 -08:00
Girish Ramakrishnan
781cc3b67a
Merge ensureCertificate and configuring nginx
2018-01-30 13:54:13 -08:00
Girish Ramakrishnan
f379724128
merge certificates.js and nginx.js to reverseproxy.js
...
when certs change, we have to call into nginx anyway. since they
go hand in hand, just merge those files. modern reverse proxies
do this job integrated already.
2018-01-30 12:26:09 -08:00
Girish Ramakrishnan
8e63d63509
Move configureDefaultServer to nginx.js
2018-01-30 12:01:53 -08:00
Girish Ramakrishnan
c84f84b9fe
host.cert and host.key are not used anymore
2018-01-30 11:58:26 -08:00
Girish Ramakrishnan
fd913de913
Fallback certs are in host.cert/host.key
2018-01-30 11:43:51 -08:00
Girish Ramakrishnan
3336614702
Make getFallbackCertificate return path like getCertificate
2018-01-30 11:30:35 -08:00
Girish Ramakrishnan
f2372c2c75
Fallback certs are named host.cert and host.key
2018-01-30 11:08:58 -08:00
Girish Ramakrishnan
4a4f1b883a
Rename getAdminCerticate to getCertificate
2018-01-30 11:04:13 -08:00
Johannes Zellner
79f2709f3a
Ensure certificates and nginx configs on startup
2018-01-30 16:55:13 +01:00
Johannes Zellner
8dea0f71f3
Fix typo with intrinsicFqdn
2018-01-30 16:46:51 +01:00
Johannes Zellner
28cffbb168
fix config-test, fqdn is gone
2018-01-30 14:09:59 +01:00
Johannes Zellner
a662362df7
Add mailinglist rest api tests
2018-01-30 12:23:08 +01:00
Johannes Zellner
f54197afe4
return 204 on mailinglist removal api
2018-01-30 12:22:55 +01:00
Johannes Zellner
2745511e67
Fix typo when using HttpSuccess instead of HttpError
2018-01-30 12:14:08 +01:00
Girish Ramakrishnan
2c60c4eb82
move all setup logic to setup.js
2018-01-29 15:51:36 -08:00
Girish Ramakrishnan
c57c372adf
remove config.fqdn() completely
2018-01-29 15:11:43 -08:00
Girish Ramakrishnan
1791617f33
typo
2018-01-29 15:11:43 -08:00
Girish Ramakrishnan
e844e1400e
zoneName is gone from config
2018-01-29 15:11:43 -08:00
Girish Ramakrishnan
1f2cfc45b5
adminFqdn is only valid if we have a admin domain set
2018-01-29 15:11:43 -08:00
Johannes Zellner
3c3d44e7f8
Add email alias route tests
2018-01-29 19:39:07 +01:00
Johannes Zellner
6470803604
Do not check if email is enabled when an app tries to do sendmail auth through ldap
2018-01-29 19:29:04 +01:00
Johannes Zellner
edb02c859b
Add mailbox rest api tests
2018-01-29 18:53:51 +01:00
Girish Ramakrishnan
351b5fcd70
Use config.adminDomain in tests
2018-01-29 09:28:26 -08:00
Girish Ramakrishnan
4c78a2933f
config.setZoneName is gone
2018-01-29 09:06:01 -08:00
Johannes Zellner
9041da62e7
fix email route tests
2018-01-29 17:45:10 +01:00
Johannes Zellner
1e9b37053d
Add email domain rest api CRUD testing
2018-01-29 17:18:01 +01:00
Johannes Zellner
6115b1cecf
return 409 when an email domain conflict is found
2018-01-29 17:17:47 +01:00
Johannes Zellner
ec7b550ca6
Fixup the ldap tests
2018-01-29 13:35:22 +01:00
Johannes Zellner
66ece2243b
Actually return an error if we try to update a non existing email domain
2018-01-29 13:28:11 +01:00
Johannes Zellner
77961e51ec
mail.get() returns a MailError
2018-01-29 13:14:08 +01:00
Johannes Zellner
c95de547eb
Fix config tests to match the removal of zoneName and repurpose of fqdn
2018-01-29 10:11:09 +01:00
Girish Ramakrishnan
b2363271aa
add config.adminDomain
2018-01-28 14:26:41 -08:00
Johannes Zellner
3b2f286ac5
certificates init/uninitialize are gone
2018-01-28 20:59:20 +01:00
Girish Ramakrishnan
9ff1b19c3f
Remove unused config.zoneName
2018-01-27 09:26:17 -08:00
Girish Ramakrishnan
64f90abac7
Remove onDomainConfigured
2018-01-26 22:56:15 -08:00
Girish Ramakrishnan
7ce79505ee
remove overcomplicated certificate events
2018-01-26 22:47:05 -08:00
Girish Ramakrishnan
b4f945f977
do not regenerate fallback certificate
2018-01-26 22:47:05 -08:00
Girish Ramakrishnan
c2d348fe72
remove unused /api/v1/settings/admin_certificate
2018-01-26 20:49:48 -08:00
Girish Ramakrishnan
44324f4501
make certificates.validateCertificate return CertificatesError
2018-01-26 20:39:58 -08:00
Girish Ramakrishnan
6789e9cfe7
change order of validateCertificate args
2018-01-26 20:36:31 -08:00
Girish Ramakrishnan
4d72dfd3da
remove ensureFallbackCertificate
2018-01-26 20:31:48 -08:00
Girish Ramakrishnan
66d90c36fc
generate fallback cert for domains if not provided
2018-01-26 20:30:37 -08:00
Girish Ramakrishnan
d0bf315859
certificates: cert/key cannot be null
2018-01-26 20:06:17 -08:00
Girish Ramakrishnan
f49ff2985c
certificates: setFallbackCertificate does not validate anymore
2018-01-26 20:03:24 -08:00
Girish Ramakrishnan
ca839ea5cb
remove dead comment
2018-01-26 19:55:01 -08:00
Girish Ramakrishnan
ce2d39d54c
cloudron-setup: add hetzner in the help text
2018-01-26 18:53:50 -08:00
Johannes Zellner
6ef57d3f23
Fix various route handling tests
2018-01-26 21:31:22 +01:00
Girish Ramakrishnan
de8f7415c3
use config.adminFqdn instead of config.fqdn
2018-01-26 12:12:22 -08:00
Johannes Zellner
7441e11c2d
Further test fixes to oauth, ldap and mail tests
2018-01-26 21:10:53 +01:00
Johannes Zellner
c3211c7603
Add domain and enable mail on it for many tests
2018-01-26 20:36:27 +01:00
Johannes Zellner
f028b4a232
Remove mailing list logic from groups tests
2018-01-26 20:07:23 +01:00
Johannes Zellner
004211a683
Remove mailbox and alias related tests in the user logic testing
2018-01-26 20:05:09 +01:00
Johannes Zellner
7d65f341db
Ensure user tests have the domain setup correctly and remove implicit mailbox check
2018-01-26 18:47:51 +01:00
Johannes Zellner
7e378b426e
Fixup the database tests
2018-01-26 18:32:13 +01:00
Johannes Zellner
3135c227d7
Do not add default domain records when we clear the db for testing
2018-01-26 18:32:01 +01:00
Johannes Zellner
3948cfc33b
Parse sql error message to deliver correct conflict errors
2018-01-26 17:56:07 +01:00
Johannes Zellner
ccdf926976
move mailbox cleanup code from userdb to user businesslogic
2018-01-26 12:26:03 +01:00
Johannes Zellner
40f73f6c4b
Cleanup the mailboxes for groups on deletion
2018-01-26 11:40:28 +01:00
Johannes Zellner
50e0856803
Do not automatically create mailboxes for groups
2018-01-26 11:36:26 +01:00
Johannes Zellner
d95a670dd7
Add mailing lists routes and logic
2018-01-26 11:25:45 +01:00
Girish Ramakrishnan
16b1b27bfb
readDkimPublicKeySync has moved
2018-01-25 15:38:29 -08:00
Girish Ramakrishnan
15fbfd3042
create maildb entry in database._clear
2018-01-25 15:20:53 -08:00
Girish Ramakrishnan
aabd1e7df6
Fix crash when adding a domain
2018-01-25 14:51:07 -08:00
Girish Ramakrishnan
9059a30b89
refactor dns logic in cloudron.js
2018-01-25 14:46:48 -08:00
Girish Ramakrishnan
669b94b0d1
test: remove used of config.fqdn
2018-01-25 14:11:52 -08:00
Girish Ramakrishnan
6cb9779537
mail: Add DNS records when mail domain is created
2018-01-25 14:11:46 -08:00
Girish Ramakrishnan
caf8da331c
Do not export configureWebadmin
2018-01-25 13:40:06 -08:00
Girish Ramakrishnan
67eb7a290f
Fix mail domain route
2018-01-25 13:40:02 -08:00
Girish Ramakrishnan
af6d8f41ee
create dkim key when mail domain is added
2018-01-25 10:38:59 -08:00
Girish Ramakrishnan
7c361a87b0
validate appstore update responses
2018-01-25 09:39:34 -08:00
Johannes Zellner
aab175ea05
Remove alias handling from user logic to mail logic
2018-01-25 18:03:26 +01:00
Johannes Zellner
647582a246
Add alias route handler and logic to mail.js
2018-01-25 18:03:02 +01:00
Johannes Zellner
7bba63d911
rename mailbox routes to match overall scheme of plurals
2018-01-25 12:27:28 +01:00
Girish Ramakrishnan
b71c0bde55
add routes to create and delete mail domain
2018-01-25 12:09:30 +01:00
Girish Ramakrishnan
ef3ab44199
update cloudron-manifestformat (for prerelease in semver)
2018-01-24 20:09:14 -08:00
Girish Ramakrishnan
ed3f128bcd
Send relay, catchall and domain info from mail table
2018-01-24 15:38:45 -08:00
Girish Ramakrishnan
2f5ab98284
remove config.zoneName() use
2018-01-24 15:01:54 -08:00
Girish Ramakrishnan
ee66893875
more config.fqdn() removal in tests
2018-01-24 14:58:37 -08:00
Girish Ramakrishnan
45456f2cf7
Remove unused maildb.addDefaultDomain
2018-01-24 14:42:45 -08:00
Girish Ramakrishnan
df3c127584
fqdn -> domain
2018-01-24 14:28:35 -08:00
Girish Ramakrishnan
9d409a67fd
Default to domain because tld.getDomain returns null for some tld's
2018-01-24 14:17:26 -08:00
Girish Ramakrishnan
2e05483d54
refactor: addDnsRecords now takes a domain
2018-01-24 14:08:25 -08:00
Girish Ramakrishnan
4e267c7cd1
mail: remove config.fqdn use
2018-01-24 12:28:47 -08:00
Girish Ramakrishnan
efc6a5acd0
Return NOT_FOUND if app is missing in appstore
2018-01-24 10:56:26 -08:00
Johannes Zellner
962ebc835d
Do not error if mailbox state is already correct
2018-01-24 15:44:05 +01:00
Johannes Zellner
c7282e861c
Add missing MailError type
2018-01-24 15:38:19 +01:00
Johannes Zellner
358048e02b
Add domain specific mailbox routes and logic
2018-01-24 13:11:35 +01:00
Johannes Zellner
666f42f4ef
Do not automatically create mailboxes for users
2018-01-24 12:56:12 +01:00
Johannes Zellner
aca07765c9
remove unused require
2018-01-24 12:55:44 +01:00
Johannes Zellner
a3caad46a2
Add unique constraint to our schema description file
2018-01-24 10:51:46 +01:00
Girish Ramakrishnan
5e688944e8
dns: compute subdomain correctly when zone name and domain differs
2018-01-23 20:25:45 -08:00
Girish Ramakrishnan
ed75364e2b
Default to tld.getDomain if zone name is not provided
2018-01-23 18:54:05 -08:00
Girish Ramakrishnan
d33e35fda2
Move send_test_mail under mail domain api
2018-01-23 16:10:23 -08:00
Girish Ramakrishnan
ccaf687e91
remove config.fqdn from settings-test
2018-01-23 15:47:41 -08:00
Girish Ramakrishnan
ab447120dc
cloudflare: del returns 200 now
2018-01-23 14:52:41 -08:00
Girish Ramakrishnan
9e0e99cb0c
Use new mail.ini parameters
2018-01-23 14:25:15 -08:00
Girish Ramakrishnan
992a32a8d9
add hetzner as supported provider
2018-01-23 11:37:15 -08:00
Johannes Zellner
4a7b26f940
mail_relay from settings table is also JSON
2018-01-23 16:29:15 +01:00
Johannes Zellner
147c728743
Rename maildb table to mail
2018-01-23 15:45:30 +01:00
Johannes Zellner
ec910e8ca1
Fix hotfix to be able to deal with different webadmin and box code revisions
2018-01-23 12:15:38 +01:00
Johannes Zellner
681813eddd
Ensure the mail status check api has consitent toplevel properties
2018-01-23 12:01:00 +01:00
Girish Ramakrishnan
e6f4a9e4a8
Use domain in mail test
2018-01-22 14:49:30 -08:00
Johannes Zellner
27bd0be1fc
Remove config.fqdn() from ldap tests
2018-01-22 20:35:21 +01:00
Johannes Zellner
f152dbefad
Also check if the domain has mail enabled for ldap sendmail auth
2018-01-22 20:35:08 +01:00
Johannes Zellner
687ba0e248
Verify mailbox against username instead of email
2018-01-22 20:06:18 +01:00
Girish Ramakrishnan
61b5d3e60d
createReleaseTarball: Use HEAD instead of --revision
2018-01-22 11:02:21 -08:00
Girish Ramakrishnan
b69d6c42e1
Get webadmin from a level below
2018-01-22 11:02:21 -08:00
Girish Ramakrishnan
924e35294f
move ui to separate repo
...
This separates the platform code from the ui
2018-01-22 11:01:42 -08:00
Johannes Zellner
a6f79854db
Further ldap test fixes
2018-01-22 17:53:17 +01:00
Johannes Zellner
591f01bb45
Do not automatically generate the user's email for password verification
2018-01-22 16:12:13 +01:00
Johannes Zellner
8bcd807010
Use main email address for avatar
2018-01-22 16:09:25 +01:00
Johannes Zellner
14dcd71429
Add ui components for fallbackEmail property
2018-01-22 16:06:35 +01:00
Johannes Zellner
9f29438b34
Allow changing fallbackEmail via the profile api
2018-01-22 15:55:55 +01:00
Johannes Zellner
cf94f26d62
Fixup the test using fallbackEmail
2018-01-22 11:52:58 +01:00
Girish Ramakrishnan
6fdb093595
add and remove maildb entries when domain is created and removed
2018-01-21 20:33:21 -08:00
Girish Ramakrishnan
93d5ce63ae
fix indent
2018-01-21 15:34:35 -08:00
Johannes Zellner
32152a8b88
Add missing migration file
2018-01-21 14:50:55 +01:00
Johannes Zellner
48d557b242
Replace alternateEmail with fallbackEmail
2018-01-21 14:50:24 +01:00
Johannes Zellner
1e8aa209b1
Add fallbackEmail to user data model
2018-01-21 14:25:39 +01:00
Girish Ramakrishnan
00c1c42b58
Fix mail route tests
2018-01-21 00:59:20 -08:00
Girish Ramakrishnan
f4e1b8874c
add maildb entry when domain entry is created
2018-01-21 00:27:28 -08:00
Girish Ramakrishnan
f5b685465f
make ldap test use maildb
2018-01-21 00:27:13 -08:00
Girish Ramakrishnan
f49a36f667
Use mail.get()
2018-01-21 00:17:25 -08:00
Girish Ramakrishnan
70fecb8a75
Add mail test
2018-01-21 00:06:08 -08:00
Girish Ramakrishnan
04868f0983
maildb tests
2018-01-20 23:52:16 -08:00
Girish Ramakrishnan
16ac205c7f
make mail routes domain based
2018-01-20 23:47:12 -08:00
Girish Ramakrishnan
3ed794e486
Add a single getter for all mail settings
2018-01-20 23:47:12 -08:00
Girish Ramakrishnan
f93963540e
Add maildb
...
also, migrate values from settings table to maildb
2018-01-20 23:47:08 -08:00
Girish Ramakrishnan
777269810f
Move mail container creation to mail.js
...
At this point, mail.js is like an app of it's own
2018-01-20 20:38:35 -08:00
Girish Ramakrishnan
a7de17a160
Move mail related settings to new mail route
...
there is quite a bit of circular dep between settings, platform and
mail code. this will be removed in future commits.
2018-01-20 20:02:01 -08:00
Girish Ramakrishnan
e724913b6c
Move email_status into mail route
2018-01-20 18:37:15 -08:00
Girish Ramakrishnan
b68db9bf05
email -> mail
2018-01-20 18:22:43 -08:00
Girish Ramakrishnan
8da04f6f51
make domaindb.update take object
2018-01-20 10:24:11 -08:00
Girish Ramakrishnan
b64c41758e
domaindb.upsert is not used
2018-01-20 10:18:06 -08:00
Girish Ramakrishnan
0eaea12818
make domaindb.add take an object
2018-01-20 10:17:01 -08:00
Girish Ramakrishnan
b098db16cf
domaindb: add DOMAINS_FIELDS
2018-01-20 10:05:31 -08:00
Girish Ramakrishnan
dc952f1dd8
remove config.fqdn() from caas-test
2018-01-20 09:50:30 -08:00
Girish Ramakrishnan
ee733d54ea
Add mail_domains and mail_default_domain to mail.ini
2018-01-19 23:17:00 -08:00
Girish Ramakrishnan
0e4a0658b2
Remove postman location (unused by dovecot)
2018-01-19 22:10:10 -08:00
Girish Ramakrishnan
20166cd41c
make catch_all fully qualified
2018-01-19 20:02:56 -08:00
Girish Ramakrishnan
98d493b2d0
ldap: make mailbox search return fully qualified names
2018-01-19 12:14:43 -08:00
Girish Ramakrishnan
af25485fa0
ldap: Make alias return fully qualified alias
2018-01-19 12:11:33 -08:00
Girish Ramakrishnan
2015e7bce9
ldap: make mailing list search return fully qualified members
2018-01-19 12:11:26 -08:00
Johannes Zellner
2370b12795
Use the db also for crashnotifier to obtain a valid server domain for sending the mail
2018-01-19 19:26:45 +01:00
Johannes Zellner
18a781b956
Collect common mail sending configs in one function
2018-01-19 18:58:34 +01:00
Johannes Zellner
77206a9d3c
Remove fqdn usage from all email templates
2018-01-19 18:56:52 +01:00
Girish Ramakrishnan
73800ac6a7
Linter fixes
2018-01-19 09:55:27 -08:00
Girish Ramakrishnan
27dfd1d6c1
Set the dkim selector when generating keys
...
The box code owns the dkim dir and selector can change per domain
2018-01-18 21:49:45 -08:00
Girish Ramakrishnan
0833f8830c
retire script does not require fqdn
2018-01-18 19:44:43 -08:00
Girish Ramakrishnan
28a240a701
send adminFqdn instead of domain in alive route
2018-01-18 19:44:34 -08:00
Girish Ramakrishnan
5be827cd4e
remove use of config.fqdn() in ldap test
2018-01-18 19:35:05 -08:00
Girish Ramakrishnan
0f47dcfae6
ldap: mailbox routes now require the cn to be fully qualified
2018-01-18 19:33:38 -08:00
Girish Ramakrishnan
614f13ffd0
move caas tests to separate file
2018-01-18 14:22:07 -08:00
Girish Ramakrishnan
a850c0813b
caas: use caas_config for token verification
2018-01-18 13:51:02 -08:00
Girish Ramakrishnan
4b642a407f
remove caas dep from tests
2018-01-18 13:50:57 -08:00
Girish Ramakrishnan
6a87558b52
set default provider to generic
2018-01-18 13:41:40 -08:00
Girish Ramakrishnan
606efb8038
remove caas related logic from oauth test
2018-01-18 13:31:08 -08:00
Girish Ramakrishnan
cfa523f3c1
Remove config.fqdn() fallback in apptask
2018-01-18 12:06:20 -08:00
Girish Ramakrishnan
0e7ebc9637
Move SMTPS port to 2465
...
This curious change is because gogs and gitea have no way to configure
the SMTPS port and rely on port number ending with 465 to determine
SMTPS (!)
2018-01-18 10:38:39 -08:00
Johannes Zellner
94f7b90705
Add 1.9.3 changes
2018-01-18 15:45:17 +01:00
Johannes Zellner
876b4feb49
The DNS provider property moved to the root dns config object
2018-01-18 12:15:44 +01:00
Girish Ramakrishnan
27252fb2cc
1.10.0 changes
2018-01-17 21:10:11 -08:00
Girish Ramakrishnan
6513aebba6
MAIL_IMAP_USERNAME and MAIL_SMTP_USERNAME should be fully qualified
...
Re-configure the whole infra to propagate the changes
2018-01-17 21:07:53 -08:00
Girish Ramakrishnan
e9be2a7fb7
Remove is_custom_domain use (use adminFqdn instead)
2018-01-17 21:07:13 -08:00
Girish Ramakrishnan
28dac3fdb3
Fix indentation
2018-01-17 21:05:43 -08:00
Girish Ramakrishnan
f4c3ae639e
Use app.domain instead of config.fqdn when setting up mail addon
2018-01-17 21:05:22 -08:00
Girish Ramakrishnan
8c8e387012
bump addons
2018-01-17 20:25:57 -08:00
Girish Ramakrishnan
9e8be3fa50
do basic backupId validation
2018-01-17 16:22:50 -08:00
Girish Ramakrishnan
21058f8b61
exchangeBoxTokenWithUserToken is obsolete
2018-01-17 15:59:33 -08:00
Girish Ramakrishnan
cef0cd4b25
config.token() and arg_token are not used anymore
2018-01-17 15:39:32 -08:00
Girish Ramakrishnan
9cd690e8b4
Do not cache box and user config
...
this is not needed anymore since webadmin does not keep polling this
2018-01-17 15:38:24 -08:00
Girish Ramakrishnan
116befd111
fix test
2018-01-17 15:13:53 -08:00
Girish Ramakrishnan
fe0ff45c37
caas: autoprovision and use caas and appstore configs
2018-01-17 14:11:19 -08:00
Girish Ramakrishnan
337f919451
dnsConfig is unused
2018-01-17 12:25:33 -08:00
Girish Ramakrishnan
03d2e74e1d
use constants
2018-01-17 12:25:14 -08:00
Girish Ramakrishnan
2c42653c24
1.9.2 changes
2018-01-17 10:53:00 -08:00