Girish Ramakrishnan
131f823e57
7.2.5 changes
2022-06-22 17:59:02 -07:00
Girish Ramakrishnan
24af101784
Fix issue where only 25 group members were returned
...
This is because GROUP_CONCAT defaults to 1024. uuid is 40 chars.
1024/40 = ~25
(cherry picked from commit 94a196bfa0 )
2022-06-22 17:58:05 -07:00
Girish Ramakrishnan
c2fdb9ae3f
Fix storage volume migration
...
Patch the migration so it runs again properly in 7.2.5
https://forum.cloudron.io/topic/7256/app-data-regression-in-v7-2-4
2022-06-22 17:15:54 -07:00
Johannes Zellner
21cf67639a
Reload volumes in case one was created in the for loop
...
(cherry picked from commit e818e5f7d5 )
2022-06-22 11:38:03 -07:00
Girish Ramakrishnan
52d2fe6909
data dir: allow sameness of old and new dir
...
this makes it easy to migrate to a new volume setup
(cherry picked from commit a32166bc9d )
2022-06-10 09:39:24 -07:00
Girish Ramakrishnan
61a1ac6983
7.2.4 changes
2022-06-10 09:33:12 -07:00
Girish Ramakrishnan
67801020ed
mailboxDisplayName is optional
2022-06-08 14:25:16 -07:00
Girish Ramakrishnan
037f4195da
guard against two level subdir moves
...
this has never worked since the -wholename check only works for
one level deep
2022-06-08 12:24:11 -07:00
Girish Ramakrishnan
8cf0922401
Fix container creation when migrating data dir
2022-06-08 11:52:22 -07:00
Girish Ramakrishnan
6311c78bcd
Fix quoting
2022-06-08 11:25:20 -07:00
Girish Ramakrishnan
544ca6e1f4
initial xfs support
2022-06-08 10:58:00 -07:00
Girish Ramakrishnan
6de198eaad
sendmail: check for supportsDisplayName
...
it seems quite some apps don't support this. so, we need a way for the
ui to hide the field so that users are not confused.
2022-06-08 09:43:58 -07:00
Girish Ramakrishnan
6c67f13d90
Use bind mount instead of volume
...
see also c76b211ce0
2022-06-06 15:59:59 -07:00
Girish Ramakrishnan
7598cf2baf
consolidate storage validation logic
2022-06-06 12:50:21 -07:00
Girish Ramakrishnan
7dba294961
storage: check volume status
2022-06-03 10:43:59 -07:00
Girish Ramakrishnan
4bee30dd83
fix more typos
2022-06-03 09:10:37 -07:00
Girish Ramakrishnan
7952a67ed2
guess the volume type better
2022-06-03 07:54:16 -07:00
Johannes Zellner
50b2eabfde
Also fixup userdirectory tests
2022-06-03 13:59:21 +02:00
Johannes Zellner
591067ee22
Fixup ldap group search tests
2022-06-03 13:54:31 +02:00
Johannes Zellner
88f78c01ba
Remove virtual groups users and admin exposed via ldap
2022-06-03 13:32:35 +02:00
Girish Ramakrishnan
dddc5a1994
migrate app dataDir to volumes
2022-06-02 16:29:01 -07:00
Girish Ramakrishnan
8fc8128957
Make apps.getDataDir async
2022-06-02 11:19:33 -07:00
Girish Ramakrishnan
c76b211ce0
localstorage: remove usage of docker volumes
...
just move bind mounts. the initial idea was to use docker volume backends
but we have no plans for this. in addition, usage of volumes means that
files get copied from the image and into volume on first run which is
not desired. people are putting /app/data stuff into images which ideally
should break.
2022-06-02 11:09:27 -07:00
Girish Ramakrishnan
0c13504928
Bump version
2022-06-02 11:02:06 -07:00
Girish Ramakrishnan
26ab7f2767
add mailbox display name to schema
2022-06-01 22:06:34 -07:00
Girish Ramakrishnan
f78dabbf7e
mail: add display name validation tests
2022-06-01 22:04:36 -07:00
Girish Ramakrishnan
39c5c44ac3
cloudron-firewall: fix spurious line
2022-06-01 09:28:50 -07:00
Girish Ramakrishnan
2dea7f8fe9
sendmail: restrict few characters in the display name
2022-06-01 08:13:19 -07:00
Girish Ramakrishnan
85af0d96d2
sendmail: allow display name to be set
2022-06-01 01:38:16 -07:00
Girish Ramakrishnan
176e917f51
update 7.2.3 changes
2022-05-31 13:27:00 -07:00
Girish Ramakrishnan
534c8f9c3f
collectd: on one system, localhost was missing in /etc/hosts
2022-05-27 16:10:38 -07:00
Girish Ramakrishnan
5ee9feb0d2
If disk name has '.', replace with '_'
...
graphite uses . as the separator between different metric parts
see #348
2022-05-27 16:00:08 -07:00
Girish Ramakrishnan
723453dd1c
7.2.3 changes
2022-05-27 12:04:01 -07:00
Girish Ramakrishnan
45c9ddeacf
appstore: allow re-registration on server side delete
2022-05-26 22:27:58 -07:00
Girish Ramakrishnan
5b075e3918
transfer ownership is not used anymore
2022-05-26 14:30:32 -07:00
Girish Ramakrishnan
c9916c4107
Really disable FQDNLookup
2022-05-25 15:48:25 -07:00
Girish Ramakrishnan
c7956872cb
Add to changes
2022-05-25 15:14:01 -07:00
Girish Ramakrishnan
3adf8b5176
collectd: FQDNLookup causes collectd install to fail
...
this is on ubuntu 20
https://forum.cloudron.io/topic/7091/aws-ubuntu-20-04-installation-issue
2022-05-25 15:10:55 -07:00
Girish Ramakrishnan
40eae601da
Update cloudron-manifestformat for new scheduler patterns
2022-05-23 11:02:04 -07:00
Girish Ramakrishnan
3eead2fdbe
Fix possible duplicate key issue
...
console_server_origin in injected by the new setup script even for
7.1.x
2022-05-22 20:48:29 -07:00
Girish Ramakrishnan
9fcd6f9c0a
cron: add @service which is probably clearer than @reboot in app context
2022-05-20 10:57:44 -07:00
Girish Ramakrishnan
17910584ca
cron: add extensions
...
https://www.man7.org/linux/man-pages/man5/crontab.5.html#EXTENSIONS
2022-05-20 10:53:30 -07:00
Girish Ramakrishnan
d9a02faf7a
make the globals const
2022-05-20 09:38:22 -07:00
Girish Ramakrishnan
d366f3107d
net_admin: enable IPv6 forwarding in the container
2022-05-19 17:10:05 -07:00
Girish Ramakrishnan
2596afa7b3
appstore: set utmSource during user registration
2022-05-19 00:00:48 -07:00
Johannes Zellner
aa1e8dc930
Give the dashboard a way to check backgroundImage availability
2022-05-17 15:25:44 +02:00
Johannes Zellner
f3c66056b5
Allow to unset background image
2022-05-17 13:17:05 +02:00
Girish Ramakrishnan
93bacd00da
Fix exec web socket/upload/download
2022-05-16 11:46:28 -07:00
Girish Ramakrishnan
b5c2a0ff44
exec: rework API to get exit code
2022-05-16 11:23:58 -07:00
Johannes Zellner
6bd478b8b0
Add profile backgroundImage api
2022-05-15 12:08:11 +02:00
Girish Ramakrishnan
c5c62ff294
Add to changes
2022-05-14 09:36:56 -07:00
Girish Ramakrishnan
7ed8678d50
mongodb: fix import timeout
2022-05-09 17:20:16 -07:00
Girish Ramakrishnan
e19e5423f0
cloudron-support: Remove unused var
2022-05-07 19:25:06 -07:00
Girish Ramakrishnan
622ba01c7a
ubuntu 22: collectd disappeared
...
https://bugs.launchpad.net/ubuntu/+source/collectd/+bug/1971093
also, remove the ubuntu 16 hack
2022-05-06 20:02:02 -07:00
Girish Ramakrishnan
935da3ed15
vultr: set ttl to 120
...
https://www.vultr.com/docs/introduction-to-vultr-dns/#Limitations
2022-05-06 12:29:12 -07:00
Girish Ramakrishnan
ce054820a6
add migration to add consoleServerOrigin
2022-05-05 09:59:22 -07:00
Johannes Zellner
a7668624b4
Ensure we also set the new console server origin during installation
2022-05-05 16:52:11 +02:00
Girish Ramakrishnan
01b36bb37e
proxyAuth: make the POST to /logout redirect
...
for firefly-III
2022-05-03 18:19:22 -07:00
Girish Ramakrishnan
5d1aaf6bc6
cloudron-setup: silent
2022-05-03 10:20:19 -07:00
Girish Ramakrishnan
7ceb307110
Add 7.2.1 changes
2022-05-03 09:15:21 -07:00
Girish Ramakrishnan
6371b7c20d
dns: add hetzner
2022-05-02 22:33:30 -07:00
Girish Ramakrishnan
7ec648164e
Remove usage of util
2022-05-02 21:32:10 -07:00
Girish Ramakrishnan
6e98f5f36c
backuptask: make upload/download async
2022-04-30 16:42:14 -07:00
Girish Ramakrishnan
a098c6da34
noop: removeDir is async
2022-04-30 16:35:39 -07:00
Girish Ramakrishnan
94e70aca33
storage: downloadDir is not part of interface
2022-04-30 16:24:49 -07:00
Girish Ramakrishnan
ea01586b52
storage: make copy async
2022-04-30 16:24:45 -07:00
Girish Ramakrishnan
8ceb80dc44
hush: return BoxError everywhere
2022-04-29 19:02:59 -07:00
Girish Ramakrishnan
2280b7eaf5
Add S3MultipartDownloadStream
...
This extends the modern Readable class
2022-04-29 18:23:56 -07:00
Girish Ramakrishnan
1c1d247a24
cloudron-support: update key
2022-04-29 12:39:42 -07:00
Girish Ramakrishnan
90a6ad8cf5
support: new keys (ed25519)
...
rsa keys are slowly going away
2022-04-29 12:37:27 -07:00
Girish Ramakrishnan
80d91e5540
Add missing changelog
2022-04-29 09:58:17 -07:00
Girish Ramakrishnan
26cf084e1c
tarPack/tarExtract do not need a callback
2022-04-28 21:58:00 -07:00
Girish Ramakrishnan
8ef730ad9c
backuptask: make upload/download async
2022-04-28 21:37:08 -07:00
Girish Ramakrishnan
7123ec433c
split up backupformat logic into separate files
2022-04-28 19:10:57 -07:00
Girish Ramakrishnan
c67d9fd082
move crypto code to hush.js
2022-04-28 18:12:17 -07:00
Girish Ramakrishnan
dd8f710605
Fix failing test
2022-04-28 18:03:36 -07:00
Girish Ramakrishnan
e097b79f65
godaddy: do not remove all the records of type
2022-04-28 17:46:03 -07:00
Girish Ramakrishnan
765f6d1b12
Revert "proxyAuth: use default fallback icon when no appstore icon or custom icon"
...
This reverts commit 045c3917c9 .
This was committed by mistake, not sure how. 3d28833c35 is the commit
that fixes this issue.
2022-04-28 17:05:46 -07:00
Girish Ramakrishnan
7cf80ebf69
postgresql: add connection logs
...
This was an attempt to fix connection leak in postgresql. It turns
out that there was a long running cron task which was holding a db
connection. When that happens, the apptask might fail because postgres
says db is in use. The code in scheduler.js currently does not really
'suspend' task running because of re-entrancy issues.
2022-04-28 16:11:09 -07:00
Johannes Zellner
cc328f3a6e
cloudron-support --enable-ssh should only enable ssh not attempt to collect stats, this might fail
2022-04-28 11:31:18 +02:00
Girish Ramakrishnan
045c3917c9
proxyAuth: use default fallback icon when no appstore icon or custom icon
2022-04-28 10:48:25 +02:00
Girish Ramakrishnan
ac2186ccf6
redis: fix cgroup check
2022-04-27 18:46:00 -07:00
Girish Ramakrishnan
a57fe36643
collectd: add cgroup v2 config
...
Ubuntu 22 has cgroup v2 config by default
https://rootlesscontaine.rs/getting-started/common/cgroup2/#checking-whether-cgroup-v2-is-already-enabled
https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html
https://man7.org/training/download/splc_cgroups_v1_slides.pdf
2022-04-27 18:41:20 -07:00
Girish Ramakrishnan
1e711f7928
Ubuntu 22 has private home directories by default ( https://discourse.ubuntu.com/t/private-home-directories-for-ubuntu-21-04-onwards/ )
2022-04-27 17:49:29 -07:00
Girish Ramakrishnan
eafccde6cb
Reset mysql password by detecting version (instead of ubuntu version)
2022-04-27 15:45:53 -07:00
Girish Ramakrishnan
6b85e11a22
update: collectd configuration can be removed
2022-04-27 15:41:28 -07:00
Girish Ramakrishnan
a74de3811b
mysqldump: better detection of --column-statistics support
...
since it's also needed for ubuntu 22
2022-04-27 15:39:53 -07:00
Girish Ramakrishnan
070a425c85
typo
2022-04-27 13:11:20 -07:00
Girish Ramakrishnan
32153ed47d
nginx: switch to ubuntu's repo package
...
ubuntu 18.04 has nginx 1.14
ubuntu 20.04, 22.04 has nginx 1.18
We used a custom nginx for TLSv1.3 support (ssl_protocols TLSv1.3).
OpenSSL itself has TLS 1.3 only from Ubuntu 18.10. This is why we
installed custom packages on Ubuntu 18.04
2022-04-27 10:59:27 -07:00
Girish Ramakrishnan
454f9c4a79
syncer: task processor cannot be async because of asyncjs quirk
2022-04-27 09:14:51 -07:00
Girish Ramakrishnan
3d28833c35
proxyAuth: use default fallback icon when no appstore icon or custom icon
2022-04-26 19:43:22 -07:00
Girish Ramakrishnan
be458020dd
use string interpolation
2022-04-26 18:55:02 -07:00
Girish Ramakrishnan
9b6733fd88
godaddy: there is now a delete API
2022-04-26 18:44:50 -07:00
Girish Ramakrishnan
1b34a3e599
proxyAuth: add header spoofing note
2022-04-26 14:59:38 -07:00
Girish Ramakrishnan
67d29dbad8
systemd-detect-virt returns false when none detected
2022-04-26 14:59:26 -07:00
Girish Ramakrishnan
28b0043541
cloudron-setup: add container virtualization check
2022-04-26 08:24:36 -07:00
Girish Ramakrishnan
78824b059e
turn off sso flag if an update removes sso options
...
ff-iii used to have LDAP but we removed it. in the database, 'sso'
is still true. the migration here will reset it back to false.
for future situations like these, we sync the sso flag on app update itself.
this ensures correct behavior when yet another update add back sso support.
in ff-iii case, a future update is bringing in proxyAuth based sso!
we don't store the 'sso' bit in backupdb, so user choice of sso is
lost if restore changes sso addons.
2022-04-25 23:36:58 -07:00
Girish Ramakrishnan
c63709312d
proxyAuth: set X-Remote-User, X-Remote-Email headers
...
Apps like firefly-iii support https://datatracker.ietf.org/doc/html/rfc3875#section-4.1.10
2022-04-25 22:24:41 -07:00
Girish Ramakrishnan
11cf24075b
Keep proxyAuth.enabled configs together
2022-04-25 22:09:34 -07:00
Girish Ramakrishnan
5d440d55c3
Add to changes
2022-04-25 09:07:27 -07:00
Johannes Zellner
4c3b81d29c
Add make user local tests and fixup route
2022-04-24 22:49:12 +02:00
Johannes Zellner
032218c0fd
Add route to make user local
2022-04-24 22:22:25 +02:00
Johannes Zellner
0cd48bd239
Ensure LDAP usernames are always treated lowercase
2022-04-23 11:21:14 +02:00
Girish Ramakrishnan
f5a2e8545b
Initial support for ubuntu 22.04 Jammy Jellyfish
2022-04-21 12:30:37 -07:00
Girish Ramakrishnan
4306e20a8e
Update docker to 20.10.14
2022-04-21 12:30:14 -07:00
Girish Ramakrishnan
635dd5f10d
Update nodejs
2022-04-21 12:28:55 -07:00
Girish Ramakrishnan
7f89dfd261
add once.js
2022-04-15 19:01:35 -05:00
Girish Ramakrishnan
e878e71b20
promisify once
2022-04-15 17:59:41 -05:00
Girish Ramakrishnan
64a2493ca2
Fixup prettyBytes
2022-04-15 17:56:24 -05:00
Girish Ramakrishnan
26f9635a38
taskworker: only support async workers
2022-04-15 17:40:46 -05:00
Girish Ramakrishnan
5f2492558d
callback is not needed here
2022-04-15 17:29:15 -05:00
Girish Ramakrishnan
c83c151e10
remove recursive-readdir
2022-04-15 11:34:16 -05:00
Girish Ramakrishnan
801dddc269
inline S3ReadStream
2022-04-15 11:25:15 -05:00
Girish Ramakrishnan
9a886111ad
inline chunk.js
2022-04-15 09:25:54 -05:00
Girish Ramakrishnan
bdc9a0cbe3
inline prettyBytes
2022-04-15 09:18:07 -05:00
Girish Ramakrishnan
555f914537
remove lodash.chunk
2022-04-15 08:07:46 -05:00
Girish Ramakrishnan
43f86674b4
Remove delay module
2022-04-15 07:52:35 -05:00
Girish Ramakrishnan
f7ed044a40
fix storage test
2022-04-15 07:49:38 -05:00
Girish Ramakrishnan
72408f2542
Remove proxy-middleware, we have our own copy by now
...
See aad50fb5b2
2022-04-15 07:43:19 -05:00
Girish Ramakrishnan
0abc6c8844
replace pretty-bytes module
2022-04-15 07:34:16 -05:00
Girish Ramakrishnan
d46de32ffb
Update packages
2022-04-15 07:24:50 -05:00
Girish Ramakrishnan
185d5d66ad
even more constness
2022-04-14 20:30:00 -05:00
Girish Ramakrishnan
01ce251596
constness
2022-04-14 18:03:43 -05:00
Girish Ramakrishnan
05d7a7f496
constness
2022-04-14 17:50:41 -05:00
Girish Ramakrishnan
685bda35b9
storage: make remove and removeDir async
2022-04-14 16:16:20 -05:00
Girish Ramakrishnan
8d8cdd38a9
Add missing await
2022-04-14 15:40:51 -05:00
Girish Ramakrishnan
d54c03f0a0
storage: make exists async
2022-04-14 12:24:34 -05:00
Girish Ramakrishnan
11f7be2065
storage: verifyConfig is now async
2022-04-14 12:24:30 -05:00
Girish Ramakrishnan
a39e0ab934
storage: make remount async
2022-04-14 09:57:31 -05:00
Girish Ramakrishnan
b51082f7e4
storage: checkPreconditions is now async
2022-04-14 07:40:19 -05:00
Girish Ramakrishnan
9ec76c69ec
s3: make callback of getS3Config
2022-04-14 07:35:41 -05:00
Girish Ramakrishnan
b0a09a8a00
restore: fix usage of backupId
2022-04-13 21:23:12 -05:00
Girish Ramakrishnan
5870f949a3
Update changes
2022-04-13 11:39:23 -05:00
Girish Ramakrishnan
87cb90c9b6
Fix crash
...
ReferenceError: Cannot access 'backups' before initialization
2022-04-08 16:27:11 -07:00
Girish Ramakrishnan
21b900258a
backup: fix format of id
...
the id is used in dependsOn by the UI to find the linked apps. if we
had it as an uuid, we have to query the db a lot
2022-04-08 16:23:27 -07:00
Johannes Zellner
de9f3c10f4
Use new sftp addon 3.6.1
...
This will copy the uploaded file on conflict with a unique .number
extension
2022-04-07 18:02:11 +02:00
Johannes Zellner
47e45808a3
Give the addons a lot more time to initiate a connection
2022-04-06 13:05:09 +02:00
Girish Ramakrishnan
0280c2baba
keep the backup if preserveSecs is -1
2022-04-05 11:08:38 -07:00
Girish Ramakrishnan
2f8f5fcb7d
Typo
2022-04-05 10:26:05 -07:00
Girish Ramakrishnan
709d4041b2
backups: fix restore code path after backup id changes
2022-04-05 09:55:57 -07:00
Johannes Zellner
b4b999bd74
Fix await safe usage
2022-04-05 13:17:49 +02:00
Girish Ramakrishnan
ea3fd27123
backups: recursively update the dep preserveSecs
...
One idea was to compute this at cleanup time, but this has two problems:
* the UI won't reflect this value. can be good or bad
* the cleaner has no easy way to find out the "parent". I guess we should
change our data structure, if we want to go down this route...
2022-04-04 21:29:35 -07:00
Girish Ramakrishnan
452a4d9a75
backups: add remotePath
...
the main motivation is that id can be used in REST API routes. previously,
the id was a path and this had a "/" in it. This made /api/v1/backups/:backupId
not work.
2022-04-04 20:40:40 -07:00
Girish Ramakrishnan
54934c41a7
storage: rename getBackupPath to getBasePath
2022-04-04 14:08:24 -07:00
Girish Ramakrishnan
a05e564ae6
Fix expectation in test
2022-04-04 14:03:07 -07:00
Girish Ramakrishnan
57ac94bab6
Fix appstore test
2022-04-04 13:55:23 -07:00
Girish Ramakrishnan
6839ff4cf6
reverseproxy: fix typo
...
this type was causing nginx configs of the primary domain being re-written
everytime we try to renew certs
2022-04-04 10:30:32 -07:00
Girish Ramakrishnan
993dda9121
rename function
2022-04-03 08:29:59 -07:00
Girish Ramakrishnan
70695b1b0f
backups: set label of backup and control it's retention
2022-04-02 19:30:54 -07:00
Girish Ramakrishnan
d47b39d90b
eventlog: distinguish install vs update finish
2022-04-01 14:19:53 -07:00
Girish Ramakrishnan
574d3b120f
Use hyphens instead of camel case for scripts
2022-04-01 09:51:15 -07:00
Girish Ramakrishnan
3d1f2bf716
move init script into scripts
...
the baseimage directory was from a time when we used to build a
base image and snapshot it. this is not done anymore.
init-ubuntu.sh - static packages installed one time and managed by ubuntu
installer.sh - packages installed and maintained by cloudron. run before an update.
this can "fail" and the updater can thus abort
start.sh - configuring packages
2022-04-01 09:48:40 -07:00
Girish Ramakrishnan
bac5edc188
cloudron-setup: remove arguments to init script
...
this ends support for cloudron 5 installs with this version of the script
2022-04-01 09:37:06 -07:00
Girish Ramakrishnan
7700c56d3e
cloudron-setup: remove --skip-baseimage-init, it is unused
2022-04-01 09:22:23 -07:00
Girish Ramakrishnan
9f395f64da
accessToken -> cloudronToken
2022-03-31 23:59:42 -07:00
Girish Ramakrishnan
73d029ba4b
cloudron-setup: add setup-token to arg list
2022-03-31 23:49:34 -07:00
Girish Ramakrishnan
a292393a43
7.2 changes
2022-03-31 23:45:14 -07:00
Girish Ramakrishnan
37a4e8d5c5
cloudron-setup: add --setup-token
2022-03-31 23:38:54 -07:00
Girish Ramakrishnan
81728f4202
appstore: make the args of updateCloudron clear
2022-03-31 23:27:00 -07:00
Girish Ramakrishnan
2d2ddd1c49
add note on the existing setupToken
2022-03-31 23:02:26 -07:00
Girish Ramakrishnan
bc49f64a0c
appstore: it never returns 422
...
I think I meant 402 which is subscription expired/billing error
2022-03-31 22:51:40 -07:00
Girish Ramakrishnan
52fc031516
Log error message if updateCloudron failed
2022-03-31 22:46:14 -07:00
Girish Ramakrishnan
cae528158c
appstore: check login response
2022-03-31 22:43:34 -07:00
Girish Ramakrishnan
566a03cd59
remove unnecessary temp variables
2022-03-31 22:41:48 -07:00
Girish Ramakrishnan
ad2221350f
Add appstore web token
...
* For existing installs, migrate using the soon to be obsoleted user_token route
* For new installs, the token post login is stashed during registration time
2022-03-31 22:35:45 -07:00
Girish Ramakrishnan
656dca7c66
rename cloudron_token to appstore_api_token
2022-03-31 22:18:08 -07:00
Girish Ramakrishnan
638fe2e6c8
ldap: add rootDSE test
2022-03-31 21:18:56 -07:00
Girish Ramakrishnan
3295d2b727
settings: remove licenseKey
...
this is unused
2022-03-31 12:47:45 -07:00
Johannes Zellner
c4689a8385
Add registerWithSetupToken() to be used
2022-03-31 17:29:44 +02:00
Girish Ramakrishnan
d09d6c21fa
sshfs: fix bug where sshfs mounts were generated without unbound dependancy
2022-03-30 21:39:15 -07:00
Girish Ramakrishnan
7ec1594428
create a separate support user
...
This creates a separate user named 'cloudron-support' using which we
can provide remote support. The hyphen username convention follows the
systemd sytem username convention.
With a separate user, we don't need to ask users to keep changing PermitRootLogin
(and remind them to change it back).
Using a sudo user has various advantages:
* https://askubuntu.com/questions/687249/why-does-ubuntu-have-a-disabled-root-account
* https://wiki.debian.org/sudo
* https://askubuntu.com/questions/16178/why-is-it-bad-to-log-in-as-root
The yellowtent user is also locked down further - no password and no shell login.
2022-03-30 15:08:20 -07:00
Girish Ramakrishnan
529f6fb2cd
sftp: fix private key file permissions on restore
2022-03-30 11:58:21 -07:00
Girish Ramakrishnan
724f5643bc
suppress grep message
2022-03-30 11:10:00 -07:00
Girish Ramakrishnan
74e849e2a1
backup cleaner: do not clean when provider is not mounted
2022-03-30 10:17:20 -07:00
Girish Ramakrishnan
bfb233eca1
installer.sh: move installation of docker/node/nginx etc
...
no need to dup the code in two places. i think this will also
fix the unbound/resolvconf DNS resolution issue. this way unbound is configured
and is what gets used when docker is installed.
https://forum.cloudron.io/topic/6660/help-please-failing-setup-of-cloudron
https://forum.cloudron.io/topic/6632/help-me-please-got-error-while-installing-the-cloudron-on-a-fresh-ubuntu-20-04-x64-server
https://forum.cloudron.io/topic/6561/that-install-script-fails-74-times-out-of-75
2022-03-29 22:34:03 -07:00
Girish Ramakrishnan
5b27eb9c54
initializeBaseUbuntuImage: create yellowtent user
2022-03-29 21:41:46 -07:00
Girish Ramakrishnan
faf91d4d00
sshfs and mount.nfs are in base image now
2022-03-29 21:32:48 -07:00
Girish Ramakrishnan
dbb803ff5e
cifs: use credentials file
...
this supports special characters in passwords better
https://forum.cloudron.io/topic/6577/failed-to-mount-inactive-mount-error-13-when-mounting-cifs-from-synology
2022-03-29 21:26:58 -07:00
Girish Ramakrishnan
0dea2d283b
move sshfs key write logic to renderMountFile
2022-03-29 20:15:55 -07:00
Girish Ramakrishnan
cbc44da102
create sshfs dir in start.sh
2022-03-29 20:13:41 -07:00
Girish Ramakrishnan
3f633c9779
dns: check for CNAME record
...
Check if CNAME record exists and remove it if overwrite is set
2022-03-29 13:53:34 -07:00
Girish Ramakrishnan
6933ccefe2
Update nginx to 1.20.0-1
2022-03-28 13:25:05 -07:00
Girish Ramakrishnan
54aeff1419
ldap: send rootDSE response
...
some apps like osTicket require this
2022-03-25 14:15:18 -07:00
Girish Ramakrishnan
14f9d7fe25
cloudron-setup: add a redo flag to workaround dns failures
...
temporary hotfix for dns issues some VMs are having:
https://forum.cloudron.io/topic/6660/help-please-failing-setup-of-cloudron
https://forum.cloudron.io/topic/6632/help-me-please-got-error-while-installing-the-cloudron-on-a-fresh-ubuntu-20-04-x64-server
https://forum.cloudron.io/topic/6561/that-install-script-fails-74-times-out-of-75
2022-03-25 10:33:49 -07:00
Girish Ramakrishnan
144e98abab
image name cannot start with '/'
...
https://forum.cloudron.io/topic/6689/cannot-uninstall-custom-app
https://stackoverflow.com/questions/43091075/docker-restrictions-regarding-naming-image
2022-03-24 10:03:40 -07:00
Girish Ramakrishnan
e0e0c049c8
add link to upstream issue
2022-03-23 09:52:17 -07:00
Johannes Zellner
ef0f9c5298
Fixup cn attribute for ldap to be according to spec
...
Bring back b54c4bb399
2022-03-22 10:19:21 -07:00
Girish Ramakrishnan
d13905377c
firewall: do not add duplicate ldap redirect rules
2022-03-21 12:25:30 -07:00
Girish Ramakrishnan
6f1023e0cd
Add to changes
2022-03-18 10:27:04 -07:00
Girish Ramakrishnan
eeddc233dd
more changes
2022-03-16 09:05:41 -07:00
Girish Ramakrishnan
f48690ee11
dyndns: fix typo
2022-03-15 09:53:54 -07:00
Girish Ramakrishnan
3b0bdd9807
support: send the server IPv4 when remote support enabled
2022-03-14 21:30:54 -07:00
Girish Ramakrishnan
6dc5c4f13b
ldap: add dummy apps search route for directus
2022-03-14 09:17:49 -07:00
Girish Ramakrishnan
9bb5096f1c
nginx: enable underscores in headers
...
chatwoot requires this
https://www.chatwoot.com/docs/self-hosted/deployment/caprover#api-requests-failing-with-you-need-to-sign-in-or-sign-up-before-continuing
They are apparently disabled by default since they conflict with some CGI headers:
https://stackoverflow.com/questions/22856136/why-do-http-servers-forbid-underscores-in-http-header-names
https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/?highlight=disappearing%20http%20headers#missing-disappearing-http-headers
2022-03-13 23:04:34 -07:00
Girish Ramakrishnan
af42008fd3
Enable IPv6 on new interfaces with net_admin cap
2022-03-12 09:14:37 -08:00
Johannes Zellner
d6875d4949
Add test coverage support
2022-03-11 00:52:41 +01:00
Girish Ramakrishnan
4396bd3ea7
wildcard: handle ENODATA
2022-03-08 17:14:42 -08:00
Girish Ramakrishnan
db03053e05
cloudflare: remove async
2022-03-08 14:30:27 -08:00
Girish Ramakrishnan
193dff8c30
Better log
2022-03-03 10:08:34 -08:00
Girish Ramakrishnan
59582d081a
port25check: log the error message
2022-03-03 09:58:58 -08:00
Girish Ramakrishnan
ef684d32a2
port25checker: Use random tick to not bombard our checker service
2022-03-03 09:57:41 -08:00
Girish Ramakrishnan
fc2a326332
mysql: Fix default collation
...
https://github.com/mattermost/mattermost-server/issues/19602#issuecomment-1057360142
> SELECT @@character_set_database, @@collation_database;
This will show utf8mb4 and utf8mb4_0900_ai_ci (was utf8mb4_unicode_ci)
To see the table schemas:
> SELECT table_schema, table_name, table_collation FROM information_schema.tables;
2022-03-02 22:34:30 -08:00
Girish Ramakrishnan
e66a804012
ufw may not be installed
2022-03-02 19:36:32 -08:00
Girish Ramakrishnan
5afa7345a5
route53: check permissions to perform route53:ListResourceRecordSets
...
otherwise, at install time we see "DNS credentials for xx are invalid. Update it in Domains & Certs view"
the exact error from route 53 is:
User: arn:aws:iam::xx:user/yy is not authorized to perform: route53:ListResourceRecordSets on resource: arn:aws:route53:::hostedzone/zz because no identity-based policy allows the route53:ListResourceRecordSets action
2022-03-02 10:44:52 -08:00
Girish Ramakrishnan
c100be4131
dns: filter out link local addresses
...
Unlike IPv4, IPv6 requires a link-local address on every network interface on which the IPv6 protocol is enabled, even when routable addresses are also assigned
2022-03-01 12:13:59 -08:00
Girish Ramakrishnan
d326d05ad6
sysinfo: add noop provider
2022-03-01 12:05:01 -08:00
Girish Ramakrishnan
eb0662b245
Up the json size to 2mb for block list route
...
https://forum.cloudron.io/topic/6575/cloudron-7-1-2-firewall-not-ipv6-ready
2022-03-01 11:57:50 -08:00
Johannes Zellner
b92641d1b8
Update ldapjs to 2.3.2
2022-03-01 17:36:09 +01:00
Girish Ramakrishnan
7912d521ca
7.1.3 changes
2022-02-28 14:26:37 -08:00
Johannes Zellner
71dac64c4c
Only allow impersonation for equal or less powerful roles
2022-02-28 20:42:33 +01:00
Girish Ramakrishnan
aab6f222b3
better log
2022-02-28 11:04:44 -08:00
Girish Ramakrishnan
1cb1be321c
remove usage of deprecated fs.rmdir
2022-02-25 16:43:20 -08:00
Girish Ramakrishnan
2434e81383
backups: fix incorrect mountpoint check with managed mounts
2022-02-25 12:53:05 -08:00
Girish Ramakrishnan
62142c42ea
Fix crash
2022-02-25 11:03:16 -08:00
Girish Ramakrishnan
0ae30e6447
disable routes/test/apps-test for now
2022-02-24 20:50:35 -08:00
Girish Ramakrishnan
1a87856655
eventlog: log event on alias update
2022-02-24 20:30:42 -08:00
Girish Ramakrishnan
a3e097d541
add missing awaits for eventlog.add
2022-02-24 20:04:46 -08:00
Girish Ramakrishnan
9a6694286a
eventlog: event type typo
2022-02-24 19:59:29 -08:00
Girish Ramakrishnan
a662a60332
eventlog: add event for certificate cleanup
2022-02-24 19:55:43 -08:00
Girish Ramakrishnan
69f3b4e987
better debugs
2022-02-24 12:57:56 -08:00
Girish Ramakrishnan
481586d7b7
add missing return
2022-02-24 12:51:27 -08:00
Girish Ramakrishnan
34c3a2b42d
mail: increase pool_timeout
2022-02-24 12:25:38 -08:00
Johannes Zellner
c4a9295d3e
Fix typo
2022-02-24 19:10:04 +01:00
Girish Ramakrishnan
993ff50681
cloudron-firewall: fix crash when ports are whitelisted
...
it failed with:
Feb 22 08:52:30 strawberry cloudron-firewall.sh[14300]: /home/yellowtent/box/setup/start/cloudron-firewall.sh: line 14: iptables --wait 120 --wait-interval 1: command not found
the root cause was that IFS was getting set but not getting reset later.
the IFS=xx line is not line local as it seems to appear (just a bash statement)
2022-02-22 00:56:57 -08:00
Girish Ramakrishnan
ba5c2f623c
remove supererror, not really used
2022-02-21 17:34:51 -08:00
Girish Ramakrishnan
24a16cf8b4
redis: fix issue where protected mode was enabled with no password
2022-02-21 12:21:37 -08:00
Girish Ramakrishnan
5d34460e7f
typo
2022-02-21 12:02:09 -08:00
Girish Ramakrishnan
64b6187a26
tests: make the network ipv6
2022-02-21 12:01:12 -08:00
Girish Ramakrishnan
c15913a1b2
add to changes
2022-02-20 17:46:37 -08:00
Girish Ramakrishnan
8ef5e35677
cloudron-firewall: add retry for xtables lock
...
cloudron-firewall.sh[30679]: ==> Setting up firewall
cloudron-firewall.sh[30693]: iptables: Chain already exists.
cloudron-firewall.sh[30694]: ip6tables: Chain already exists.
cloudron-firewall.sh[30699]: ipset v7.5: Set cannot be created: set with the same name already exists
cloudron-firewall.sh[30702]: ipset v7.5: Set cannot be created: set with the same name already exists
cloudron-firewall.sh[30740]: Another app is currently holding the xtables lock. Perhaps you want to use the -w option?
2022-02-20 17:42:20 -08:00
Girish Ramakrishnan
c55d1f6a22
Add to changes
2022-02-19 15:27:51 -08:00
Girish Ramakrishnan
8b5b13af4d
leave note on br0ken usage of async
2022-02-19 14:26:48 -08:00
Girish Ramakrishnan
dfd51aad62
ensure dkim keys
...
a previous migration moved dkim keys into the database but looks like
sometimes the domain has empty dkim keys. this could be because we do not
add mail domain and domain in a transaction, so it's possible dkim was not
generated?
2022-02-19 14:23:30 -08:00
Girish Ramakrishnan
2b81120d43
cloudron-setup: say that it is cloudron we are installing
2022-02-18 13:38:52 -08:00
Girish Ramakrishnan
91dc91a390
fix dns tests
2022-02-18 11:36:14 -08:00
Johannes Zellner
b886a35cff
Fixup gcdns calls. The api returns an array as result
...
https://github.com/googleapis/google-cloud-node/issues/2556
https://github.com/googleapis/google-cloud-node/issues/2896
2022-02-18 19:46:03 +01:00
Girish Ramakrishnan
e59efc7e34
bump free space requirement to 2GB
2022-02-18 09:56:42 -08:00
Johannes Zellner
2160644124
Lets not stretch our luck
2022-02-18 18:40:49 +01:00
Johannes Zellner
b54c4bb399
Fixup cn attribute for ldap to be according to spec
2022-02-18 17:43:47 +01:00
Girish Ramakrishnan
feaa5585e1
mailbox: fix crash when domain not found
2022-02-17 18:03:56 -08:00
Girish Ramakrishnan
6f7bede7bd
listen on ipv6 as well for port 53
2022-02-17 11:56:08 -08:00
Girish Ramakrishnan
eb3e87c340
add debug
2022-02-17 11:08:22 -08:00
Girish Ramakrishnan
26a8738b21
make user listing return non-private fields
...
this was from a time when normal users could install apps
2022-02-16 21:22:38 -08:00
Girish Ramakrishnan
012a3e2984
ensure certificate of secondary domains
2022-02-16 20:32:04 -08:00
Girish Ramakrishnan
dfebda7170
Remove deprecated fs.rmdirSync
2022-02-16 20:30:33 -08:00
Girish Ramakrishnan
149f778652
wildcard: better error message
2022-02-16 20:22:50 -08:00
Girish Ramakrishnan
773dfd9a7b
ipv6 support in firewall allow and block lists
2022-02-16 13:39:35 -08:00
Girish Ramakrishnan
426ed435a4
userdirectory: move the validation and apply logic
2022-02-16 13:00:06 -08:00
Girish Ramakrishnan
2ed770affd
mountpoint: allow chown flag to be set
2022-02-16 11:48:37 -08:00
Girish Ramakrishnan
9d2d5d16f3
return 200 for immediate setters which require no further processing
2022-02-16 10:09:23 -08:00
Girish Ramakrishnan
9dbb299bb9
user directory: listen on ipv4 and ipv6
2022-02-15 14:27:51 -08:00
Girish Ramakrishnan
661799cd54
typo
2022-02-15 13:25:14 -08:00
Girish Ramakrishnan
0f25458914
rename key to match other json keys
2022-02-15 13:12:34 -08:00
Girish Ramakrishnan
d0c59c1f75
add separate route to get ipv4 and ipv6
2022-02-15 12:47:16 -08:00
Girish Ramakrishnan
c6da8c8167
make ipv4 and ipv6 settings separate
2022-02-15 12:36:05 -08:00
Girish Ramakrishnan
0dbe8ee8f2
godaddy: invalid ipv6
2022-02-15 12:01:52 -08:00
Girish Ramakrishnan
f8b124caa6
do not check if we have ipv6 to enable ipv6
2022-02-15 11:57:27 -08:00
Girish Ramakrishnan
125325721f
add mail manager tests
2022-02-15 10:30:26 -08:00
Johannes Zellner
ac57e433b1
Improve errorhandling in netcup dns
2022-02-14 10:57:06 +01:00
Girish Ramakrishnan
de84cbc977
add note on turn container host mode
2022-02-11 23:08:56 -08:00
Girish Ramakrishnan
d6d7bc93e8
firewall: add ipxtables helper
2022-02-11 22:56:23 -08:00
Girish Ramakrishnan
8f4779ad2f
Update addons to listen on ipv6
...
docker sets up the hostname DNS to be ipv4 and ipv6
Part of #264
2022-02-10 10:53:46 -08:00
Girish Ramakrishnan
6aa034ea41
platform: Only re-create docker network on version change
2022-02-10 09:32:22 -08:00
Girish Ramakrishnan
ca83deb761
Docker IPv6 support
...
Docker's initial IPv6 support is based on allocating public IPv6 to containers.
This approach has many issues:
* The server may not get a block of IPv6 assigned to it
* It's complicated to allocate a block of IPv6 to cloudron server on home setups
* It's unclear how dynamic IPv6 is. If it's dynamic, then should containers be recreated?
* DNS setup is complicated
* Not a issue for Cloudron itself, but with -P, it just exposed the full container into the world
Given these issues, IPv6 NAT is being considered. Even though NAT is not a security mechanism as such,
it does offer benefits that we care about:
* We can allocate some private IPv6 to containers
* Have docker NAT66 the exposed ports
* Works similar to IPv4
Currently, the IPv6 ports are always mapped and exposed. The "Enable IPv6" config option is only whether
to automate AAAA records or not. This way, user can enable it and 'sync' dns and we don't need to
re-create containers etc. There is no inherent benefit is not exposing IPv6 at all everywhere unless we find
it unstable.
Fixes #264
2022-02-09 23:54:53 -08:00
Girish Ramakrishnan
ff664486ff
do not start if platform.start does not work
2022-02-09 23:15:37 -08:00
Girish Ramakrishnan
c5f9c80f89
move comment to unbound.conf
2022-02-09 23:15:37 -08:00
Girish Ramakrishnan
852eebac4d
move cloudron network creation to platform code
...
this gives us more control on re-creating the network with different
arguments/options when needed.
2022-02-09 23:15:37 -08:00
Girish Ramakrishnan
f0f9ade972
sftp: listen on ipv6
2022-02-09 23:15:37 -08:00
Girish Ramakrishnan
f3ba1a9702
unbound: always disable ip6 during install
...
this was br0ken anway because "-s" is always false here. this is because
/proc/net/if_inet6 which has 0 size (but has contents!).
2022-02-09 23:15:37 -08:00
Girish Ramakrishnan
c2f2a70d7f
vultr has ufw enabled by default
2022-02-09 23:15:37 -08:00
Girish Ramakrishnan
f18d108467
nginx: add listen note
2022-02-09 23:15:37 -08:00
Girish Ramakrishnan
566def2b64
Disable IPv6 temporary address
2022-02-09 12:17:42 -08:00
Girish Ramakrishnan
c9e3da22ab
Revert "Disable userland proxy in new installations"
...
This reverts commit 430f5e939b .
Too early, apparently there is a bunch of issues and this is why
it's not disabled upstream - https://github.com/moby/moby/issues/14856
2022-02-09 09:45:04 -08:00
Girish Ramakrishnan
430f5e939b
Disable userland proxy in new installations
...
https://github.com/moby/moby/issues/8356
The initial motivation for userland proxy is to enable localhost
connections since the linux kernel did not allow loopback connections
to be routed.
With hairpin NAT support (https://github.com/moby/moby/pull/6810 ), this
seems to be solved.
2022-02-08 11:51:37 -08:00
Girish Ramakrishnan
7bfa237d26
Update docker to 20.10.12
2022-02-08 10:57:24 -08:00
Girish Ramakrishnan
85964676fa
Fix location conflict error message
2022-02-07 16:09:43 -08:00
Girish Ramakrishnan
68c2f6e2bd
Fix users test
2022-02-07 14:22:34 -08:00
Girish Ramakrishnan
75c0caaa3d
rename subdomains table to locations
2022-02-07 14:04:11 -08:00
Girish Ramakrishnan
46b497d87e
rename SUBDOMAIN_ to LOCATION_
...
location is { subdomain, domain } pair
2022-02-07 13:48:08 -08:00
Girish Ramakrishnan
964c1a5f5a
remove field from errors
...
we have standardized on indexOf in error.message by now
2022-02-07 13:44:29 -08:00
Johannes Zellner
d5481342ed
Add ability to filter users by state
2022-02-07 17:18:13 +01:00
Johannes Zellner
e3a0a9e5dc
Hack to allow SOGo logins for more than 1k mailboxes
2022-02-07 16:22:05 +01:00
Girish Ramakrishnan
23b3070c52
add percent info when switching dashboard
2022-02-06 11:21:32 -08:00
Girish Ramakrishnan
5048f455a3
Misplaced brackets
2022-02-06 10:58:49 -08:00
Girish Ramakrishnan
e27bad4bdd
Fix incorrect brackets
2022-02-06 10:22:04 -08:00
Johannes Zellner
4273c56b44
Add some changes
2022-02-05 21:09:14 +01:00
Girish Ramakrishnan
0af9069f23
make linode async
2022-02-04 16:01:41 -08:00
Girish Ramakrishnan
e1db45ef81
remove callback asserts
2022-02-04 15:47:38 -08:00
Girish Ramakrishnan
59b2bf72f7
make gcdns async
2022-02-04 15:46:17 -08:00
Girish Ramakrishnan
8802b3bb14
make namecheap async
2022-02-04 15:34:02 -08:00
Girish Ramakrishnan
ee0cbb0e42
make route53 async
2022-02-04 15:20:49 -08:00
Girish Ramakrishnan
5d415d4d7d
make cloudflare, gandi, manual, noop, wildcard, netcup, godaddy, namecom async
2022-02-04 14:36:30 -08:00
Girish Ramakrishnan
3b3b510343
Check if we get IPv6 when enabling
2022-02-04 11:15:53 -08:00
Girish Ramakrishnan
5c56cdfbc7
Revert "tld.isValid is deprecated"
...
This reverts commit bd4097098d .
the published library does not have the function :/
2022-02-04 10:49:19 -08:00
Girish Ramakrishnan
7601b4919a
make upsert remove the additional records
2022-02-04 10:22:22 -08:00
Girish Ramakrishnan
856b23d940
asyncify the vultr and DO backend
2022-02-04 10:15:35 -08:00
Girish Ramakrishnan
bd4097098d
tld.isValid is deprecated
2022-02-04 10:09:24 -08:00
Johannes Zellner
1441c59589
Remove left over assert
2022-02-04 17:35:44 +01:00
Girish Ramakrishnan
0373fb70d5
make waitForDns async
...
cloudflare is partly broken
2022-02-03 17:35:45 -08:00
Girish Ramakrishnan
da5b5aadbc
typo in debug
2022-02-02 15:07:50 -08:00
Girish Ramakrishnan
b75afaf5d5
clone: secondary domains are required
2022-02-01 23:36:41 -08:00
Girish Ramakrishnan
26bfa32c7b
Fix display of task error
2022-02-01 21:47:49 -08:00
Girish Ramakrishnan
67fe17d20c
Fix crash with alias domains
2022-02-01 21:28:43 -08:00
Girish Ramakrishnan
150f89ae43
proxyauth: on invalid token, redirect user
...
https://forum.cloudron.io/topic/6425/403-in-proxyauth-apps-after-server-migration
2022-02-01 17:58:05 -08:00
Girish Ramakrishnan
944d364e1a
turn: secret is a string
2022-02-01 17:36:51 -08:00
Girish Ramakrishnan
aeef815bf7
proxyAuth: persist the secret token
2022-02-01 17:35:21 -08:00
Girish Ramakrishnan
46144ae07a
lint
2022-02-01 17:35:21 -08:00
Girish Ramakrishnan
8f08ed1aed
Fix blobs schema
2022-02-01 17:29:25 -08:00
Girish Ramakrishnan
73f637be26
Add 2 more changes
2022-02-01 12:09:22 -08:00
Girish Ramakrishnan
37c8ca7617
mail: use port25check.cloudron.io to check outbound port 25 connectivity
2022-01-31 16:55:56 -08:00
Girish Ramakrishnan
c4bcbb8074
mail: smtp.live.com is not reachable anymore
2022-01-31 11:20:21 -08:00
Girish Ramakrishnan
19ddff058e
reverseproxy: fix crash because of missing app property
2022-01-29 16:53:26 -08:00
Girish Ramakrishnan
5382e3d832
remove nginx config of stopped apps
...
when the cert of a stopped app gets auto-cleaned up, nginx does not
start anymore since the config references the cert.
there are two possible fixes:
* do not cleanup cert of stopped apps
* remove the nginx config of stopped apps
this implements the second approach
2022-01-28 10:23:56 -08:00
Girish Ramakrishnan
ee3d1b3697
remove unused var
2022-01-27 09:16:46 -08:00
Girish Ramakrishnan
a786fad3ee
mountPoint is only set for 'mountpoint' (unmanaged)
...
When restoring, mountPoint field is expected for managed mount points
2022-01-26 13:37:16 -08:00
Girish Ramakrishnan
8b9d821905
isMountProvider -> isManagedProvider
2022-01-26 12:40:28 -08:00
Girish Ramakrishnan
04b7c14fd7
restore: fix crash when using fs/mountpoint
2022-01-26 12:17:46 -08:00
Girish Ramakrishnan
5517d09e45
cloudron-setup: fix curl output capture
...
not sure why the old method does not work. also move the cache file
2022-01-26 10:22:17 -08:00
Johannes Zellner
50adac3d99
Ensure volume mountpoints are happening before containers start up
2022-01-26 16:33:35 +01:00
Johannes Zellner
8f8a59bd87
Unbound does no longer depend on docker
2022-01-26 16:33:19 +01:00
Johannes Zellner
8e15f27080
Make unbound listen also on future devices
...
The local network for docker containers might not be up yet
https://unbound.docs.nlnetlabs.nl/en/latest/manpages/unbound.conf.html#term-ip-freebind-yes-or-no
2022-01-26 16:32:48 +01:00
Girish Ramakrishnan
e7977525a0
better error message
2022-01-25 16:41:29 -08:00
Girish Ramakrishnan
be9830d0d4
postgresql: enable postgis
2022-01-21 23:18:40 -08:00
Girish Ramakrishnan
8958b154e9
ldap: do not list inactive users
2022-01-21 21:07:33 -08:00
Girish Ramakrishnan
d21d13afb0
Add to changes
2022-01-21 17:31:26 -08:00
Girish Ramakrishnan
43759061a4
set secondaryDomains environment variables
...
part of #809
2022-01-21 11:35:01 -08:00
Johannes Zellner
a3efa8db54
Use semicolon instead of comma
2022-01-21 19:42:07 +01:00
Girish Ramakrishnan
f017e297f7
secondaryDomains are always required
...
they can still become empty after an update but install and change_location
requires them
part of #809
2022-01-21 10:03:30 -08:00
Girish Ramakrishnan
e8577d4d85
more location renaming
2022-01-16 18:56:44 -08:00
Girish Ramakrishnan
e8d08968a1
rename location to subdomain
...
the primary subdomain was previously called 'location'. but the alias/secondary/redirect
subdomain is called 'subdomain'. this makes it all consistent.
location terminology is now used for { subdomain, domain } pair
2022-01-16 12:48:29 -08:00
Girish Ramakrishnan
1e2f01cc69
reverseProxy: refactor filename logic
2022-01-16 12:22:29 -08:00
Girish Ramakrishnan
b34f66b115
add secondary domains
...
note that for updates to work, we keep the secondary domain optional,
even though they are really not.
part of #809
2022-01-16 12:10:48 -08:00
Girish Ramakrishnan
d18977ccad
reverseProxy: single writeAppNginxConfig()
...
this prepares for secondary domains
2022-01-16 11:29:21 -08:00
Girish Ramakrishnan
89c3847fb0
reverseProxy: refactor
2022-01-16 10:28:49 -08:00
Girish Ramakrishnan
aeeeaae62a
pass domain object to reduce one query
2022-01-16 10:16:14 -08:00
Girish Ramakrishnan
1e98a2affb
change argument order to match others
2022-01-16 09:45:59 -08:00
Girish Ramakrishnan
3da19d5fa6
Use constants
2022-01-14 22:57:44 -08:00
Girish Ramakrishnan
d7d46a5a81
rename alternateDomains to redirectDomains
2022-01-14 22:32:34 -08:00
Girish Ramakrishnan
d4369851bf
ldap: add organizationalperson and top objectclasses
...
these are used by firefly-iii ldap atleast
2022-01-14 14:31:33 -08:00
Girish Ramakrishnan
97e439f8a3
more profileConfig rename
2022-01-13 16:49:06 -08:00
Girish Ramakrishnan
e9945d8010
Update cloudron-syslog
2022-01-13 16:29:50 -08:00
Girish Ramakrishnan
d35f948157
rename directory config to profile config
2022-01-13 14:39:49 -08:00
Girish Ramakrishnan
09d3d258b6
do not retry forever if dpkg install fails
...
https://forum.cloudron.io/topic/6329/cloudron-update-failing
2022-01-13 11:04:45 -08:00
Girish Ramakrishnan
4513b6de70
add a way for admins to set username when profiles are locked
2022-01-12 16:21:00 -08:00
Girish Ramakrishnan
ded5db20e6
mail: use same validation logic as mailbox name for aliases as well
2022-01-10 22:06:37 -08:00
Johannes Zellner
6cf7ae4788
Add changes
2022-01-10 16:45:44 +01:00
Johannes Zellner
0508a04bab
Support cifs seal option
...
https://manpages.debian.org/testing/cifs-utils/mount.cifs.8.en.html#seal
2022-01-10 14:28:09 +01:00
Girish Ramakrishnan
e7983f03d8
Update packages
2022-01-09 16:39:52 -08:00
Girish Ramakrishnan
eada292ef3
email addon: add additional env vars
2022-01-09 16:03:35 -08:00
Girish Ramakrishnan
3a19be5a2e
filemanager: fix file delete
2022-01-07 12:03:16 -08:00
Johannes Zellner
52385fcc9c
Rename exposed ldap to user directory
2022-01-07 14:06:13 +01:00
Johannes Zellner
cc998ba805
Implement full exposed ldap auth
2022-01-07 13:11:27 +01:00
Girish Ramakrishnan
37d641ec76
waitForDns: support AAAA
2022-01-06 22:08:28 -08:00
Girish Ramakrishnan
3fd45f8537
settings: add route to configure ipv6
...
part of #264
2022-01-06 21:42:03 -08:00
Girish Ramakrishnan
f4a21bdeb4
sysinfo: fixed provider now takes ipv6 optionally
...
part of #264
2022-01-06 21:39:28 -08:00
Girish Ramakrishnan
d65ac353fe
initial ipv6 support
...
this adds and waits for AAAA records based on setting. we have to wait
for both A and AAAA because we don't know if the user is accessing via
IPv4 or IPv6. For Let's Encrypt, IPv6 is preferred (but not sure if it
retries if IPv6 is unreachable).
part of #264
2022-01-06 17:22:45 -08:00
Girish Ramakrishnan
7d7539f931
replace the forEach
2022-01-06 17:22:45 -08:00
Girish Ramakrishnan
ac19921ca1
dns: refactor register/unregisterLocation logic
...
this prepares it for ipv6 support
2022-01-06 16:34:33 -08:00
Girish Ramakrishnan
0654d549db
sysinfo: return the ipv4 and ipv6 address
2022-01-06 16:21:30 -08:00
Girish Ramakrishnan
91b1265833
sysinfo: ensure we return 5952 ipv6 format
2022-01-06 12:33:56 -08:00
Girish Ramakrishnan
2bc5c3cb6e
Fixes to getServerIPv6()
2022-01-06 12:22:16 -08:00
Girish Ramakrishnan
cc61ee00be
settings: add ipv6
2022-01-06 11:38:41 -08:00
Girish Ramakrishnan
c74556fa3b
promise-retry: add a retry function to abort early
2022-01-06 11:28:30 -08:00
Girish Ramakrishnan
bf51bc25e9
dnsConfig -> domainConfig
...
this prepares for the incoming settings.getDnsConfig()
2022-01-05 22:56:10 -08:00
Girish Ramakrishnan
bbf1a5af3d
sysinfo: add interface to get IPv6 address
2022-01-05 18:08:15 -08:00
Girish Ramakrishnan
235d18cbb1
add note on the promiseRetry usage
2022-01-05 12:27:03 -08:00
Girish Ramakrishnan
32668b04c6
mail: fix name validation
...
https://forum.cloudron.io/topic/6229/mailbox-name-can-only-contain-alphanumerals-and-dot/10
2022-01-05 09:55:10 -08:00
Girish Ramakrishnan
9ccf46dc8b
Bump year
2022-01-05 09:18:48 -08:00
Girish Ramakrishnan
d049aa1b57
2022 now
2022-01-05 09:17:13 -08:00
Johannes Zellner
44a149d1d9
Add exposed ldap secret for bind auth
2022-01-05 14:35:48 +01:00
Johannes Zellner
38dd7e7414
Update lockfile
2022-01-05 14:33:07 +01:00
Johannes Zellner
fb5d726d42
Ensure tests have sudo access to setldapallowlist
2022-01-05 14:32:50 +01:00
Girish Ramakrishnan
531a6fe0dc
Use ipv4.api.cloudron.io endpoint for IPv4 detection
2022-01-04 22:14:53 -08:00
Girish Ramakrishnan
15d0dd93f4
mail: allow underscore in mail address
2022-01-04 14:02:58 -08:00
Girish Ramakrishnan
d8314d335a
implement manifest.logPaths
2022-01-04 10:04:40 -08:00
Girish Ramakrishnan
b18626c75c
getLocalLogfilePaths -> getLogPaths
2022-01-04 09:14:13 -08:00
Johannes Zellner
a04abf25f4
We now use esversion 11
2022-01-04 14:40:33 +01:00
Girish Ramakrishnan
ebb6a246cb
Update cloudron-manifestformat
2022-01-03 18:42:01 -08:00
Girish Ramakrishnan
e672514ec7
update packages
...
also removes unused mime and mustache-express
2022-01-03 10:05:09 -08:00
Johannes Zellner
b531a10392
Invite links do not depend on resetToken expiration
2021-12-28 16:34:47 +01:00
Johannes Zellner
9a71360346
Only check for PermitRootLogin if we want to enable remote support
2021-12-26 17:51:05 +01:00
Girish Ramakrishnan
5e9a46d71e
filemanager: fix mounting of filesystem and mountpoint backends
2021-12-24 15:05:51 -08:00
Girish Ramakrishnan
66fd05ce47
sftp: add note
2021-12-23 22:35:28 -08:00
Johannes Zellner
7117c17777
Add exposed ldap tests
2021-12-23 21:31:48 +01:00
Johannes Zellner
9ad7123da4
Fix exposed ldap bind
...
the duplicate functions should probably share some code
2021-12-23 17:58:08 +01:00
Johannes Zellner
98fd78159e
Do not require app auth for exposed ldap
2021-12-23 10:23:54 +01:00
Girish Ramakrishnan
3d57b2b47c
docker: loop through the ip net addr output
...
all of a sudden, my linux box has the actual address in [1].
ip -f inet -j addr show wlp2s0
[{
"addr_info": [{}]
},{
"ifindex": 3,
"ifname": "wlp2s0",
"flags": ["BROADCAST","MULTICAST","UP","LOWER_UP"],
"mtu": 1500,
"qdisc": "mq",
"operstate": "UP",
"group": "default",
"txqlen": 1000,
"addr_info": [{
"family": "inet",
"local": "192.168.1.8",
"prefixlen": 24,
"broadcast": "192.168.1.255",
"scope": "global",
"dynamic": true,
"noprefixroute": true,
"label": "wlp2s0",
"valid_life_time": 78146,
"preferred_life_time": 78146
}]
},{
"addr_info": [{}]
},{
"addr_info": [{}]
}
]
2021-12-22 16:48:00 -08:00
Girish Ramakrishnan
2bc49682c4
mailproxy: use http
2021-12-21 12:30:28 -08:00
Girish Ramakrishnan
bb2d9fca9b
update manifest format for 'upstreamVersion' field
2021-12-21 11:24:04 -08:00
Girish Ramakrishnan
be8ab3578b
update mysql container
...
* remove 'request' module usage entirely
* http based service
2021-12-20 10:52:42 -08:00
Girish Ramakrishnan
43af0e1e3c
Update turn base image
2021-12-20 09:02:00 -08:00
Girish Ramakrishnan
43f33a34b8
switch mail container to http
2021-12-19 12:11:47 -08:00
Girish Ramakrishnan
7aded4aed7
switch status api to http as well
2021-12-17 13:39:06 -08:00
Girish Ramakrishnan
d37652d362
postgresql container update
...
* makes the service http based
* no more request module usage
2021-12-17 13:26:34 -08:00
Girish Ramakrishnan
9590a60c47
Update base image of some addons to 3.2.0
2021-12-17 09:18:22 -08:00
Girish Ramakrishnan
54bb7edf3b
asyncify importAppDatabase
2021-12-17 07:47:20 -08:00
Girish Ramakrishnan
34d11f7f6e
mongodb container update
...
* upgrades mongodb to 4.4
* makes the service http based
* no more request module usage
2021-12-16 22:49:38 -08:00
Girish Ramakrishnan
3a956857d2
update package.lock for newer node
2021-12-16 22:43:23 -08:00
Girish Ramakrishnan
08d41f4302
update redis base image
2021-12-16 22:26:43 -08:00
Girish Ramakrishnan
219fafc8e4
Update base image to 3.2.0 (mongodb 4.4)
2021-12-16 16:26:31 -08:00
Girish Ramakrishnan
53593a10a9
redis: fix issue with double headers
2021-12-16 14:06:52 -08:00
Girish Ramakrishnan
26dc63553e
update redis addon to use pipeline+http api
2021-12-15 17:54:50 -08:00
Girish Ramakrishnan
83fd3d9ab4
We now require node 16.13.1
2021-12-15 17:54:50 -08:00
Johannes Zellner
d69758e559
Only set ldap allowlist if file exists and is not empty
2021-12-15 19:23:22 +01:00
Johannes Zellner
d6fbe2a1bb
Use correct error object
2021-12-15 17:22:16 +01:00
Girish Ramakrishnan
a3280a0e30
Update node to 16.13.1
...
useful for using stream.promises
2021-12-14 20:49:25 -08:00
Girish Ramakrishnan
e7f94b6748
Update base image to 3.1.0
2021-12-14 20:47:41 -08:00
Girish Ramakrishnan
6492c9b71f
nginx: remove combined2 custom log format
...
collectd does not use this anymore (eb47476c83 )
This makes nginx work better with a variety of tools like Wazuh and ossec
https://forum.cloudron.io/topic/6077/nginx-logs-format/
https://forum.cloudron.io/topic/6161/implement-default-nginx-logging
2021-12-13 10:47:12 -08:00
Johannes Zellner
438bd36267
Fixup exposed ldap startup state
2021-12-10 18:06:23 +01:00
Johannes Zellner
1c7eeb6ac6
Handle exposed ldap allowlist
2021-12-10 17:04:30 +01:00
Johannes Zellner
86d642c8a3
Fixup ldap group tests
2021-12-09 17:23:14 +01:00
Johannes Zellner
d02d2dcb80
Expose ldap groups to apps
2021-12-09 15:07:30 +01:00
Girish Ramakrishnan
b5695c98af
mailserver: make restart wait for restart
2021-12-08 16:55:44 -08:00
Girish Ramakrishnan
fcdc53f7bd
add flag to enable/disable mailbox sharing
2021-12-08 11:05:13 -08:00
Girish Ramakrishnan
5d85fe2577
pass the attempt as argument
2021-12-08 10:19:16 -08:00
Girish Ramakrishnan
013f5d359d
pass debug to promise-retry
2021-12-07 11:18:26 -08:00
Girish Ramakrishnan
ae0e572593
promise-retry: debug retry errors
2021-12-07 11:14:24 -08:00
Girish Ramakrishnan
b4ed05c911
disable exim4
2021-12-07 09:42:25 -08:00
Girish Ramakrishnan
683ac9b16e
remove support for manifest version 1
...
this is long untested by now
2021-12-06 17:44:09 -08:00
Girish Ramakrishnan
2415e1ca4b
Prefix email addon variables with CLOUDRON_EMAIL instead of CLOUDRON_MAIL
...
otherwise, it's conflicting with the sendmail and recvmail addons
2021-12-06 17:39:29 -08:00
Girish Ramakrishnan
cefbe7064f
Fix crash when changing the location of app with disabled sendmail addon
2021-12-06 13:59:00 -08:00
Girish Ramakrishnan
a687b7da26
netcup: remove debugs flooding the logs
2021-12-06 13:37:14 -08:00
Girish Ramakrishnan
ea2b11e448
Fix tests
2021-12-03 18:33:49 -08:00
Girish Ramakrishnan
39807e6ba4
domain: split the config and wellknown routes
...
we want to add more stuff to the UI like the jitsi URL
2021-12-03 18:14:46 -08:00
Girish Ramakrishnan
5592dc8a42
schema: add cron to apps table
2021-12-03 13:02:25 -08:00
Girish Ramakrishnan
aab69772e6
mailbox: add app owner type
...
this is useful when we create mailboxes for the recvmail addon
2021-12-02 22:28:06 -08:00
Girish Ramakrishnan
a5a9fce1eb
mail: allow masquerading for mail manager
...
this is mostly for the UI, it's hard to hide just this
2021-12-02 14:56:37 -08:00
Girish Ramakrishnan
e5fecdaabf
Add mail manager role
...
part of #807
2021-12-02 09:24:09 -08:00
Johannes Zellner
412bb406c0
Do not attempt to start exposed ldap server again
2021-11-26 10:50:14 +01:00
Johannes Zellner
98b28db092
Store allowlist for exposed directory server
2021-11-26 10:43:50 +01:00
Johannes Zellner
63fe75ecd2
Reduce noisy externalldap debug()s
2021-11-26 09:55:59 +01:00
Johannes Zellner
c51a4514f4
start/stop exposed LDAP depending on settings
2021-11-26 09:50:21 +01:00
Girish Ramakrishnan
3dcbeb11b8
mail: use dashboardDomain and not mailDomain
...
also remove unused mail_domain
2021-11-25 15:04:30 -08:00
Girish Ramakrishnan
e5301fead5
exclude externalldap debugs by default
2021-11-25 14:49:59 -08:00
Johannes Zellner
4a467c4dce
Add crud for exposed ldap settings
2021-11-23 18:00:07 +01:00
Johannes Zellner
3a8aaf72ba
Expose LDAP via iptables
2021-11-23 12:37:03 +01:00
Johannes Zellner
735737b513
Initial attempt to expose the ldap server
2021-11-22 21:29:23 +01:00
Johannes Zellner
37f066f2b0
Fix user signup when profile is locked and add tests
2021-11-22 20:42:51 +01:00
Johannes Zellner
1a9cfd046a
Update invite route tests
2021-11-22 19:32:42 +01:00
Girish Ramakrishnan
31523af5e1
ami: fix instance id check
2021-11-17 19:05:26 -08:00
Girish Ramakrishnan
e71d932de0
eventlog: add Json suffix to json fields
2021-11-17 12:31:46 -08:00
Girish Ramakrishnan
7f45e1db06
send new login location to user email
2021-11-17 11:53:03 -08:00
Girish Ramakrishnan
2ab2255115
fix dhparam generation
...
it cannot be created in default config creation time since it is
already run pre-VM snapshot time
2021-11-17 11:48:06 -08:00
Girish Ramakrishnan
515b1db9d0
Fix tests
2021-11-17 11:35:44 -08:00
Girish Ramakrishnan
a7fe7b0aa3
boxerror: add acme error code
2021-11-17 10:54:26 -08:00
Girish Ramakrishnan
89389258d7
pass correct auditSource when raising notifications
...
this fixes the bug where automatic app update notification were not
raised.
2021-11-17 10:42:53 -08:00
Girish Ramakrishnan
1aacf65372
apps: pass the auditSource to addTask()
...
this is required for the notification logic to know what caused the
task (cron or manual, for example)
2021-11-17 10:38:02 -08:00
Girish Ramakrishnan
7ffcfc5206
auditSource: add PLATFORM
2021-11-17 10:33:28 -08:00
Girish Ramakrishnan
5ab2d9da8a
notifications: remove dead code
2021-11-17 10:26:47 -08:00
Girish Ramakrishnan
cd302a7621
add missing await
2021-11-17 09:38:01 -08:00
Girish Ramakrishnan
1c8e699a71
generate dhparams per server
...
this way we don't need to save/restore it from the database.
2021-11-16 23:03:16 -08:00
Girish Ramakrishnan
c4db0d746d
acme: if account key was revoked, generate new account key
...
the plan was to migrate only specific keys but this allows us the
flexibility to revoke keys after the release (since we have not
gotten response from DO about access to old 1-click images so far).
2021-11-16 22:57:40 -08:00
Girish Ramakrishnan
b7c5c99301
move turn secret generation
2021-11-16 22:37:42 -08:00
Girish Ramakrishnan
132c1872f4
sftp: move key generation to sftp code
2021-11-16 21:52:39 -08:00
Girish Ramakrishnan
0f04933dbf
backups: fix issue where mail backups were not cleaned up
2021-11-16 19:52:51 -08:00
Girish Ramakrishnan
6d864d3621
ensure we have atleast 1GB before making an update
2021-11-16 18:20:40 -08:00
Girish Ramakrishnan
b6ee1fb662
mail: add non-tls ports for recvmail addon
2021-11-16 17:21:34 -08:00
Girish Ramakrishnan
649cd896fc
throw error and not return
2021-11-16 14:46:58 -08:00
Girish Ramakrishnan
39be267805
restore: secrets must be copied over after downloading box backup
2021-11-16 11:14:41 -08:00
Girish Ramakrishnan
f6356b2dff
speed up dhparam creation
2021-11-16 09:53:43 -08:00
Johannes Zellner
48574ce350
Add missing await
2021-11-16 18:48:13 +01:00
Girish Ramakrishnan
40a3145d92
Add more bad account keys and fix fresh cloudron migration
2021-11-16 00:56:59 -08:00
Girish Ramakrishnan
f42430b7c4
regenerate acme key of DO 1-click image
...
https://community.letsencrypt.org/t/receiving-expiration-emails-for-dozens-of-domains/165441
2021-11-16 00:25:59 -08:00
Girish Ramakrishnan
178d93033f
7.0.4 changes
2021-11-15 23:51:06 -08:00
Girish Ramakrishnan
01a1803625
provision: delay initialization of secrets until provision time
...
when we create the DO 1-click image, the key also gets snapshotted.
https://community.letsencrypt.org/t/receiving-expiration-emails-for-dozens-of-domains/165441
2021-11-15 23:33:54 -08:00
Girish Ramakrishnan
42eef42cf3
Add to changes
2021-11-15 13:58:59 -08:00
Girish Ramakrishnan
9c096b18e1
demo: limit to 20 apps
2021-11-15 13:55:29 -08:00
Girish Ramakrishnan
aa3ee2e180
cloudron-support: add option to reset account
...
new cli option --reset-appstore-account
2021-11-15 10:06:18 -08:00
Girish Ramakrishnan
fdefc780b4
docker: hardcode the bridge gateway IP
...
on some environments like ESXi, the gateway gets the dynamic IP 172.18.0.2.
we have hardcoded 172.18.0.1 in many places in the code
https://forum.cloudron.io/topic/5987/install-cloudron-7-0-3-on-ubuntu-20-04-3-esxi
2021-11-12 09:04:03 -08:00
Johannes Zellner
3826ae64c6
Ensure the main login route is rate-limited
2021-11-12 11:14:21 +01:00
Johannes Zellner
dcdafda124
Remove deprecated developer/login route
2021-11-12 11:12:15 +01:00
Girish Ramakrishnan
fc2cc25861
Update manifest-format (httpPaths)
2021-11-09 21:56:52 -08:00
Girish Ramakrishnan
68db4524f1
remove unused httpPaths from manifest
2021-11-09 21:50:33 -08:00
Girish Ramakrishnan
48b75accdd
7.0.4 changes
2021-11-09 09:31:58 -08:00
Johannes Zellner
0313a60f44
Fix newline stripping when passing the tmp file as path
...
This fixes the issue where the input data gets too large for the
commandline argument buffer
2021-11-09 16:05:36 +01:00
Girish Ramakrishnan
9897b5d18a
appstore: fix crash if account already registered
2021-11-08 10:45:57 -08:00
Girish Ramakrishnan
e4cc431d35
Do not nuke all the logrotate configs on update
...
this was added many releases ago to migrate to new logrotate configs.
looks like I forgot to remove this.
https://forum.cloudron.io/topic/4381/safe-to-truncate-home-yellowtent-platformdata-logs-when-large-disk-consumer
2021-11-04 09:41:33 -07:00
Girish Ramakrishnan
535a755e74
7.1.0 changes
2021-11-03 15:08:48 -07:00
Johannes Zellner
2ae77a5ab7
Provide dashboardOrigin to proxy auth for stylesheet sourcing
2021-11-03 22:12:30 +01:00
Johannes Zellner
e36d7665fa
The profile based password reset does not return a resetLink
2021-11-03 22:03:08 +01:00
Girish Ramakrishnan
786b627bad
add 7.0.3 changes
2021-11-03 12:21:12 -07:00
Girish Ramakrishnan
c7ddbea8ed
restore: download mail backup in restore phase
...
if we download it in the platform start phase, there is no way to
give feedback to the user. so it's best to show the restore UI and
not redirect to the dashboard.
2021-11-03 12:10:40 -07:00
Girish Ramakrishnan
af2a8ba07f
add retry to platform.start instead
...
this is because it holds a lock and cannot be re-tried
See also 0c0aeeae4c which tried to
make it for all startup tasks
2021-11-02 23:35:53 -07:00
Girish Ramakrishnan
4ffe03553a
database: sqlMessage can be undefined for connection errors
2021-11-02 23:23:59 -07:00
Girish Ramakrishnan
f505fdd5cb
remove the space
2021-11-02 18:07:45 -07:00
Girish Ramakrishnan
ce4f5c0ad6
backups: print the app index/total
2021-11-02 18:07:19 -07:00
Girish Ramakrishnan
de2c596394
backups: typo
...
this resulted in incomplete backups when there is an app with backups disabled
2021-11-02 18:00:04 -07:00
Girish Ramakrishnan
6cb041bcb2
Print readable sizes in the log
2021-11-02 17:51:27 -07:00
Girish Ramakrishnan
0c0aeeae4c
retry startup tasks on database error
...
https://forum.cloudron.io/topic/5909/cloudron-7-0-1-gitlab-stuck-after-update
2021-11-02 14:05:51 -07:00
Girish Ramakrishnan
8bfb3d6b6d
mail: save message-id in eventlog
2021-11-02 01:42:07 -07:00
Girish Ramakrishnan
f803754e08
mail: fix eventlog search
2021-11-02 01:00:28 -07:00
Girish Ramakrishnan
09cfce79fb
mail: fix direction field in eventlog of deferred mails
2021-11-02 00:48:01 -07:00
Girish Ramakrishnan
6479e333de
pop3: fix crash when authenticating non-existent mailbox
2021-11-01 19:54:39 -07:00
Girish Ramakrishnan
28d1d5e960
ldap: make mailbox app passwords work with sogo
2021-11-01 19:17:30 -07:00
Girish Ramakrishnan
15d8f4e89c
ldap: remove legacy sogo search route
2021-11-01 17:08:23 -07:00
Girish Ramakrishnan
8fdbd7bd5f
7.0.3 changes
2021-11-01 16:17:35 -07:00
Girish Ramakrishnan
7b5ed0b2a1
support: set filePath when user is root
2021-11-01 12:20:47 -07:00
Girish Ramakrishnan
b69c5f62c0
Add to changes
2021-10-28 10:27:32 -07:00
Johannes Zellner
63f6f065ba
Add and fixup invite link related tests
2021-10-28 11:18:31 +02:00
Johannes Zellner
92f0f56fae
do not strictly require fallbackEmail on user creation but provide a fallback
2021-10-28 10:29:02 +02:00
Johannes Zellner
cb8aa15e62
Do not allow setting ghost password for user without username
2021-10-27 23:36:44 +02:00
Johannes Zellner
4356d673bc
Fix wrong assert and minor typos
2021-10-27 22:31:54 +02:00
Girish Ramakrishnan
5ece159fba
sftp: fix crash when creating directory
2021-10-27 13:17:23 -07:00
Johannes Zellner
b59776bf9b
fail getting invite link or sending invite if invate was already used
2021-10-27 21:25:43 +02:00
Johannes Zellner
475795a107
Invite is now also separate
2021-10-27 19:58:06 +02:00
Johannes Zellner
9a80049d36
Add two distinct password reset routes
2021-10-27 19:12:18 +02:00
Johannes Zellner
daf212468f
fallbackEmail is now independent from email
2021-10-26 22:50:02 +02:00
Girish Ramakrishnan
2f510c2625
capitalize sql keywords
2021-10-26 11:19:30 -07:00
Girish Ramakrishnan
7a977fa76b
7.0.2 changes
2021-10-26 11:17:57 -07:00
Girish Ramakrishnan
f5e025c213
mail: mailbox listing does not return pop3 status
2021-10-26 11:11:07 -07:00
Girish Ramakrishnan
971b73f853
move the bind inside
2021-10-26 11:03:54 -07:00
Girish Ramakrishnan
0103b21724
bump default backup memory limit to 800
2021-10-26 11:03:54 -07:00
Johannes Zellner
cef5c1e78c
Use normal bind()
2021-10-26 18:47:51 +02:00
Johannes Zellner
50ff6b99e0
More external ldap fixes after the test tests the correct thing
2021-10-26 18:04:25 +02:00
Johannes Zellner
26dbd50cf2
Ensure we don't crash if mount status does not include some strings
2021-10-26 14:54:56 +02:00
Johannes Zellner
84884b969e
Fix external ldap bind
...
See "Losing context" https://masteringjs.io/tutorials/node/promisify
2021-10-26 11:55:58 +02:00
Girish Ramakrishnan
62174c5328
proxyauth: only log failed requests by default
2021-10-25 09:41:12 -07:00
Girish Ramakrishnan
716951a3f1
dkim: ignore any spurious errors
...
in one of our cloudrons, we had a random dangling symlink in that directory
2021-10-22 17:26:12 -07:00
Girish Ramakrishnan
fbf6fe22af
7.0.1 changes
2021-10-22 16:39:42 -07:00
Girish Ramakrishnan
b18c4d3426
migration: wellKnown is {} or NULL
2021-10-22 16:29:32 -07:00
Girish Ramakrishnan
26a993abe7
Ubuntu 16 is unsupported
2021-10-22 16:09:43 -07:00
Girish Ramakrishnan
010024dfd7
apps: make downloadFile async
2021-10-21 15:25:15 -07:00
Girish Ramakrishnan
2e3070a5c6
apps: make uploadFile async
2021-10-21 15:15:39 -07:00
Girish Ramakrishnan
fbaee89c7b
apps: clear timeout for upload and download routes
2021-10-21 10:44:17 -07:00
Girish Ramakrishnan
e0edfbf621
services: better status for sftp and turn
2021-10-19 16:02:18 -07:00
Girish Ramakrishnan
8cda287838
fix crash when there are multiple quick oom events
2021-10-19 12:25:25 -07:00
Johannes Zellner
80f83ef195
Next release is 7.0.0
2021-10-18 19:00:31 +02:00
Girish Ramakrishnan
d164a428a8
add to features
2021-10-18 09:05:59 -07:00
Girish Ramakrishnan
22e4d956fb
mail: add option to force from address for relays
2021-10-16 22:30:28 -07:00
Girish Ramakrishnan
273a833935
mail: chmod the key file, so we can make the config dir readonly
2021-10-16 16:36:53 -07:00
Girish Ramakrishnan
da21e1ffd1
Fix typo in dkim path
2021-10-16 16:28:17 -07:00
Girish Ramakrishnan
4f9975de1b
mail: set loglevel in recovery mode
2021-10-16 16:07:35 -07:00
Girish Ramakrishnan
00d6dfbacc
Bump the year in license
2021-10-16 15:03:26 -07:00
Girish Ramakrishnan
3988d0d05f
mail: add duplication detection for lists
2021-10-15 21:52:16 -07:00
Girish Ramakrishnan
e9edfbc1e6
req.body -> data
2021-10-15 11:20:09 -07:00
Johannes Zellner
c81f40dd8c
Ensure mail data dir is still created
2021-10-15 15:02:54 +02:00
Girish Ramakrishnan
c775ec9b9c
mail: auto-expunge junk folder (60 days)
2021-10-14 11:26:57 -07:00
Girish Ramakrishnan
98c6d99cad
mail: enable vacation-seconds sieve extension
2021-10-14 09:31:57 -07:00
Girish Ramakrishnan
13197a47a9
mail: allow configuring dnsbl zones
2021-10-13 14:53:20 -07:00
Girish Ramakrishnan
419b58b300
mail: implement event log spam filter
2021-10-12 18:42:38 -07:00
Girish Ramakrishnan
272c77e49d
mail: better eventlog schema
2021-10-12 17:11:55 -07:00
Girish Ramakrishnan
afdac02ab8
mail: fix the folder structure
2021-10-12 12:30:19 -07:00
Girish Ramakrishnan
405eae4495
Fix installation detection
2021-10-12 10:26:58 -07:00
Johannes Zellner
26e4f05adb
Send subscription status for all users
2021-10-12 18:50:40 +02:00
Girish Ramakrishnan
98949d6360
dkim: typo when importing private key
2021-10-12 09:38:33 -07:00
Johannes Zellner
8c9c19d07d
Fixup appstore route related tests
2021-10-12 14:55:30 +02:00
Girish Ramakrishnan
004a264993
mail: dkim key update
2021-10-11 22:56:34 -07:00
Girish Ramakrishnan
dc8ec9dcd8
mail: move dkim keys into the database
2021-10-11 20:30:42 -07:00
Girish Ramakrishnan
a63e04359c
Fix tests
2021-10-11 20:29:50 -07:00
Girish Ramakrishnan
4fda00e56c
mail: update locations
2021-10-11 18:14:22 -07:00
Girish Ramakrishnan
ca9b4ba230
add to changes
2021-10-11 15:44:34 -07:00
Girish Ramakrishnan
b9a11f9c31
filemanager: fix crash in extract
2021-10-11 15:34:11 -07:00
Girish Ramakrishnan
ca252e80d6
Fix usage of await
2021-10-11 10:29:46 -07:00
Girish Ramakrishnan
8e8d2e0182
Update docker to 20.10.7
2021-10-11 10:24:08 -07:00
Johannes Zellner
d1a7172895
Add remount route for mountlike backup storages
2021-10-11 18:12:11 +02:00
Johannes Zellner
9eed3af8b6
add volume remount
2021-10-11 16:22:56 +02:00
Girish Ramakrishnan
f01764617c
mail: fix rebuild
...
also fixes dangerous code that downloads mail backup if infra version is 'none'
2021-10-09 08:15:10 -07:00
Girish Ramakrishnan
54bcfe92b9
recvmail: inject POP3 port
2021-10-08 15:24:38 -07:00
Girish Ramakrishnan
000db4e33d
mail: add flag to enable/disable pop3 access per mailbox
2021-10-08 10:43:17 -07:00
Girish Ramakrishnan
9414041ba8
ldap: lookup by addon id and not service id
2021-10-08 09:59:44 -07:00
Girish Ramakrishnan
f17e3b3a62
mail: export pop3 port
2021-10-07 22:06:26 -07:00
Girish Ramakrishnan
92c712ea75
ldap: use service ids when auth'ing email
2021-10-07 21:32:22 -07:00
Johannes Zellner
e13c5c8e1a
Do not duplicate sshd_config file path
2021-10-07 17:17:45 +02:00
Johannes Zellner
544825f344
Ensure root login is enabled for enabling remote support
2021-10-07 17:04:20 +02:00
Girish Ramakrishnan
b642bc98a5
ensure fallback certificates of all domains
...
https://forum.cloudron.io/topic/5683/data-argument-must-be-of-type-received-null-error-during-restore-process
2021-10-06 13:34:06 -07:00
Girish Ramakrishnan
da2f561257
add note in functions used in migrations
2021-10-06 13:09:53 -07:00
Girish Ramakrishnan
4a9d074b50
Use for..of instead of forEach for clarity
2021-10-06 13:01:12 -07:00
Girish Ramakrishnan
93636a7f3a
apps: fix log streaming
2021-10-04 10:08:11 -07:00
Girish Ramakrishnan
671e0d1e6f
recvmail: check for active mailbox
2021-10-03 23:59:06 -07:00
Girish Ramakrishnan
1743368069
app: clear mailbox fields when sendmail is removed with an update
2021-10-03 23:38:12 -07:00
Girish Ramakrishnan
a3fc5f226a
make recvmail work
...
unlike sendmail, recvmail is always optional. this is the case because
the cloudron may not receive emails at all, so app always has to be
prepared for it.
part of #804
2021-10-02 03:11:47 -07:00
Girish Ramakrishnan
aed84a6ac9
Fix postgresql import issue with long table names
2021-10-01 16:24:38 -07:00
Girish Ramakrishnan
e31cf4cbfe
do not wait for container in recovery mode
2021-10-01 14:38:47 -07:00
Girish Ramakrishnan
6a3cec3de8
services: add recoveryMode
2021-10-01 14:01:30 -07:00
Girish Ramakrishnan
54731392ff
cannot disable sendmail if not optional
2021-10-01 11:20:13 -07:00
Girish Ramakrishnan
54668c92ba
remove asserts when sendmail disabled
2021-10-01 11:16:49 -07:00
Girish Ramakrishnan
7a2b00cfa9
hasMailAddon is really just sendmail
2021-10-01 09:37:42 -07:00
Girish Ramakrishnan
1483dff018
make getLogs async
2021-10-01 09:23:25 -07:00
Girish Ramakrishnan
b34d642490
get rid of debugApp
2021-10-01 09:20:19 -07:00
Johannes Zellner
885ea259d7
Set inviteToken on user creation
2021-10-01 14:52:58 +02:00
Johannes Zellner
4ce21f643e
send invite status via user rest api
2021-10-01 14:32:37 +02:00
Johannes Zellner
cb31e5ae8b
Separate invite and password reset token
2021-10-01 12:27:22 +02:00
Johannes Zellner
c7b668b3a4
remove unused require
2021-10-01 11:55:35 +02:00
Girish Ramakrishnan
092b55d6ca
apps: add backup start and finish events
...
these can then be used by the UI to show errors
fixes #797
2021-09-30 11:44:11 -07:00
Girish Ramakrishnan
b0bdfbd870
apps: onFinished handler not called across restarts
...
if box code restarts in the middle of a apptask, the onFinished handlers
are not called for data migration and update. rework the code to hook
the onFinished handlers when the task completes and not where the task
is started.
2021-09-30 10:54:47 -07:00
Girish Ramakrishnan
445c83c8b9
make auditsource a class
...
this allows us to use AuditSource for the class and auditSource for
the instances!
2021-09-30 10:13:36 -07:00
Girish Ramakrishnan
339fdfbea1
schema: add missing args to tasks table
2021-09-30 09:01:43 -07:00
Johannes Zellner
6bcef05e2a
Fixup user route tests
2021-09-30 13:05:18 +02:00
Girish Ramakrishnan
679b813a7a
give hint download has started
2021-09-29 23:36:54 -07:00
Girish Ramakrishnan
653496f96f
import: validate and create transient mount point
...
fixes #788
2021-09-29 23:30:16 -07:00
Girish Ramakrishnan
9729d4adb8
backups: move hardcoded mountPoint to backend
2021-09-29 22:40:58 -07:00
Girish Ramakrishnan
ae4a091261
pass debug for safe call
2021-09-29 20:15:54 -07:00
Girish Ramakrishnan
d43209e655
autoconfig: add pop3 as protocol
2021-09-29 19:35:45 -07:00
Girish Ramakrishnan
b57d50d38c
remove HOMEPATH and USERPROFILE fallbacks
...
probably from a time when I had a mac
2021-09-29 19:00:59 -07:00
Girish Ramakrishnan
73315a42fe
setup: fix journalctl configuration
...
/var/log/journal/*/system.journal does not exist on some systems
https://forum.cloudron.io/topic/4068/installation-failed-on-20-04-server
https://forum.cloudron.io/topic/5731/time4vps-installation-error
2021-09-28 19:21:16 -07:00
Girish Ramakrishnan
3bcd32c56d
restore: mount all volumes before restoring apps
...
fixes #786
2021-09-28 11:51:01 -07:00
Girish Ramakrishnan
d79206f978
mounts: volume -> mounts
...
this code is shared by volume code and backup code
2021-09-28 11:44:09 -07:00
Girish Ramakrishnan
13644624df
add crontab tests
2021-09-28 11:08:10 -07:00
Girish Ramakrishnan
74ce00d94d
cron -> crontab
2021-09-27 21:41:41 -07:00
Girish Ramakrishnan
b86d5ea0ea
apps: add crontab
...
crontab is a text field, so we can have comments
part of #793
2021-09-27 21:33:00 -07:00
Girish Ramakrishnan
04ff8dab1b
Fix progress message
2021-09-27 11:17:10 -07:00
Girish Ramakrishnan
fac48aa977
upcloud: add object storage integration
2021-09-27 10:05:38 -07:00
Johannes Zellner
c568c142c0
Remove unused require
2021-09-27 13:07:11 +02:00
Girish Ramakrishnan
d390495608
provision: download mail backup during restore
2021-09-26 22:55:23 -07:00
Girish Ramakrishnan
7ea9252059
services: simplify startup logic
2021-09-26 22:48:14 -07:00
Girish Ramakrishnan
0415262305
backupcleaner: fix crash
2021-09-26 21:59:48 -07:00
Girish Ramakrishnan
ad3dbe8daa
mail: keep mail backups separately from box backups
...
part of #717
2021-09-26 21:47:24 -07:00
Girish Ramakrishnan
184fc70e97
pass debug for background promises
2021-09-26 21:24:37 -07:00
Girish Ramakrishnan
743597f91e
backuptask: better debugs
2021-09-26 18:45:28 -07:00
Girish Ramakrishnan
90482f0263
use realpath to resolve links
2021-09-26 18:36:33 -07:00
Girish Ramakrishnan
9584990d7a
remove old migration code
2021-09-26 18:10:39 -07:00
Girish Ramakrishnan
8255623874
mail: mount mail data directory into sftp container
...
fixes #794
2021-09-26 13:47:45 -07:00
Girish Ramakrishnan
d4edd771b5
sftp: prefix the id with app- and volume-
...
this helps the backend identify the type of mount
2021-09-25 23:35:44 -07:00
Girish Ramakrishnan
8553b57982
apptask: fix crash in configure
2021-09-25 21:39:54 -07:00
Girish Ramakrishnan
28f7fec44a
apptask: remove debugApp
2021-09-25 21:39:54 -07:00
Girish Ramakrishnan
54c6f33e5f
Fix broken invitation link
2021-09-25 17:36:56 -07:00
Girish Ramakrishnan
4523dd69c0
sftp: refactor
2021-09-25 17:12:38 -07:00
Girish Ramakrishnan
ddcafdec58
remove obsolete comment
2021-09-25 17:02:22 -07:00
Girish Ramakrishnan
d90beb18d4
eventlog: add service rebuild/restart/configure events
2021-09-24 10:22:45 -07:00
Girish Ramakrishnan
05e8339555
Fix typos in cert renewal
2021-09-23 17:54:54 -07:00
Girish Ramakrishnan
3090307c1d
tasks: remove superfluous update code
2021-09-23 17:44:41 -07:00
Girish Ramakrishnan
8644a63919
better debug
2021-09-23 17:38:55 -07:00
Girish Ramakrishnan
b135aec525
pass debug argument to background safe() calls
2021-09-23 17:28:22 -07:00
Girish Ramakrishnan
1aa96f7f76
demo: do not send login notification
2021-09-23 09:13:07 -07:00
Girish Ramakrishnan
6fbf7890cc
operator: mailbox route has to be protected
...
this is because operator cannot list domains
2021-09-22 12:45:13 -07:00
Girish Ramakrishnan
dff2275a9b
add a flag to disable ocsp globally
...
fixes #796
2021-09-22 09:13:16 -07:00
Johannes Zellner
5b70c055cc
Fixup accessLevel tests
2021-09-22 12:07:31 +02:00
Johannes Zellner
efa364414f
Fix viable app tests and disable currently broken ones
2021-09-22 11:37:27 +02:00
Girish Ramakrishnan
5883857e8c
sftp: remove requireAdmin setting. deprecated with operators
2021-09-21 22:43:04 -07:00
Girish Ramakrishnan
629908eb4c
operator: add a limits route to determine max app resource limits
2021-09-21 22:29:19 -07:00
Girish Ramakrishnan
214540ebfa
operator: add app task status route
2021-09-21 22:19:20 -07:00
Girish Ramakrishnan
d7bd3dfe7c
operator: add graphs route
2021-09-21 21:50:33 -07:00
Girish Ramakrishnan
0857378801
operator: add app update checker route
2021-09-21 19:58:38 -07:00
Girish Ramakrishnan
82d4fdf24e
operator: add route to get app event log
...
we cannot go via /cloudron/eventlog since that requires admin
2021-09-21 19:45:29 -07:00
Girish Ramakrishnan
06e5f9baa1
operators: make the terminal work
2021-09-21 18:27:54 -07:00
Girish Ramakrishnan
6c9b8c8fa8
apps: fix various operators issues
...
part of #791
2021-09-21 18:20:03 -07:00
Girish Ramakrishnan
fabd0323e1
Add missing await
2021-09-21 17:47:42 -07:00
Girish Ramakrishnan
bb2ad0e986
Implement operator role for apps
...
There are two main use cases:
* A consultant/contractor/external developer is given access to just an app.
* A "service" personnel (say upstream app author) is to be given access to single app
for debugging.
Since, this is an "app admin", they are also given access to apps to be consistent with
the idea that Cloudron admin has access to all apps.
part of #791
2021-09-21 12:30:02 -07:00
Girish Ramakrishnan
f44fa2cf47
apps: hasAccessTo -> canAccess
2021-09-21 10:13:06 -07:00
Johannes Zellner
737412653f
Fix renamed function call
2021-09-21 18:58:18 +02:00
Girish Ramakrishnan
0cfc3e03bb
Use concrete resource name instead of generic "resource"
2021-09-20 22:42:34 -07:00
Girish Ramakrishnan
d1e8fded65
mail: expose 465 for mail submission
...
Port 465 is implicit TLS. rfc8314 is now pushing this as a standard
and some mail clients like outlook have already taken this to heart.
Note that this port is sometimes confused with SMTPS. Unlike SMTPS,
this is being used for "submissions" (by a client) as opposed to
server transfer protocol.
This is more secure than port 587+STARTTLS. We reject credentials
on insecure connections but it's too late.
See also:
https://www.fastmail.help/hc/en-us/articles/360058753834
https://www.agwa.name/blog/post/starttls_considered_harmful
https://linuxguideandhints.com/misc/port465.html
2021-09-20 15:42:16 -07:00
Girish Ramakrishnan
2a667cb985
attach debug object for background safe()
2021-09-20 10:36:49 -07:00
Girish Ramakrishnan
a36c51483c
no need to re-throw
2021-09-20 10:36:46 -07:00
Girish Ramakrishnan
e2fc785e80
rename getServiceIds to listServices
2021-09-20 09:15:49 -07:00
Johannes Zellner
5a1a439224
Adjust comment about getAll
2021-09-20 18:04:01 +02:00
Johannes Zellner
212d025579
Do not send new login notification if we have ghost user login
2021-09-20 17:56:37 +02:00
Johannes Zellner
7c70b9050d
Fixup ghost tests
2021-09-20 14:59:26 +02:00
Johannes Zellner
ca2cc0b86c
Make cloudron-support --owner-login use the settings table
2021-09-20 13:20:41 +02:00
Johannes Zellner
c6c62de68a
Move ghosts into settings table
2021-09-20 13:05:42 +02:00
Girish Ramakrishnan
f66af19458
page number starts from 1
2021-09-19 18:36:08 -07:00
Girish Ramakrishnan
50c68cd499
notifications: better oom message for redis
...
fixes #795
2021-09-19 17:34:41 -07:00
Girish Ramakrishnan
05b4f96854
eslint: bump ecmaVersion
...
we can now use the optional chaining operator ?. that is available
in node 14
2021-09-19 17:32:01 -07:00
Girish Ramakrishnan
8c66ec5d18
tokens: ID_CLI is never used
2021-09-17 15:21:56 -07:00
Girish Ramakrishnan
66a907ef48
Logout users without 2FA when mandatory 2fa is enabled
...
Fixes #803
2021-09-17 14:52:24 -07:00
Girish Ramakrishnan
e8aaad976b
backups: make test config funcs return error
2021-09-17 10:14:26 -07:00
Girish Ramakrishnan
2554c47632
add missing apps.delPortBinding
...
this got lost in async/db translation
2021-09-17 09:52:21 -07:00
Girish Ramakrishnan
c5794b5ecd
get rid of all the NOOP_CALLBACKs
2021-09-17 09:40:26 -07:00
Johannes Zellner
b3fe2a4b84
Set correct default ghost expiration
2021-09-17 16:08:03 +02:00
Johannes Zellner
2ea5786fcc
Fix setGhost api usage
2021-09-17 15:52:52 +02:00
Johannes Zellner
f75b0ebff9
Add set ghost route
2021-09-17 12:52:41 +02:00
Johannes Zellner
8fde4e959c
Support ghost password expiration in ghost file
2021-09-17 11:48:56 +02:00
Girish Ramakrishnan
ac59a7dcc2
disable col stats in test mode (mysql 5.7) or non-ubuntu 20
2021-09-16 17:25:09 -07:00
Girish Ramakrishnan
9a2ed4f2c8
apptask: asyncify
2021-09-16 17:25:05 -07:00
Girish Ramakrishnan
b5539120f1
tests: cache dhparams in /tmp
2021-09-16 16:39:13 -07:00
Johannes Zellner
7277727307
Fixup some of app route tests
2021-09-16 17:20:19 +02:00
Johannes Zellner
f13e641af4
Also generate dhparams in test to let the platform finish startup
2021-09-16 17:19:59 +02:00
Johannes Zellner
da23bae09e
return error if purchase fails
2021-09-16 17:19:38 +02:00
Johannes Zellner
9da18d3acb
Fixup user tests
2021-09-16 15:38:06 +02:00
Johannes Zellner
d92f4c2d2b
Ensure a whole test run succeeds for me on archlinux
2021-09-16 15:20:26 +02:00
Johannes Zellner
6785253377
Invitation is now also just a single route like password reset
2021-09-16 15:03:48 +02:00
Johannes Zellner
074ce574dd
Return password reset link on reset request route
2021-09-16 14:34:56 +02:00
Johannes Zellner
ecd35bd08d
Fixup 2fa reset route
2021-09-16 13:18:22 +02:00
Johannes Zellner
df864a8b6e
Add missing safe() call
2021-09-16 08:40:01 +02:00
Girish Ramakrishnan
48eab7935c
sftp: add missing safe()
2021-09-15 15:31:20 -07:00
Johannes Zellner
4080d111c1
We now map ldap users instead of ignoring them if usernames match
2021-09-15 11:44:39 +02:00
Girish Ramakrishnan
a78178ec47
redact password immediately after verify
2021-09-14 10:36:14 -07:00
Girish Ramakrishnan
d947be8683
Add to changes
2021-09-14 09:16:20 -07:00
Johannes Zellner
48056d7451
If we detect a local user with the same username as found on LDAP/AD we map it
2021-09-13 21:17:41 +02:00
Girish Ramakrishnan
2f0297d97e
Use the debug argument
2021-09-13 11:29:55 -07:00
Girish Ramakrishnan
cdf6988156
Update node to 14.17.6
2021-09-10 14:34:11 -07:00
Girish Ramakrishnan
ae13fe60a7
make startBackupTask async
2021-09-10 12:10:10 -07:00
Girish Ramakrishnan
242fad137c
update safetydance
2021-09-10 11:51:44 -07:00
Girish Ramakrishnan
bb7eb6d50e
database: remove callback support
2021-09-10 11:40:01 -07:00
Johannes Zellner
59cbac0171
Require password for fallback email change
2021-09-09 23:22:00 +02:00
Johannes Zellner
d3d22f0878
Directly use users.verify() instead of another db lookup
2021-09-09 22:50:35 +02:00
Johannes Zellner
2d5eb6fd62
Remove unused require
2021-09-09 22:15:12 +02:00
Girish Ramakrishnan
fefd4abf33
Fix logger to log exceptions
...
this is similar to the fix in taskworker
2021-09-07 11:23:57 -07:00
Girish Ramakrishnan
7709e155e0
more async'ification
2021-09-07 11:21:06 -07:00
Girish Ramakrishnan
e7f51d992f
acme: getCertificate can be async now
2021-09-07 09:34:23 -07:00
Johannes Zellner
5a955429f1
Overlooked one more domains occasion
2021-09-06 09:46:27 +02:00
Johannes Zellner
350a42c202
Fix linter issue of reused variable name
2021-09-05 12:10:37 +02:00
Girish Ramakrishnan
6a6b60412d
Fix location change
2021-09-03 13:12:47 -07:00
Girish Ramakrishnan
1df0c12d6f
mail: fix location change
2021-09-03 12:57:10 -07:00
Girish Ramakrishnan
e2cb0daec1
sysinfo: add missing return
2021-09-03 09:08:20 -07:00
Girish Ramakrishnan
949b2e2530
postgresql: bump shm size and disable parallel queries
...
https://forum.cloudron.io/topic/5604/nextcloud-take-very-long-time-to-respond/5
2021-09-03 08:02:06 -07:00
Girish Ramakrishnan
51d067cbe3
sysinfo: async'ify
...
in the process, provision, dyndns, mail, dns also got further asyncified
2021-09-02 16:19:46 -07:00
Girish Ramakrishnan
1856caf972
externalldap: async'ify
...
and make the tests work again
2021-09-01 21:33:27 -07:00
Girish Ramakrishnan
167eae5b81
Use safe instead of try/catch
2021-09-01 15:37:04 -07:00
Johannes Zellner
8d43015867
Asyncify some external ldap sync code
2021-09-01 14:47:43 +02:00
Girish Ramakrishnan
b5d6588e3e
updater: async'ify
2021-08-31 13:12:14 -07:00
Girish Ramakrishnan
d225a687a5
Fix typo in updater logic
2021-08-31 11:16:58 -07:00
Girish Ramakrishnan
ffc3c94d77
tests: add footer tests
2021-08-31 08:47:01 -07:00
Girish Ramakrishnan
6027397961
Add missing safe()
2021-08-31 08:37:16 -07:00
Girish Ramakrishnan
c8c4ee898d
scheduler: inspectByName -> inspect
2021-08-31 07:59:07 -07:00
Girish Ramakrishnan
66fcf92a24
wellknown: asyncify
2021-08-30 23:07:19 -07:00
Girish Ramakrishnan
22231a93c0
Ensure logs are flushed before crash
2021-08-30 22:01:34 -07:00
Girish Ramakrishnan
6754409ee2
Add missing safe()
2021-08-30 18:52:02 -07:00
Girish Ramakrishnan
b1da86c97f
rename variable to avoid shadowing
2021-08-30 15:30:50 -07:00
Girish Ramakrishnan
ca4aeadddd
prepareDashboardDomain: detect conflicts properly
2021-08-30 15:19:16 -07:00
Girish Ramakrishnan
6dfb328532
Add missing await
2021-08-30 14:00:50 -07:00
Girish Ramakrishnan
7d8cca0ed4
Fix typo
2021-08-30 11:42:46 -07:00
Girish Ramakrishnan
99d8c171b3
apps: return 404 when get returns null
2021-08-30 09:28:21 -07:00
Girish Ramakrishnan
d2c2b8e680
Fix shell.sudo usage
2021-08-30 09:28:16 -07:00
Girish Ramakrishnan
a5d41e33f9
Fix update route to use async
2021-08-27 09:30:52 -07:00
Girish Ramakrishnan
7413ccd22e
Fix some more crashes
2021-08-26 21:29:40 -07:00
Girish Ramakrishnan
f5c169f881
Fix service status
2021-08-26 21:18:20 -07:00
Girish Ramakrishnan
42774eac8c
docker.js and services.js: async'ify
2021-08-26 18:23:31 -07:00
Girish Ramakrishnan
1cc11fece8
Fix crash in renewCerts()
2021-08-25 15:52:05 -07:00
Girish Ramakrishnan
fc1eabfae4
appstore: fix usage of getCloudronToken
2021-08-25 15:22:24 -07:00
Girish Ramakrishnan
041b5db58b
Add changes
2021-08-25 14:35:12 -07:00
Girish Ramakrishnan
3912c18824
cloudron-setup: detect amd64
2021-08-25 13:20:12 -07:00
Girish Ramakrishnan
8d3790d890
Fix grammar
2021-08-24 09:38:51 -07:00
Girish Ramakrishnan
766357567a
Add missing safe()
2021-08-23 15:44:23 -07:00
Girish Ramakrishnan
77f5cb183b
merge appdb.js into apps.js
2021-08-23 15:35:38 -07:00
Girish Ramakrishnan
b6f2d6d620
Make database.initialize async
2021-08-23 15:20:14 -07:00
Girish Ramakrishnan
1052889795
taskworkers can be async or take a callback
2021-08-23 15:20:14 -07:00
Johannes Zellner
3a0e882d33
Add missing safe() wrapper
2021-08-23 17:47:58 +02:00
Girish Ramakrishnan
37c2b5d739
proxyauth: fix crash
2021-08-22 16:19:22 -07:00
Girish Ramakrishnan
62eb4ab90e
Fix addon crash
...
getAddonConfigByName returns null now when not found
2021-08-22 15:41:42 -07:00
Girish Ramakrishnan
95af5ef138
mailer: fix crash
2021-08-22 09:52:01 -07:00
Johannes Zellner
ba2475dc7e
Some images like scaleway bare-metal on 20.04 explicitly require systemd-timesyncd
2021-08-22 17:22:47 +02:00
Girish Ramakrishnan
7ba3203625
users: getAll -> list
2021-08-20 11:31:10 -07:00
Girish Ramakrishnan
dd16866e5a
eventlog: getAll -> list
2021-08-20 11:27:35 -07:00
Girish Ramakrishnan
aa6b845c9c
make loginLocationsJson mediumtext
...
it seems we overflow atleast in the demo cloudron
TEXT – 64KB (65,535 characters)
MEDIUMTEXT – 16MB (16,777,215 characters)
2021-08-20 10:30:14 -07:00
Girish Ramakrishnan
a4b5219706
more removal of unused functions
2021-08-20 09:11:38 -07:00
Girish Ramakrishnan
0d87a5d665
remove unused function
2021-08-20 09:02:16 -07:00
Girish Ramakrishnan
ba3a93e648
remove unused function
2021-08-20 08:58:51 -07:00
Girish Ramakrishnan
0494bad90a
make settings-test follow the new pattern
2021-08-20 08:58:00 -07:00
Girish Ramakrishnan
c5fff756d1
move addon config db code to addonconfigs.js
2021-08-19 22:08:31 -07:00
Girish Ramakrishnan
411cc7daa1
merge settingsdb into settings code
2021-08-19 17:45:40 -07:00
Girish Ramakrishnan
4cd5137292
mailer: fix error handling
...
previous mailer code has no callback and thus no way to pass back errors.
now with asyncification it passes back the error
2021-08-19 12:40:53 -07:00
Girish Ramakrishnan
ada7166bf8
translation: asyncify
2021-08-19 11:54:28 -07:00
Girish Ramakrishnan
03e22170da
appstore and support: async'ify
2021-08-18 23:38:18 -07:00
Girish Ramakrishnan
200018a022
settings: async'ify
...
* directory config
* unstable app config
2021-08-18 15:46:08 -07:00
Girish Ramakrishnan
2d1f4ff281
settingsdb.getAll is gone
2021-08-18 15:33:49 -07:00
Girish Ramakrishnan
4671396889
settingsdb: merge blob get/set into settings.js
2021-08-18 15:31:07 -07:00
Girish Ramakrishnan
3806b3b3ff
settings: initCache and list are now async
2021-08-18 13:59:57 -07:00
Girish Ramakrishnan
fa9938f50a
mailboxdb: merge into mail.js
2021-08-18 12:48:34 -07:00
Girish Ramakrishnan
98ef6dfae9
throw must create a new object
2021-08-17 15:20:30 -07:00
Girish Ramakrishnan
5dd6f85025
reverseproxy: async'ify
2021-08-17 14:34:55 -07:00
Girish Ramakrishnan
5bcf1bc47b
merge domaindb.js into domains.js
2021-08-16 14:41:42 -07:00
Girish Ramakrishnan
74febcd30a
make ldap tests pass
2021-08-13 16:55:39 -07:00
Girish Ramakrishnan
beb1ab7c5b
make users-test work
2021-08-13 14:52:57 -07:00
Girish Ramakrishnan
a8760f6c2c
tests: cleanup common variables
2021-08-13 11:34:05 -07:00
Girish Ramakrishnan
aa981da43b
tests: bump expiry of token
2021-08-13 10:23:27 -07:00
Girish Ramakrishnan
85e3e4b955
Accomodate redhat client
...
Patch from @jk at https://forum.cloudron.io/topic/4383/cannot-install-apps-from-docker-registry-because-authentication-fails
2021-08-13 09:36:06 -07:00
Girish Ramakrishnan
ec0d64ac12
tests: complete common'ification of routes tests
2021-08-12 22:49:19 -07:00
Girish Ramakrishnan
ac5b7f8093
tests: more common'ification
2021-08-12 17:20:57 -07:00
Girish Ramakrishnan
05576b5a91
6.4 changes
2021-08-11 22:25:17 -07:00
Girish Ramakrishnan
c7017da770
Add 6.3.6 changes
2021-08-11 22:23:59 -07:00
Girish Ramakrishnan
04d377d20d
password reset: require and verify totpToken
2021-08-11 12:08:28 -07:00
Johannes Zellner
5b10cb63f4
sftp: update addon to fix symlink deletion
2021-08-11 09:32:30 +02:00
Girish Ramakrishnan
1e665b6323
Use the addresses of all available interfaces
...
See https://forum.cloudron.io/topic/5481/special-treatment-of-port-53-does-not-work-in-all-cases
2021-08-10 22:20:35 -07:00
Girish Ramakrishnan
79997d5529
users.add and users.createOwner only returns id now
2021-08-10 13:50:52 -07:00
Girish Ramakrishnan
2c13158265
appstore: remove purpose field
2021-08-10 13:30:51 -07:00
Girish Ramakrishnan
449220eca1
appAddonConfigs: change value to TEXT
...
since the value is used directly as an environment variable, we have to
allow up to max env var size (32767). Use TEXT which has a size of 64k
2021-08-09 13:40:23 -07:00
Girish Ramakrishnan
1a1f40988e
enable all the tests in users-test.js
2021-08-06 23:14:06 -07:00
Johannes Zellner
a6e79c243e
Show correct/new app version info in updated finished notification
2021-07-31 14:17:51 +02:00
Girish Ramakrishnan
fee38acc40
Fix crash when setting up user account
2021-07-31 04:39:10 -07:00
Girish Ramakrishnan
e4ce1a9ad3
Fix crash
2021-07-30 11:33:17 -07:00
Girish Ramakrishnan
41c11d50c0
remove m.identity_server
...
https://forum.cloudron.io/topic/5416/implement-well-known-matrix-client-endpoint/10
2021-07-29 14:37:20 -07:00
Johannes Zellner
768b9af1f9
Fix async usage
2021-07-29 22:21:18 +02:00
Johannes Zellner
635c5f7073
For some reason using df with regular promises breaks and calls catch without error
2021-07-29 22:21:18 +02:00
Girish Ramakrishnan
1273f0a3a4
add matrix client migration
2021-07-29 12:20:20 -07:00
Girish Ramakrishnan
205dab02be
wellknown: serve up matrix/client
2021-07-29 12:05:21 -07:00
Johannes Zellner
f11cc7389d
owner may be null even without error
2021-07-29 17:08:01 +02:00
Johannes Zellner
8e42423f06
When using await on superagent we should not call end()
...
https://visionmedia.github.io/superagent/#promise-and-generator-support
2021-07-29 11:26:28 +02:00
Johannes Zellner
eda3cd83ae
Make new login email translatable
...
Fixes #798
2021-07-29 10:54:38 +02:00
Girish Ramakrishnan
ef56bf9888
cloudron-setup: check if nginx/docker is already installed
2021-07-28 07:20:16 -07:00
Girish Ramakrishnan
24eaea3523
add missing await
2021-07-26 22:16:01 -07:00
Girish Ramakrishnan
0b8d9df6e7
taskworker: print exceptions
2021-07-26 22:11:25 -07:00
Girish Ramakrishnan
882a7fce80
redis: suppress password warning
2021-07-24 08:51:00 -07:00
Girish Ramakrishnan
52fa57583e
bump up memory limit when setting data directory
2021-07-22 17:18:02 -07:00
Girish Ramakrishnan
6e9b62dfba
fix various users-test.js
2021-07-19 23:38:20 -07:00
Girish Ramakrishnan
48585e003d
fix reverseproxy test
2021-07-17 09:49:32 -07:00
Girish Ramakrishnan
a1c61facdc
merge userdb.js into users.js
2021-07-16 22:33:22 -07:00
Girish Ramakrishnan
2840bba4bf
fix the backup tests
2021-07-15 00:09:45 -07:00
Girish Ramakrishnan
004e812d60
merge backupdb into backups.js
2021-07-14 15:10:45 -07:00
Girish Ramakrishnan
ac70350531
tasks.get returns null on not found
2021-07-14 10:59:49 -07:00
Girish Ramakrishnan
e59d0e878d
merge taskdb into tasks.js
2021-07-14 10:37:12 -07:00
Girish Ramakrishnan
db685d3a56
notification: app updated message shown despite failure
2021-07-13 14:27:53 -07:00
Johannes Zellner
0947125a03
Some more test fixes
2021-07-13 11:13:16 +02:00
Johannes Zellner
227196138c
Fixup database tests
2021-07-13 10:38:47 +02:00
Johannes Zellner
b67dca8a61
Fix docker filter usage in runTests
2021-07-13 10:38:40 +02:00
Johannes Zellner
120ed30878
Update lock file
2021-07-13 10:38:26 +02:00
Girish Ramakrishnan
14000e56b7
Fix notifications.alert (async usage)
...
this broke the reboot button among other things
2021-07-12 16:11:58 -07:00
Girish Ramakrishnan
cad7d4a78f
more changes
2021-07-10 15:46:10 -07:00
Girish Ramakrishnan
3659210c7b
typo
2021-07-10 11:13:36 -07:00
Girish Ramakrishnan
eafd72b4e7
eventlog: typo in cleanup
2021-07-10 10:53:21 -07:00
Girish Ramakrishnan
5d836b3f7c
sshfs: only chown when auth as root user
2021-07-10 08:36:30 -07:00
Girish Ramakrishnan
fd9964c2cb
mount: always use mountpoint for getting mount state
...
for ssfs.fuse, we get this on ubuntu 18:
root@my:/etc/systemd/system# systemctl status mnt-cloudronbackup.mount
● mnt-cloudronbackup.mount - backup
Loaded: loaded (/etc/systemd/system/mnt-cloudronbackup.mount; enabled; vendor preset: enabled)
Active: active (mounted) (Result: exit-code) since Sat 2021-07-10 00:16:53 UTC; 40s ago
Where: /mnt/cloudronbackup
What: root@149.28.218.27:/mnt/backups
Process: 8273 ExecUnmount=/bin/umount /mnt/cloudronbackup -c (code=exited, status=32)
Process: 8288 ExecMount=/bin/mount root@149.28.218.27:/mnt/backups /mnt/cloudronbackup -t fuse.sshfs -o allow_other,port=22,IdentityFile=/home/yellowtent/platformdata/sshfs/id_rsa_149.28.2
Tasks: 0 (limit: 2314)
CGroup: /system.slice/mnt-cloudronbackup.mount
Jul 10 00:16:53 my.cloudron.space systemd[1]: Mounting backup...
Jul 10 00:16:53 my.cloudron.space mount[8288]: read: Connection reset by peer
Jul 10 00:16:53 my.cloudron.space systemd[1]: mnt-cloudronbackup.mount: Mount process exited, code=exited status=1
Jul 10 00:16:53 my.cloudron.space systemd[1]: Mounted backup.
so even though the mount failed, it says active/mounted. sad.
2021-07-09 17:50:29 -07:00
Girish Ramakrishnan
c93284e6fb
mount: json parsing of error message
2021-07-09 16:59:57 -07:00
Girish Ramakrishnan
7f4d039e11
backups: remove any old mount point configuration
2021-07-09 16:15:58 -07:00
Girish Ramakrishnan
17a70fdefd
sshfs: hide private key
2021-07-09 16:07:45 -07:00
Girish Ramakrishnan
4c08315803
update 6.3.5 changes
2021-07-09 14:48:40 -07:00
Johannes Zellner
b87ba2f873
Fixup some app tests using test/common.js
2021-07-09 17:09:10 +02:00
Johannes Zellner
7a6b765f59
Prevent crash if groupIds is not set
2021-07-09 13:25:27 +02:00
Johannes Zellner
ede72ab05c
Add more avatar tests
2021-07-09 12:30:47 +02:00
Johannes Zellner
35dc2141ea
Make profile route tests work
2021-07-09 12:07:09 +02:00
Johannes Zellner
8c87f97054
We now explicitly expect a Buffer as avatar
2021-07-09 12:01:09 +02:00
Girish Ramakrishnan
5a4cb00b96
Fix the changelog
2021-07-08 09:09:52 -07:00
Girish Ramakrishnan
01a585aa11
remove safe usage
2021-07-08 08:52:51 -07:00
Johannes Zellner
0db62b4fd8
Make avatar apis buffer based
2021-07-08 11:17:13 +02:00
Girish Ramakrishnan
caa8104dda
fix ldap test
2021-07-07 15:30:31 -07:00
Johannes Zellner
bbbfc4da05
Use avatar in userdb.add()
2021-07-07 18:50:51 +02:00
Johannes Zellner
be0c46ad8e
Revert "Revert "Add avatar field constraint to not be NULL""
...
This reverts commit aafc22511b .
2021-07-07 18:50:09 +02:00
Johannes Zellner
aafc22511b
Revert "Add avatar field constraint to not be NULL"
...
This reverts commit ba86802fc0 .
2021-07-07 18:41:34 +02:00
Johannes Zellner
38d8bad1e1
Only kill container labeled with isCloudronManaged in runTests
2021-07-07 18:34:00 +02:00
Johannes Zellner
ba86802fc0
Add avatar field constraint to not be NULL
2021-07-07 18:32:05 +02:00
Johannes Zellner
de9d30117f
Add gravatar change to changes
2021-07-07 18:15:17 +02:00
Johannes Zellner
16a3c1dd3b
Add avatar migration script
...
Fixes #792
2021-07-07 17:54:25 +02:00
Johannes Zellner
81e6cd6195
Make gravatar support explicit only
2021-07-07 16:16:04 +02:00
Johannes Zellner
cdad2a80d4
Remove unused require
2021-06-30 17:19:30 +02:00
Johannes Zellner
41273640da
SSHFS also does not need to chown here
2021-06-30 17:10:34 +02:00
Girish Ramakrishnan
ac484a02f2
merge maildb.js into mail.js
2021-06-29 15:59:02 -07:00
Girish Ramakrishnan
ea430b255b
make the tests work
2021-06-29 11:01:46 -07:00
Girish Ramakrishnan
31498afe39
async'ify the groups code
2021-06-29 09:08:45 -07:00
Girish Ramakrishnan
7009c142cb
6.3.4 changes
...
(cherry picked from commit 700a7637b6 )
2021-06-28 12:09:41 -07:00
Girish Ramakrishnan
c052882de9
reverseproxy: remove any old dashboard domain configs
2021-06-27 08:58:33 -07:00
Girish Ramakrishnan
e7d9af5aed
users: asyncify and merge userdb.del
2021-06-26 10:13:21 -07:00
Girish Ramakrishnan
147c8df6e3
async'ify avatar and apppassword code
2021-06-25 23:32:21 -07:00
Girish Ramakrishnan
31d742fa67
fix sporadic ETIMEDOUT
...
it seems when docker is busy deleting images, we get a ETIMEDOUT.
the default was 10000.
2021-06-25T22:18:32.324Z box:apps BoxError: connect ETIMEDOUT
at /home/yellowtent/box/src/settingsdb.js:26:36
at Query.queryCallback [as _callback] (/home/yellowtent/box/src/database.js:96:42)
2021-06-25 16:46:49 -07:00
Girish Ramakrishnan
dd5737f948
mail: enable editheader sieve extension and upgrade solr
2021-06-25 16:38:44 -07:00
Girish Ramakrishnan
50d7610bfd
cloudron-support: createdAt -> creationTime
2021-06-25 12:51:42 -07:00
Girish Ramakrishnan
e51dd8f530
installer: prepare apt before installing more packages
...
currently, this is only prepared when needed because don't want this
to happen on every update
2021-06-25 12:14:24 -07:00
Girish Ramakrishnan
bad6e39d59
volume: add filesystem type for shared folders
...
rename noop to mountpoint
2021-06-25 10:12:28 -07:00
Girish Ramakrishnan
1ce4875db1
volumes: set hostPath based on volume id
...
this is required for the file browser to work which does operations
based on the id
fixes #789
2021-06-24 17:32:41 -07:00
Girish Ramakrishnan
097a7d6b60
sftp: rework appdata and volume mounting logic
...
this tries to solve two issues:
* the current approach mounts the data directories of apps/volumes individually.
this causes a problem with volume mounts that mount after the container is started i.e not
network time/delay but systemd ordering. With CIFS, the mount is a hostname. This requires
unbound to be running but unbound can only start after docker because it wants to bind to
the docker network. one way to fix is to not start sftp automatically and only start sftp
container in the box code. This results in the sftp container attaching itself of the
directory before mounting and it appears empty. (on the host, the directory will appear
to have mount data!)
* every time apptask runs we keep rebuilding this sftp container. this results in much race.
the fix is: mount the parent directory of apps and volumes. in addition, then any specialized appdata
paths and volume paths are mounted individually. this greatly minimized rebuilding and also since we don't rely
on binding to the mount point itself. the child directories can mount in leisure. this limits the race
issue to only no-op volume mounts.
part of #789
2021-06-24 16:51:58 -07:00
Girish Ramakrishnan
87b2b63043
sshfs: add StrictHostKeyChecking=no so that it can connect the first time
2021-06-24 15:10:00 -07:00
Girish Ramakrishnan
0b0d552f58
Fix usage of execSync
...
important thing is to not use encoding: 'utf8' because in that case
it will return a string instead of a Buffer object. '' is false but
Buffer() is not.
2021-06-24 12:59:47 -07:00
Girish Ramakrishnan
5437291177
add to changes
2021-06-24 09:09:39 -07:00
Girish Ramakrishnan
78754f943d
read avatar as binary and not base64
2021-06-24 09:09:08 -07:00
Girish Ramakrishnan
27db2c6855
Fix cert migrations
2021-06-24 08:30:51 -07:00
Girish Ramakrishnan
9c0f983ce1
backups: fix failure notitification
2021-06-24 01:44:46 -07:00
Girish Ramakrishnan
b24cf78bc0
certs: fix renewal notification
2021-06-24 01:12:33 -07:00
Girish Ramakrishnan
2b13593630
notifications: only send backup failure email on 3 consecutive fails
2021-06-24 00:48:59 -07:00
Girish Ramakrishnan
6da7218d34
certs: show daysLeft in the logs
2021-06-24 00:48:59 -07:00
Girish Ramakrishnan
7d3270e51a
notifications: do not jump json blob for out of disk space
2021-06-23 23:41:55 -07:00
Girish Ramakrishnan
54dec7ae08
notifications: delete obsolete alerts
2021-06-23 22:51:38 -07:00
Girish Ramakrishnan
89607d2c64
remove the backup check notification and route
...
it seems we decided that instead of a notification, we display a warning in
the backups view itself (see #719 ).
2021-06-23 22:09:23 -07:00
Girish Ramakrishnan
3eb5a26c46
prefix translatable strings with tr:
2021-06-23 22:02:07 -07:00
Girish Ramakrishnan
ebab671f68
remove slash from container name
2021-06-23 17:20:11 -07:00
Girish Ramakrishnan
5129465e59
aws: const correctness
2021-06-23 14:30:00 -07:00
Girish Ramakrishnan
02263e8921
add back mountpoint check
2021-06-22 15:52:50 -07:00
Girish Ramakrishnan
da6478272d
provision: call done instead of callback
2021-06-22 14:40:58 -07:00
Girish Ramakrishnan
15ff43369f
mount: if unmount failed, do not proceed
2021-06-22 13:03:44 -07:00
Girish Ramakrishnan
5040b4f3f9
backups: chown and preserve attribs on ext4 and sshfs
2021-06-22 09:27:11 -07:00
Girish Ramakrishnan
20fe04c0cf
chown for sshfs as well
2021-06-21 23:21:40 -07:00
Girish Ramakrishnan
ceddabd691
Fix tryAddMount usage
2021-06-21 23:13:37 -07:00
Girish Ramakrishnan
3ba2f96d51
volume: remove private fields
2021-06-21 16:35:08 -07:00
Girish Ramakrishnan
6ace8d1ac5
volumes: fix various mount related issues
...
Various notes on mounting:
* The permissions come from the mounted file system and not the mount point.
This means that if we change the perms before mounting, it is overridden by
whatever is in the actual file system.
* uid/gid only works for permission-less file systems
SFTP container notes:
* Assumes that nothing changed if the host path hasn't changed. This means that
if a user changes the disk uuid, reload doesn't work.
* Not sure how/why, but even after unmounting the container can still access the old
mount files (!). With ext4 on disk change or nfs after root path change, the file manager
continues to be able to access the old mounts (despite umount succeeding).
All this led to following changes:
* Remove editing of volumes. Just allow editing username/password.
* edit UI then just also provides a way to re-mount.
* Change mode of mountpoint to be 777 post mounting for ease of use. Otherwise, we have to
make the user do this by ssh. this can always become options later.
2021-06-21 16:11:48 -07:00
Girish Ramakrishnan
f433146484
volumes: reload sftp on update
...
when diskPath changes, docker is busy holding on to the previous mount!
I guess this is because this is all somehow inode based.
2021-06-21 11:53:27 -07:00
Girish Ramakrishnan
c16a7c1f45
do not block for service to restart
2021-06-21 10:05:22 -07:00
Girish Ramakrishnan
79ec7fb245
volumes: make sshfs work
2021-06-20 23:39:35 -07:00
Girish Ramakrishnan
87c22a4670
mount: mount as 777 for max compat
...
for cifs, file_mode can be 666
2021-06-20 22:48:37 -07:00
Girish Ramakrishnan
90657af7f2
mount: fix nfs re-mounting
2021-06-18 23:48:39 -07:00
Girish Ramakrishnan
c23b935cea
volumes: hostPath -> mount point
2021-06-18 23:31:11 -07:00
Girish Ramakrishnan
ecf2ff9e15
mount: better error message detection
2021-06-18 23:02:53 -07:00
Girish Ramakrishnan
55950c7e2d
better description for mount files
2021-06-18 18:03:07 -07:00
Girish Ramakrishnan
5f509f802f
install sshfs
2021-06-18 14:46:54 -07:00
Girish Ramakrishnan
0a3a7cb1a3
debug: replace newline in args
2021-06-18 14:33:50 -07:00
Girish Ramakrishnan
e6e875814e
systemctl show --value does not work on ubuntu 16
2021-06-18 14:29:03 -07:00
Girish Ramakrishnan
406b3394cb
mail: fix issue where spam to internal lists was not blocked
2021-06-18 10:35:42 -07:00
Girish Ramakrishnan
5cad4d1ebd
do not capitalize title words
2021-06-17 13:51:29 -07:00
Girish Ramakrishnan
21ec89a38a
add note on dhparams.pem removal
2021-06-17 11:41:44 -07:00
Girish Ramakrishnan
77989893df
remove boxdata/well-known directory
...
this has already moved into the domains table
2021-06-17 11:37:03 -07:00
Girish Ramakrishnan
7ca86cc96d
cloudron-setup: do not cat to stdout
2021-06-17 10:03:59 -07:00
Girish Ramakrishnan
bf1c7eedb7
clone: copy over the enableMailbox flag
2021-06-16 23:17:26 -07:00
Girish Ramakrishnan
f2e0ee12a2
vultr: object storage
2021-06-16 22:36:01 -07:00
Girish Ramakrishnan
ef04253288
print the task options in the logs
2021-06-16 14:21:19 -07:00
Girish Ramakrishnan
fa81491bf3
Fix uninstall of apps with bad docker images names
...
Some day we can implement https://github.com/distribution/distribution/blob/main/reference/regexp.go
2021-06-16 11:55:23 -07:00
Johannes Zellner
45236aa78d
Fix error message
2021-06-16 19:25:05 +02:00
Johannes Zellner
9851eb0817
We now use the delay module outside of the tests
2021-06-16 19:24:43 +02:00
Girish Ramakrishnan
9436dc688b
omit icon when creating install/clone eventlog entries
...
Otherwise, we hit "Error: ER_DATA_TOO_LONG: Data too long for column 'data'"
2021-06-15 11:12:52 -07:00
Girish Ramakrishnan
28c908b126
appstore: nothing to update when not registered yet
2021-06-05 22:21:07 -07:00
Girish Ramakrishnan
1de006b053
lint
2021-06-05 22:13:25 -07:00
Girish Ramakrishnan
b2856bc8e0
vultr: fix out of bounds access
2021-06-05 22:12:11 -07:00
Girish Ramakrishnan
b579f7ae90
better error messages for 401
2021-06-05 21:26:43 -07:00
Girish Ramakrishnan
eb16e8a8ee
eventlog: fix cleanup
2021-06-05 21:20:32 -07:00
Girish Ramakrishnan
579c046944
test: app token tests to api-test
2021-06-05 15:39:34 -07:00
Girish Ramakrishnan
b778f1e616
test: move server-test into provision-test
2021-06-05 15:26:35 -07:00
Girish Ramakrishnan
fe8358c3e3
test: remove tokendb from users-test
2021-06-05 15:14:07 -07:00
Girish Ramakrishnan
9c49ca5d2e
test: move the 2fa tests into profile
2021-06-05 10:43:41 -07:00
Girish Ramakrishnan
9e34a95732
postgresql: fix backup hogging connections
...
This fixes the "FATAL: remaining connection slots are reserved for non-replication superuser connections"
2021-06-05 09:43:53 -07:00
Girish Ramakrishnan
9228f0cc12
move around the export to avoid circular dep when running tests
2021-06-04 23:53:30 -07:00
Girish Ramakrishnan
ed7514e4ba
typo
2021-06-04 19:47:18 -07:00
Girish Ramakrishnan
ee7cddfbbc
acme: fix http challenge
2021-06-04 17:51:26 -07:00
Girish Ramakrishnan
cdbc51b208
openssl: older openssl (1.0.2g/ubuntu 16) requires distinguished_name
2021-06-04 16:48:56 -07:00
Girish Ramakrishnan
dd3600b13c
test: fix groups test
2021-06-04 14:55:14 -07:00
Girish Ramakrishnan
9fa63b4ef8
acme: openssl -ext is not recognized on ubuntu 16
2021-06-04 14:54:39 -07:00
Girish Ramakrishnan
7bee7b9ef8
tokens: async'ify
2021-06-04 13:06:38 -07:00
Girish Ramakrishnan
593038907c
unbound: on ubuntu 16, sd_notify is not working
...
not clear, when unbound added support for this.
on ubuntu 16, unbound is 1.5.8.
on ubuntu 20, unbound is 1.9.4
2021-06-04 09:41:54 -07:00
Girish Ramakrishnan
64dcdb5e84
user cert may not exist
2021-06-03 22:51:28 -07:00
Girish Ramakrishnan
0208e3d3a2
test: make appstore-test use common.js
2021-06-03 22:39:26 -07:00
Girish Ramakrishnan
acfb4d8553
remove empty test file
2021-06-03 22:23:48 -07:00
Girish Ramakrishnan
d78df9405d
Fix dashboardFqdn not set correctly because of typo
2021-06-03 21:33:46 -07:00
Girish Ramakrishnan
4937cbbc0b
shell: add promises test
2021-06-03 19:36:37 -07:00
Girish Ramakrishnan
a0c4ef9d0f
more test fixes
2021-06-03 16:29:56 -07:00
Girish Ramakrishnan
8da4eaf4a3
fix tests
2021-06-03 16:08:39 -07:00
Girish Ramakrishnan
c90a9e43cf
Fix usage of eventlog.add
2021-06-03 11:42:32 -07:00
Girish Ramakrishnan
2c1bedd38a
delay is a normal dep on not dev dep
2021-06-03 10:11:29 -07:00
Girish Ramakrishnan
7aac4455a9
eventlog: async'ify
2021-06-01 16:37:32 -07:00
Girish Ramakrishnan
bdbda9b80e
transaction now returns a promise
2021-06-01 16:11:01 -07:00
Girish Ramakrishnan
e9ace613e2
cert: only inform user if renewal fails and only 10 days left
2021-06-01 09:09:16 -07:00
Girish Ramakrishnan
380fe7c17a
domains: add vultr dns
2021-05-29 22:58:18 -07:00
Girish Ramakrishnan
9e7dd3f397
notifications: acknowledged can be null
2021-05-29 21:56:35 -07:00
Girish Ramakrishnan
73917e95c9
rework notifications
...
notifications are now system level instead of user level.
To clarify the use events/notifications/email:
* eventlog - everything that is happenning on server
* notifications - specific important events (alerts)
* email - these are really urgent things that require immediate attention. this is for
the case where an admin does not visit the dashboard often. can also be alerts like
bad backup config or reboot required which are not events per-se.
Notes on notifications
* oom - notification only
* appUpdated - notification only
* cert renewal failure - only raise when < 10 days to go. also send email thereafter (todo).
* Backup failure - only if last 5 backups failed (todo).
* Box update - notification only. we anyway send newsletter.
* box update available - we raise a notification. no email.
* app update available - we already have update indicator on dashboard. so, no notification or email.
Alerts:
* backup config
* disk space
* mail status
* reboot
* box updated
* ubuntu update required
2021-05-28 15:29:53 -07:00
Girish Ramakrishnan
3ba62f2ba1
mail: do not forward spam
2021-05-27 22:21:17 -07:00
Girish Ramakrishnan
9d664a7d7c
typo
2021-05-27 15:15:29 -07:00
Girish Ramakrishnan
b278056941
typo in backup filename
2021-05-27 15:08:51 -07:00
Girish Ramakrishnan
a34bdb9ddf
backups: fix mounting logic of backup settings and cloudron restore
2021-05-27 13:52:05 -07:00
Girish Ramakrishnan
98988202a1
sftp: make the key unreadble by group/others
2021-05-26 15:59:07 -07:00
Girish Ramakrishnan
0342865129
sieve: redirects do not do SRS
2021-05-26 15:22:10 -07:00
Girish Ramakrishnan
c605395885
app import: restore icon, tag, label, proxy configs etc
2021-05-26 09:49:00 -07:00
Girish Ramakrishnan
098cff08f7
make import a task of it's own
...
this allows us to distinguish it in the eventlog and apptask logic
2021-05-26 09:27:15 -07:00
Girish Ramakrishnan
431e2a6ab9
clone: save app config
...
clone also clones the tags, labels and icon. this is not done for
restore or import since it's not clear if this is a good idea or not.
for example, if user had some custom tags and label set and then restores
to some old backup, is it expected to reset the labels and tags?
2021-05-26 09:03:05 -07:00
Girish Ramakrishnan
2fb6be81fc
cloudron-setup: check if box.service exists instead
2021-05-24 19:05:49 -07:00
Girish Ramakrishnan
0a5a24ba2e
add tryAddMount
...
we try to add a mount. if it fails, it will revert to the previous mount config.
there was a plan to make this work based on systemd-mount but we hit this bug - https://bugzilla.redhat.com/show_bug.cgi?id=1708996
2021-05-21 22:32:51 -07:00
Girish Ramakrishnan
59db625ad9
volumes: wait for mount during add/update
...
this is a better feedback mechanism for the user
2021-05-19 11:08:33 -07:00
Girish Ramakrishnan
449d6b2de4
add missing callback
2021-05-18 14:49:15 -07:00
Girish Ramakrishnan
91df8df92d
add alert for ubuntu 16
2021-05-18 14:48:01 -07:00
Girish Ramakrishnan
a5e34cf775
delete certs that have long expired (6 months)
...
fixes #783
2021-05-18 13:37:35 -07:00
Girish Ramakrishnan
76d0abae43
postgresql: set max conn limit per db
2021-05-18 09:04:29 -07:00
Johannes Zellner
1785b0352a
Add initial sshfs support
2021-05-18 17:27:32 +02:00
Girish Ramakrishnan
14bb928d41
backups: fix various mount issues
2021-05-17 22:58:40 -07:00
Girish Ramakrishnan
599b604dca
tests: make volumes routes test pass
2021-05-17 22:23:24 -07:00
Girish Ramakrishnan
c7474511aa
fix volume test
2021-05-17 16:23:37 -07:00
Girish Ramakrishnan
124954d490
migrate old providers as generic mountpoint provider
2021-05-17 13:23:32 -07:00
Girish Ramakrishnan
53dce1e7aa
users: rename createdAt to creationTime
2021-05-17 07:54:54 -07:00
Girish Ramakrishnan
2421536c23
add indexes for ORDER BY fields used in code
...
we hit ER_OUT_OF_SORTMEMORY with large tables
2021-05-17 07:06:11 -07:00
Girish Ramakrishnan
aae40f506b
backups: add mounting config
2021-05-14 15:27:07 -07:00
Girish Ramakrishnan
24dbf53c5d
fix error handling
2021-05-14 14:46:16 -07:00
Girish Ramakrishnan
a56766ab0e
ensure nss-lookup.target is hit after unbound starts
...
https://github.com/NLnetLabs/unbound/issues/296
this fixes volume hostname resolution on reboot
2021-05-14 12:07:05 -07:00
Girish Ramakrishnan
43642b2d60
volumes: better options for ext4
2021-05-14 11:38:32 -07:00
Girish Ramakrishnan
8cb7c8cd1c
volumes fixes
2021-05-14 10:26:57 -07:00
Girish Ramakrishnan
00cd10742f
cifs: set uid/gid
...
because the mode is 0777, we should be fine with any valid uid/gid
2021-05-14 10:08:44 -07:00
Girish Ramakrishnan
88a5526e9b
starttask: set NODE_OPTIONS instead of env -S
2021-05-14 09:36:00 -07:00
Girish Ramakrishnan
06b7cb962b
do not remove mount file if mountType was no-op
...
we might end up removing user's systemd file
2021-05-14 08:44:44 -07:00
Johannes Zellner
6f2382d5ff
Set correct esversion for linter
2021-05-14 12:27:59 +02:00
Johannes Zellner
5e48b69d3b
Revert "taskworker: Use --unhandled-rejections=strict"
...
Breaks the task argument count
This reverts commit b7643ae3b3 .
2021-05-14 11:13:52 +02:00
Johannes Zellner
a43e804ee2
Revert "taskworker: put the arg in shebang line"
...
Not supported on ubuntu 18
This reverts commit e6edc4e999 .
2021-05-14 10:51:37 +02:00
Johannes Zellner
170efbcb5e
Remove unused require
2021-05-14 10:47:54 +02:00
Johannes Zellner
fe34c158eb
Fix cifs mount point syntax and options
2021-05-14 10:30:11 +02:00
Girish Ramakrishnan
8fc4a8abf7
volume: use mountpoint command to check if it is mounted
2021-05-13 23:21:15 -07:00
Girish Ramakrishnan
c2fc978ffd
better heuristic to find mount error
2021-05-13 23:03:25 -07:00
Girish Ramakrishnan
938b88d61b
Fix crash
2021-05-13 22:52:41 -07:00
Girish Ramakrishnan
f927b9b5b2
make taskworker console.* log to file and not stdout
...
this is similar to code in box.js
2021-05-13 22:49:47 -07:00
Girish Ramakrishnan
e6edc4e999
taskworker: put the arg in shebang line
...
otherwise, it gets passed as an arg to the script and is visible in process.argv!
2021-05-13 22:49:15 -07:00
Girish Ramakrishnan
b7643ae3b3
taskworker: Use --unhandled-rejections=strict
...
this way, those tasks crash and do not hang on bad code
2021-05-13 22:32:12 -07:00
Girish Ramakrishnan
0c4b7f3202
do not use %s to print error object
...
this ends up suppressing the backtrace
2021-05-13 22:31:58 -07:00
Girish Ramakrishnan
65e114437b
volume: always send a message
2021-05-13 17:50:27 -07:00
Girish Ramakrishnan
238073fe48
volume: get status
2021-05-13 16:08:55 -07:00
Girish Ramakrishnan
2c8e83dc6d
volumes: update route
2021-05-13 10:48:30 -07:00
Girish Ramakrishnan
ac4fa83080
status is already an object
2021-05-13 00:02:21 -07:00
Girish Ramakrishnan
50407eba0b
volumes: generate systemd mount files based on mount type
2021-05-12 23:57:12 -07:00
Girish Ramakrishnan
4c938b5e77
shell: expose promises variant
2021-05-12 17:30:29 -07:00
Girish Ramakrishnan
52da431388
misplaced await
2021-05-12 13:30:22 -07:00
Girish Ramakrishnan
fc52cd7e0c
volumes: async'ify
2021-05-12 11:46:04 -07:00
Girish Ramakrishnan
3a252fe10e
boxerror: override the properties directly
2021-05-11 17:50:40 -07:00
Johannes Zellner
7dcc904af9
Fix new login location detection
2021-05-09 10:19:19 +02:00
Girish Ramakrishnan
91a7a9e43c
backups: change app backup filename
...
change from app_appid_timestamp_vVersion to app_fqdn_vVersion
Fixes #782
2021-05-08 17:17:11 -07:00
Girish Ramakrishnan
4482da6148
move acme2.js one level up
2021-05-07 23:21:45 -07:00
Girish Ramakrishnan
302ea60b8d
consolidate acme paths in the reverseproxy code
2021-05-07 23:21:42 -07:00
Girish Ramakrishnan
dea31109e2
remove debug
2021-05-07 22:59:53 -07:00
Girish Ramakrishnan
b3a805faff
ensureCertificate: copy certs from db to disk as needed
2021-05-07 22:07:14 -07:00
Girish Ramakrishnan
593a61f51b
apps: get user certificate
2021-05-07 21:37:23 -07:00
Girish Ramakrishnan
84af9580a6
migrate certs into the blobs database
...
use platformdata/nginx/cert to store the certs
2021-05-07 21:26:49 -07:00
Girish Ramakrishnan
182918b13d
add note
2021-05-07 20:20:15 -07:00
Girish Ramakrishnan
d8422ea976
fix safe() error handling
2021-05-07 15:56:43 -07:00
Girish Ramakrishnan
cc684b4ea0
acme: async'ify
2021-05-06 22:52:49 -07:00
Girish Ramakrishnan
31503e2625
postgresql: bump max connections
2021-05-06 10:58:48 -07:00
Girish Ramakrishnan
39e7d9cc7a
Further rename of admin -> dashboard
2021-05-05 13:14:48 -07:00
Girish Ramakrishnan
9418e93428
reverseproxy: adminOrigin is not used in the ejs
2021-05-05 13:13:04 -07:00
Girish Ramakrishnan
16dc008702
Fix failing test
2021-05-05 12:52:11 -07:00
Girish Ramakrishnan
44ac406e57
admin -> dashboard
2021-05-05 12:29:04 -07:00
Girish Ramakrishnan
cc9b43450c
configureAdmin is never used
2021-05-05 12:16:25 -07:00
Girish Ramakrishnan
7f6a0555b2
store custom app certificates in subdomains table
...
the REST route and model code is still ununsed as before since there
is no way to set the certs from the UI.
2021-05-05 10:58:20 -07:00
Girish Ramakrishnan
963e92b517
store fallback certs in the database
2021-05-04 22:30:28 -07:00
Girish Ramakrishnan
7de454911e
migrate firewall configuration into database
...
the ports.json is for the moment server specific
2021-05-04 15:55:54 -07:00
Girish Ramakrishnan
d8e464d9c7
Fix sftp paths
2021-05-04 15:55:37 -07:00
Girish Ramakrishnan
fc2e2665b9
restore: write secrets into platformdata on start
...
this is required when cloudron is restored and we have to then write
keys from the db into the platformdata.
2021-05-04 14:56:25 -07:00
Johannes Zellner
5cc5c1923a
If user-agent is not known pass the agent as incoming string
2021-05-04 20:36:41 +02:00
Johannes Zellner
aa86174d6b
We can have toplevel arrays just fine
2021-05-04 20:30:52 +02:00
Johannes Zellner
fed8ba95f0
Fallback to unkown useragent and don't stash such login attempts
2021-05-04 20:07:28 +02:00
Johannes Zellner
bec42c69c8
Do not use toplevel arrays
2021-05-04 19:52:21 +02:00
Girish Ramakrishnan
7d8d6d4913
better error messages
2021-05-04 10:45:36 -07:00
Johannes Zellner
5ab925e284
Fix login location stash
2021-05-04 15:00:09 +02:00
Girish Ramakrishnan
f016f3d3e1
use rmdir instead of unlink
2021-05-04 00:28:44 -07:00
Girish Ramakrishnan
dcea55cd81
chown the sftp directory
2021-05-04 00:27:45 -07:00
Johannes Zellner
e10b7b59dc
Only use simplified user agent for login detection
2021-05-04 09:11:16 +02:00
Girish Ramakrishnan
885647f484
fix proxyauth icon
2021-05-03 23:00:51 -07:00
Girish Ramakrishnan
c17743d869
migrate secrets into the database
...
the infra version is bumped because the nginx's dhparams path has changed
and the sftp server key path has changed.
2021-05-03 22:11:18 -07:00
Girish Ramakrishnan
4015f8fdf2
update safetydance
2021-05-03 15:55:27 -07:00
Girish Ramakrishnan
035f356dff
add async support to database.query()
2021-05-02 23:18:07 -07:00
Girish Ramakrishnan
199eda82d1
Use Array.isArray instead
2021-05-02 11:26:47 -07:00
Girish Ramakrishnan
442110a437
lint
2021-05-01 11:21:09 -07:00
Girish Ramakrishnan
907ae4f233
secrets -> blobs
...
this will also have certs which are not really "secrets"
2021-04-30 22:34:27 -07:00
Girish Ramakrishnan
130ef72c9a
Add secrets table
...
this will hold keys, certs etc
2021-04-30 22:07:51 -07:00
Girish Ramakrishnan
a33fdee659
remove unused dir
2021-04-30 16:34:05 -07:00
Girish Ramakrishnan
6e7716e992
Update ts when setting task as well
2021-04-30 16:26:19 -07:00
Girish Ramakrishnan
bad77fd99e
apps: update ts in code instead of database
...
ts is useful as a versioning mechanism (for example, icon changed). update the timestamp explicity in code instead of db.
this way health and healthTime can be updated without changing ts.
2021-04-30 16:14:29 -07:00
Girish Ramakrishnan
0062e6d9fe
apps: add icon and appStoreIcon to database
2021-04-30 14:35:21 -07:00
Girish Ramakrishnan
64414eb932
new login mail: minor adjustments to text
2021-04-30 12:01:57 -07:00
Girish Ramakrishnan
698ab93cc9
Add to CHANGES
2021-04-30 10:34:10 -07:00
Girish Ramakrishnan
8ff68331a8
proxyAuth: use default expiry time in cookie (1 year)
2021-04-30 10:31:09 -07:00
Girish Ramakrishnan
6fe8974a2d
location -> loginLocations
2021-04-30 10:28:34 -07:00
Girish Ramakrishnan
44027f61e6
Fix failing tests
2021-04-30 09:48:00 -07:00
Johannes Zellner
549b2f2a6b
Improve new login location email
2021-04-30 16:20:50 +02:00
Johannes Zellner
fb5c2a5e52
Properly detect new user agents and location
2021-04-30 15:22:10 +02:00
Girish Ramakrishnan
af2c096975
branding: move logo into database
...
initially, i tried to put this in the current value field but that
is TEXT and has a size limit of 64K. TEXT also stores things with
character encoding, so we have to stash it as base64
2021-04-29 18:28:03 -07:00
Girish Ramakrishnan
3c09416e44
Use Buffer.isBuffer instead
2021-04-29 15:37:32 -07:00
Girish Ramakrishnan
6df5a4f79b
Remove unused FIREWALL_CONFIG_FILE
2021-04-29 15:35:42 -07:00
Girish Ramakrishnan
df0532714e
Fix various debugs
2021-04-29 15:25:19 -07:00
Girish Ramakrishnan
6a32291609
Move updatechecker.json into platform data
2021-04-29 14:01:24 -07:00
Girish Ramakrishnan
b8ea9de439
move profile icons into the database
2021-04-29 13:57:24 -07:00
Girish Ramakrishnan
7b8fd3596e
well known is now stored in the database
2021-04-29 12:17:44 -07:00
Girish Ramakrishnan
6a294f6cd6
Add 6.2.8 changes
2021-04-28 10:40:14 -07:00
Girish Ramakrishnan
fe6ee45645
typo
2021-04-27 15:25:11 -07:00
Girish Ramakrishnan
cd300bb6e2
graphite: carbon crash fix
...
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=923464
https://forum.cloudron.io/topic/4797/graphite-keeps-crashing-oom/34
2021-04-27 14:25:12 -07:00
Girish Ramakrishnan
cb573c0a37
reverseproxy: identify LE staging correctly
2021-04-27 12:55:11 -07:00
Girish Ramakrishnan
38425e75b5
tests: create firewall directory
2021-04-26 14:15:39 -07:00
Johannes Zellner
70f2337b09
Allow apps to override the Referrer-Policy header
2021-04-26 11:48:18 +02:00
Girish Ramakrishnan
f3d870978b
add tests for inactive mailbox and list
2021-04-21 12:39:18 -07:00
Girish Ramakrishnan
d437acebe2
notifications: can also mark it as unread
2021-04-21 12:20:58 -07:00
Girish Ramakrishnan
bb3f9744fb
notifications: fix pagination of listByUserIdPaged
...
we have to filter in sql query, otherwise we don't get consistent per page count
2021-04-21 10:55:31 -07:00
Girish Ramakrishnan
fbceb67df9
notifications: remove app up/down
2021-04-21 10:55:31 -07:00
Johannes Zellner
de8d861e56
Add basic .jshintrc
2021-04-21 16:15:01 +02:00
Johannes Zellner
61e51c7875
Send new login location notification mail
2021-04-21 16:14:49 +02:00
Girish Ramakrishnan
8b99af952a
turn: turn off verbose logging
2021-04-20 11:30:31 -07:00
Johannes Zellner
d74f2b8506
Stop using deprecated developer/login route in tests
2021-04-20 17:52:53 +02:00
Girish Ramakrishnan
727e6720e8
schema.sql: fix appPasswords constraint
2021-04-19 21:02:14 -07:00
Girish Ramakrishnan
142af8e700
Fix notifications schema
2021-04-19 21:00:31 -07:00
Girish Ramakrishnan
0c8e0c4715
notifications: send backup fail only to owner
...
only superadmin has access to server and can adjust backup config
2021-04-19 20:57:10 -07:00
Girish Ramakrishnan
613da5fff9
notifications: remove user add/edit/update notifications
...
these just clutter the real notifications. these are in the eventlog
anyways.
2021-04-19 20:44:35 -07:00
Girish Ramakrishnan
355de5b0a4
notifications: fix update notification
...
the notification wasn't working because this was in apptask and the apptask died
before it could send out the email. we now move the notification to box process
and also remove the email notification.
2021-04-19 15:14:04 -07:00
Girish Ramakrishnan
3ab0a25ec9
Update npm packages
2021-04-17 23:12:33 -07:00
Girish Ramakrishnan
482169c805
Remove superfluous brackets
2021-04-17 22:23:15 -07:00
Girish Ramakrishnan
bba9b7e24e
add weblate badge
2021-04-17 22:21:56 -07:00
Girish Ramakrishnan
7a7223a261
OCSP: do not set must-staple in certificate request
...
On first visit in firefox, must-staple certs (unlike chrome which ignores must-staple) always fail.
Investigating, it turns out, nginx does not fetch OCSP responses on reload or restart - https://trac.nginx.org/nginx/ticket/812 .
So, one has to prime the OCSP cache using curl requests. Alternately, one can use `openssl ocsp -noverify -no_nonce` and
then set `ssl_stapling_file`. Both approaches won't work if the OCSP servers are down and then we have to have some retry logic.
Also, the cache is per nginx worker, so I have no clue how many times one has to call curl. The `ssl_stapling_file` approach
requires some refresh logic as well. All very messy.
For the moment, do not set must-staple in the cert. Instead, check if the cert has a CSP URL and then enable
stapling in nginx accordingly.
2021-04-16 13:33:32 -07:00
Girish Ramakrishnan
4d919127a7
implement OCSP stapling
...
can verify stapling using openssl s_client -connect hostname:443 -status
status_request is RFC6066. there is also status_request_v2 (RFC6961) but this is
not implemented even in openssl libs yet
2021-04-16 12:13:54 -07:00
Girish Ramakrishnan
5d2fd81c0d
Add missing callback()
2021-04-15 16:33:21 -07:00
Girish Ramakrishnan
ef476f74bf
notifications: no email for app up/down/oom events
...
emails will not be used for self monitoring events. these are best done
from the outside. we just log everything in eventlog and raise notifications
as well.
2021-04-15 15:29:25 -07:00
Girish Ramakrishnan
d29d46d812
mail: add active flag to mailboxes and lists
2021-04-15 11:49:19 -07:00
Girish Ramakrishnan
00856b79dd
firewall: Set BOX_ENV
2021-04-14 23:01:08 -07:00
Girish Ramakrishnan
c3e14cd11f
user: return 2fa status for the UI
2021-04-14 21:46:35 -07:00
Girish Ramakrishnan
5833d6ed5d
Fix failing dns and network test
2021-04-14 21:43:51 -07:00
Girish Ramakrishnan
f15714182b
users: add route to disable 2fa
2021-04-14 20:45:35 -07:00
Girish Ramakrishnan
6d214cf0f2
2fa: fix routes to not have a slash
...
otherwise, it feels like it is some sort of resource
2021-04-14 19:59:46 -07:00
Girish Ramakrishnan
f9a72b530c
Fix coding style
2021-04-14 15:54:09 -07:00
Girish Ramakrishnan
e983b0d385
more changes
2021-04-14 15:54:01 -07:00
Girish Ramakrishnan
0712eb1250
namecheap: fix del
2021-04-13 22:27:38 -07:00
Girish Ramakrishnan
564409d8b7
namecheap: Send it as POST
2021-04-13 22:17:01 -07:00
Girish Ramakrishnan
1c9c8e8e2b
namecheap: refactor
2021-04-13 15:10:24 -07:00
Girish Ramakrishnan
04398c9b16
appstore: on dashboard domain change, update cloudron label
2021-04-13 14:19:45 -07:00
Girish Ramakrishnan
9a9c406fbe
appstore: remove track begin/end
...
we used these to track error rates which we don't need anymore since
it's quite reliable
2021-04-13 14:10:30 -07:00
Johannes Zellner
8757e5ba42
print dashboard domain on --owner-login
2021-04-13 15:49:42 +02:00
Girish Ramakrishnan
131711ef5c
mysql: bump connection limit to 200
2021-04-09 10:55:31 -07:00
Johannes Zellner
5ae5566ce8
Fix blocklist setting when source and list have mixed ip versions
2021-04-07 17:31:04 +02:00
Johannes Zellner
114a5ee2b1
Ensure we have a valid but unused iptables blocklist for testing
2021-04-07 17:30:19 +02:00
Johannes Zellner
c2c8e92d24
Allow to skip docker container cleanup when running tests
2021-04-07 16:46:12 +02:00
Girish Ramakrishnan
6d044bfbf3
mysql: Fix "mbind: Operation not permitted" warning"
...
https://github.com/docker-library/mysql/issues/303#issuecomment-643154859
2021-04-05 15:28:46 -07:00
Girish Ramakrishnan
d161fe9ebd
add progress message for restoring addons
2021-04-05 11:35:47 -07:00
Girish Ramakrishnan
919f510796
linode object storage: update aws sdk
...
https://github.com/aws/aws-sdk-js/pull/3674
2021-04-02 11:54:22 -07:00
Girish Ramakrishnan
e613452058
mysql: remove use of mysql_upgrade
2021-04-01 11:50:03 -07:00
Johannes Zellner
5ccb1d44fe
Send translation keys instead of raw english string for backup checks
2021-04-01 16:35:50 +02:00
Girish Ramakrishnan
84dfd4aa84
firewall: no need to keep 25 always open
2021-03-30 15:56:01 -07:00
Girish Ramakrishnan
726c028360
clone: copy services config
2021-03-30 12:45:28 -07:00
Girish Ramakrishnan
f211de1ff4
apphealthmonitor: 403 is ok
2021-03-30 11:57:30 -07:00
Girish Ramakrishnan
c1ee3dcbd4
collectd: cache du values and send it every Interval (20)
...
collectd plugin ordering matters. the write_graphite plugin establishes
a TCP connection but there is a race between that and the df/du values that
get reported. du is especially problematic since we report this only every 12 hours.
so, instead we cache the values and report it every 20 seconds. on the carbon side,
it will just retain every 12 hours (since that is the whisper retention period).
there is also FlushInterval which I am not 100% sure has any effect. by default, the
write_graphite plugin waits for 1428 bytes to be accumulated. (https://manpages.debian.org/unstable/collectd-core/collectd.conf.5.en.html )
https://github.com/collectd/collectd/issues/2672
https://github.com/collectd/collectd/pull/1044
I found this syntax hidden deep inside https://www.cisco.com/c/en/us/td/docs/net_mgmt/virtual_topology_system/2_6_3/user_guide/Cisco_VTS_2_6_3_User_Guide/Cisco_VTS_2_6_1_User_Guide_chapter_01111.pdf
2021-03-26 00:21:38 -07:00
Johannes Zellner
0402dce1ee
Invite token should be valid for 7 days
2021-03-25 17:25:56 +01:00
Girish Ramakrishnan
c1b61bc56b
add note
2021-03-24 20:30:02 -07:00
Girish Ramakrishnan
2d771d7c44
6.2.7 changes
2021-03-24 19:37:18 -07:00
Girish Ramakrishnan
d277f8137b
redis: backup before upgrade
2021-03-24 19:27:24 -07:00
Girish Ramakrishnan
7ae79fe3a5
graphite: restart collectd on upgrade
2021-03-24 14:10:31 -07:00
Girish Ramakrishnan
407dda5c25
Add 6.2.6 changes
...
(cherry picked from commit 6cc07cd005 )
2021-03-24 10:37:22 -07:00
Girish Ramakrishnan
1f59974e83
give graphite more time to start before restarting collectd
2021-03-24 10:26:19 -07:00
Girish Ramakrishnan
8e8e90b390
Add changes for 6.2.5
2021-03-24 09:45:58 -07:00
Girish Ramakrishnan
0447dce0d6
graphite: restart collectd as well
2021-03-23 16:34:36 -07:00
Girish Ramakrishnan
32f385741a
graphite: implement upgrade
...
for the moment, we wipe out the old data and start afresh. this is because
the graphite web app keeps changing quite drastically.
2021-03-23 16:34:32 -07:00
Girish Ramakrishnan
91a4ae90f2
better logs
2021-03-23 13:06:37 -07:00
Girish Ramakrishnan
3201c5bda3
remove CLOUDRON_MAIL_SMTP_SERVER_HOST from sendmail
...
let's keep it in email addon because that will trigger reconfigure of apps
on server name change
2021-03-23 10:40:47 -07:00
Girish Ramakrishnan
c6920bd860
HSTS: bump the max-age to 2 years
...
Side note: https://hstspreload.org/ . This is what the chromium project expects
for preloading.
2021-03-22 19:04:28 -07:00
Girish Ramakrishnan
66ff2a9eb7
Revert "make box code send emails with STARTTLS"
...
This reverts commit ca496df535 .
2525 has no TLS anymore
2021-03-22 14:34:07 -07:00
Girish Ramakrishnan
c3d30a1d99
mail: rework STARTTLS strategy
...
instead of fixing all apps which is a royal pain, we instead make Haraka
offer STARTTLS for 2587 and no STARTTLS for 2525.
2021-03-21 20:38:05 -07:00
Girish Ramakrishnan
7df89e66c8
request has no retry method
...
i thought it was using superagent
2021-03-20 11:19:45 -07:00
Girish Ramakrishnan
4954b94d4a
acme2: add a retry to getDirectory, since users are reporting a 429
2021-03-19 09:59:09 -07:00
Girish Ramakrishnan
f3d9b81942
check for autofs mounts
...
autofs mounts are "mounts on demand". this way, instead of mounting
lots of things on startup, you can mount it on first access.
2021-03-19 09:59:09 -07:00
Girish Ramakrishnan
93510654a5
nfs: also check for nfs4 mount type
...
it seems in some version of ubuntu you mount with "-t nfs4".
this still doesn't handle autofs yet.
https://help.ubuntu.com/community/NFSv4Howto
2021-03-19 09:54:09 -07:00
Girish Ramakrishnan
39a0b9c351
typo
2021-03-18 21:35:18 -07:00
Girish Ramakrishnan
8048e68eb6
graphite: disable tagdb
2021-03-18 18:03:45 -07:00
Girish Ramakrishnan
60bdc34ad0
typo
2021-03-18 12:59:51 -07:00
Girish Ramakrishnan
2ff1f70eb8
Add to changes
2021-03-17 14:22:50 -07:00
Girish Ramakrishnan
67d9b50a16
Fix tests
2021-03-17 12:14:36 -07:00
Girish Ramakrishnan
f7bd47888a
Fix issue where df output is not parsed correctly
...
LANG is the default locale i.e when LC_* are not specificall
LC_ALL will override them all
https://forum.cloudron.io/topic/4681/going-to-system-info-triggers-assertion-error
2021-03-17 11:14:07 -07:00
Girish Ramakrishnan
9960729d6b
Add optional mailbox support
2021-03-16 22:40:38 -07:00
Girish Ramakrishnan
4cba5ca405
sftp: only rebuild when app task queue is empty
...
when multiple apptasks are scheduled, we end up with a sequence like this:
- task1 finishes
- task2 (uninstall) removes appdata directory
- sftp rebuild (from task1 finish)
- task2 fails because sftp rebuild created empty appdata directory
a fix is to delay the sftp rebuild until all tasks are done. of course,
the same race is still there, if a user initiated another task immediately
but this seems unlikely. if that happens often, we can further add a sftpRebuildInProgress
flag inside apptaskmanager.
2021-03-16 18:29:01 -07:00
Girish Ramakrishnan
098da7426c
Add CLOUDRON_MAIL_SMTP_STARTTLS env
...
starting 6.3, the internal mail server will do STARTTLS. this env
allows apps to configure themselves appropriately for pre 6.3 and
post 6.3 appropriately.
we trigger a re-configure which ensures that the new env gets put
in the database and then in the container.
2021-03-16 16:20:08 -07:00
Girish Ramakrishnan
a3ee79ccbd
More 6.3 changes
2021-03-16 16:07:37 -07:00
Girish Ramakrishnan
176388111c
tokens: add lastUsedTime
2021-03-16 16:04:17 -07:00
Girish Ramakrishnan
750f313c6a
update: set memory limit properly
2021-03-15 19:25:16 -07:00
Girish Ramakrishnan
ca496df535
make box code send emails with STARTTLS
2021-03-14 12:19:37 -07:00
Girish Ramakrishnan
79d37cf361
update redis
2021-03-12 14:29:57 -08:00
Girish Ramakrishnan
8cc9fe5504
addons: better error handling
2021-03-12 14:17:19 -08:00
Girish Ramakrishnan
ec5966b2f5
6.3.0 changes
2021-03-12 10:54:39 -08:00
Girish Ramakrishnan
825835b3d1
mail: allow TLS from internal hosts
...
We need to only provide a cert that matches the MX record
https://serverfault.com/questions/389413/what-host-name-should-the-ssl-certificate-for-an-smtp-server-contain
2021-03-12 10:44:42 -08:00
Girish Ramakrishnan
1e96606110
error.code is a number which causes crash at times in BoxError
2021-03-12 10:10:49 -08:00
Girish Ramakrishnan
3ee3786936
6.2.4 changes
2021-03-11 19:00:34 -08:00
Girish Ramakrishnan
c4d60bde83
another export crash fix
...
we export using the old addon containers, which has a bug that it crashes
when db is missing. so, we have to skip them already. the crash then causes
future exports to also fail because it is restarting.
2021-03-11 18:55:37 -08:00
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
Johannes Zellner
b1109ba6ea
Only require the GCS key when this backup provider is selected
2018-01-17 19:38:05 +01:00
Johannes Zellner
7700d236a5
Create new changes for 1.9.1
2018-01-16 22:02:09 +01:00
Johannes Zellner
b10abb1944
Attempt to bring existing logs or terminal window to the front
2018-01-16 19:09:33 +01:00
Johannes Zellner
dd6eeac000
Do not source the xterm assets in the main app
2018-01-16 16:49:34 +01:00
Johannes Zellner
7b8bb5dac4
Add js-terminal task to the default task chain for gulp
2018-01-16 16:49:17 +01:00
Johannes Zellner
bf444a722d
Remove debug entry from main menu
2018-01-16 16:32:56 +01:00
Johannes Zellner
a954a23add
Add terminal action to apps grid
2018-01-16 16:30:15 +01:00
Johannes Zellner
98aa785ad0
Add showTerminal button to logs view
2018-01-16 16:24:32 +01:00
Johannes Zellner
ee485d8b2a
Add separate terminal window
2018-01-16 16:24:18 +01:00
Girish Ramakrishnan
081b596ebf
add note that the migration is br0ken
2018-01-15 20:18:32 -08:00
Girish Ramakrishnan
56f4cbe44a
Fix double callback invocation in cleanupBackup
2018-01-15 20:08:55 -08:00
Girish Ramakrishnan
ab5b754c22
Add adminFqdn to update params
2018-01-15 13:47:26 -08:00
Johannes Zellner
f030aa95ba
Open logs viewer in new window
2018-01-15 16:29:17 +01:00
Johannes Zellner
bad947e2ac
Add separate logs viewer
2018-01-15 16:29:03 +01:00
Johannes Zellner
02b43382c8
Remove logs view from the main angular app
2018-01-15 16:28:19 +01:00
Johannes Zellner
4ed35c25a5
Align text size in account and settings view
2018-01-15 14:52:25 +01:00
Johannes Zellner
0d4f963756
Ensure we use the same collation on all tables
...
This is required since some older cloudrons have a mixed bag of
collations and thus charsets and we add foreign keys across those, which
require the same collation
2018-01-15 11:01:35 +01:00
Girish Ramakrishnan
1139c077b0
Fix usage of domain.provider
2018-01-12 09:25:33 -08:00
Girish Ramakrishnan
84afdb2e3a
remove broken links
2018-01-11 15:14:14 -08:00
Girish Ramakrishnan
115f9b408f
cloudron-setup: Add adminFqdn
2018-01-11 15:11:49 -08:00
Girish Ramakrishnan
d6ce51dabd
Various minor UI fixes
2018-01-11 13:56:51 -08:00
Girish Ramakrishnan
54bc4b32c8
provider cannot be empty string
2018-01-11 11:05:37 -08:00
Girish Ramakrishnan
6537cf700f
Fix crash in apps.clone
2018-01-11 10:59:30 -08:00
Johannes Zellner
c5e0b45b22
setupdns view needs to query other domains during migration
...
The risk for cross site scripting during Cloudron setup is very small
2018-01-11 16:52:39 +01:00
Johannes Zellner
cbfd7cf1a6
Make the new domain available to setupdns view on migration
2018-01-11 16:48:28 +01:00
Johannes Zellner
e96199927d
Do not show migrate button for already active domain
2018-01-11 14:57:29 +01:00
Johannes Zellner
a67d690291
Ensure we can migrate caas Cloudrons back to caas domain
2018-01-11 14:33:09 +01:00
Girish Ramakrishnan
30ddda723d
typo
2018-01-11 01:00:15 -08:00
Girish Ramakrishnan
d9bf2f1724
If oldConfig.domain is missing use config.fqdn()
...
do this in configure() because the code asserts on domain being
a string
2018-01-11 00:35:27 -08:00
Girish Ramakrishnan
915cfbe7dd
Remove use of isCustomDomain
...
Use adminFqdn instead as needed
2018-01-11 00:35:12 -08:00
Girish Ramakrishnan
aeb883623b
handle location being empty
2018-01-11 00:31:51 -08:00
Girish Ramakrishnan
2d163c1e76
caas: do not special case handling of naked domains
...
on the caas side, adding naked domain is removed as well
2018-01-11 00:13:16 -08:00
Girish Ramakrishnan
74e79c00fc
Fix cert api selection
2018-01-11 00:05:35 -08:00
Girish Ramakrishnan
f87f92708b
Fix waitForDNSRecord with external domain
2018-01-10 23:50:59 -08:00
Girish Ramakrishnan
b2ff16eb1e
Do not save intrinsicFqdn in db
2018-01-10 23:44:46 -08:00
Girish Ramakrishnan
0c9f557d21
let unregisterSubdomain succeed if domain was removed
2018-01-10 23:17:07 -08:00
Girish Ramakrishnan
f7dd8c0a23
Do not rewrap domain errors
2018-01-10 23:16:46 -08:00
Girish Ramakrishnan
3067e0940d
compare with adminFqdn instead of adminLocation
2018-01-10 18:14:29 -08:00
Girish Ramakrishnan
969fba83ea
Do not use config.fqdn to determine application name
2018-01-10 15:44:12 -08:00
Girish Ramakrishnan
70a15d01c9
Remove use of isCustomDomain in tokens.html
2018-01-10 14:13:43 -08:00
Girish Ramakrishnan
efc0a3b68d
Remove usage of config.appFqdn()
2018-01-10 13:58:05 -08:00
Girish Ramakrishnan
c108cd2d5f
Set max email recepient limit (in outgoing emails) to 500
2018-01-10 11:42:41 -08:00
Girish Ramakrishnan
e67f023a56
Remove unused variable
2018-01-09 21:09:10 -08:00
Girish Ramakrishnan
208e4267df
Fix validateHostname to handle empty location
2018-01-09 18:17:09 -08:00
Girish Ramakrishnan
92b6464cd7
caas: fix migration of zoneName into domains table
2018-01-09 17:50:04 -08:00
Girish Ramakrishnan
ab66c8cb81
debug the zoneName in waitForDns
2018-01-09 16:09:47 -08:00
Girish Ramakrishnan
2ac12de204
Add domains.provider
2018-01-09 15:32:49 -08:00
Girish Ramakrishnan
373c003223
provider is always set in domain config
2018-01-09 14:25:58 -08:00
Girish Ramakrishnan
f236bd3316
remove isCustomDomain usage from the UI
...
This also adds domains.provider that we should add to the db itself
at some point
2018-01-09 11:00:32 -08:00
Girish Ramakrishnan
9d386bd071
Fix indent
2018-01-09 10:15:35 -08:00
Girish Ramakrishnan
665aa2ad3d
Open the logs in new tab
2018-01-08 17:41:31 -08:00
Girish Ramakrishnan
e8ca423ac4
make setupdns try to get status forever
...
During domain migration, the box code restarts. the getStatus() will
fail temporarily. In the future, we can make this code forward to
error.html after a few retries.
2018-01-08 17:34:28 -08:00
Girish Ramakrishnan
a53214cb29
Call jquery event handlers in $scope.$apply
...
This causes all sorts of strange race conditions when $location.path()
is changed by the hide and hidden events handlers
2018-01-08 17:30:50 -08:00
Girish Ramakrishnan
af4296e40c
Fix periodic fetching of apps/config/profile
...
All these are already fetched the first time in main.js
* Fetch apps periodically only in the apps view. This is mostly for the
installationState. We can optimize this a bit more later depending on
if any app is in non-running state.
* profile hardly changes, no need to fetch this over and over
* config hardly changes, but is fetched primarily for the update flag
2018-01-08 16:17:02 -08:00
Girish Ramakrishnan
50d396725e
Update app state immediately on dialog close
2018-01-08 14:53:28 -08:00
Girish Ramakrishnan
e0c894d333
remove redundant call to fetch user info
...
main.js already does this
2018-01-08 14:21:25 -08:00
Girish Ramakrishnan
044c25311f
add note on why we only use href and not the hostname
2018-01-08 14:21:16 -08:00
Girish Ramakrishnan
d56575facf
Add autofocus to error and info dialogs
2018-01-08 14:21:04 -08:00
Girish Ramakrishnan
05775a843d
Keep apps sorted
2018-01-08 14:16:07 -08:00
Johannes Zellner
5261831ca2
We have a new year
2018-01-08 12:12:55 +01:00
Johannes Zellner
b0c967ba57
Remove logging parts from terminal/debug view
2018-01-08 11:51:10 +01:00
Johannes Zellner
2902c6ca7a
Add logs button in app grid
2018-01-08 11:09:46 +01:00
Johannes Zellner
0c5aea2fb2
Add separate logs view with deep-linking support
2018-01-08 11:05:14 +01:00
Girish Ramakrishnan
de2999cb56
tarjs is not used anymore
2018-01-07 18:34:36 -08:00
Girish Ramakrishnan
28c1a70ae1
Fix display of app install dialog when no version is provided
2018-01-05 11:58:53 -08:00
Girish Ramakrishnan
ff4d3de1b1
redirect to setupdns instead since it will redirect to new domain automatically
2018-01-02 17:34:53 -08:00
Girish Ramakrishnan
ac4f12447b
add set admin button
2018-01-02 16:25:30 -08:00
Girish Ramakrishnan
325814e7ca
Display the add domain button for caas
2018-01-02 14:52:27 -08:00
Girish Ramakrishnan
00728dc833
caas: move getBoxAndUserDetails
2018-01-02 13:05:30 -08:00
Girish Ramakrishnan
c95684af1e
Move caas heartbeat code to caas.js
2018-01-02 12:47:33 -08:00
Girish Ramakrishnan
0a80bff055
Fix indent
2018-01-01 20:09:04 -08:00
Girish Ramakrishnan
9e7b10860d
webterminal: Sort entries in dropdown based on location
2017-12-27 07:23:16 -08:00
Girish Ramakrishnan
41eab11641
Add 1.8.5 changes
2017-12-26 07:06:50 -08:00
Girish Ramakrishnan
b7abf404f3
Display external error if appstore download fails
2017-12-26 07:06:08 -08:00
Girish Ramakrishnan
dc644570f7
Use updateConfig addons instead of manifest addons to setup
...
Even though app.manifest variable is updated by updatedApp, the
setupAddons is called with the _old_ value because it is a bind()
2017-12-21 01:07:40 -08:00
Girish Ramakrishnan
c4cb6b5819
lint
2017-12-21 01:04:38 -08:00
Girish Ramakrishnan
b7e9f0ed12
Add debug for oauth addon setup
2017-12-21 00:50:53 -08:00
Girish Ramakrishnan
46df1d694a
gcs: display prefix in restore UI
2017-12-20 09:32:29 -08:00
Girish Ramakrishnan
3efe8e3393
gcs: add to restore UI
2017-12-20 02:06:55 -08:00
Girish Ramakrishnan
e4b12f0c4e
gcs: make testfile deletion work
...
It seems there is a race where the delete gets triggered even before the
file upload is complete. as a result, the delete succeeds but the file
is left on gcs.
2017-12-16 21:36:33 +05:30
Girish Ramakrishnan
61b56d4679
gcs: keyFilename is not used
...
also, some linter fixes
2017-12-16 21:36:29 +05:30
Girish Ramakrishnan
051ac21fed
gcs: make prefix visible
2017-12-15 21:47:54 +05:30
Girish Ramakrishnan
892bd86810
gcs: gcsKey.content is not loaded properly
2017-12-15 21:21:28 +05:30
Girish Ramakrishnan
5c4ae6066d
gcs: lint
2017-12-15 17:34:09 +05:30
Girish Ramakrishnan
a35e048665
gcs: oldFilePath is not defined
2017-12-15 17:31:05 +05:30
Girish Ramakrishnan
48f6c39ae5
gcs: Make requires alphabetical
2017-12-15 17:28:45 +05:30
Girish Ramakrishnan
be03bd2c5b
shrinkwrap is gone
2017-12-15 17:09:46 +05:30
Girish Ramakrishnan
f108376b25
8.9.3 is required
2017-12-15 17:05:48 +05:30
Girish Ramakrishnan
70e23ed394
Add package-lock.json
...
https://github.com/npm/npm/pull/16441 has a TLDR
2017-12-15 17:03:37 +05:30
Girish Ramakrishnan
5fbfb7365f
Waiting -> Pending
2017-12-15 16:58:38 +05:30
Girish Ramakrishnan
678865fa2a
Fix npm warnings
...
npm WARN The package gulp-sass is included as both a dev and production dependency.
npm WARN The package hock is included as both a dev and production dependency.
npm WARN The package request is included as both a dev and production dependency.
2017-12-15 16:56:54 +05:30
Girish Ramakrishnan
943dc14bf0
Update shrinkwrap for latest node
2017-12-15 16:53:31 +05:30
Girish Ramakrishnan
c3919592ff
1.9.0 changes
2017-12-15 16:49:14 +05:30
Girish Ramakrishnan
442eb8a518
Update node to 8.9.3 LTS
2017-12-15 16:47:11 +05:30
Girish Ramakrishnan
192e4f0a75
gulp-ejs added an options param
2017-12-12 14:07:20 +05:30
Johannes Zellner
921550e3ed
Make mocha call process.exit for each run to avoid lingering server instances
2017-12-10 17:49:23 +01:00
Girish Ramakrishnan
7d0cf1a754
caas: migrate -> change_plan
2017-12-09 09:00:10 +05:30
Girish Ramakrishnan
6dec02e1bd
caas: refactor migrate and upgrade route
2017-12-09 08:43:59 +05:30
Girish Ramakrishnan
14fc066af7
gcs: Add missing label and keep the listing sorted
2017-12-09 05:40:31 +05:30
Girish Ramakrishnan
8fbad34716
Update shrinkwrap
2017-12-08 06:28:13 +05:30
Girish Ramakrishnan
75a344a316
Merge branch 'feature/gcs' into 'master'
...
Adding Google Cloud Storage support for Backups
See merge request cloudron/box!18
2017-12-08 00:51:54 +00:00
Girish Ramakrishnan
3b8d500636
1.8.4 changes
2017-12-07 20:20:41 +05:30
Girish Ramakrishnan
a83bce021b
Bump mail container for internal email relay fix
2017-12-07 20:20:09 +05:30
Girish Ramakrishnan
725cf297ab
Developer scope is obsolete
2017-12-07 04:33:49 +05:30
Aleksandr Bogdanov
5a2de0bcbb
Merge remote-tracking branch 'origin/master' into feature/gcs
...
# Conflicts:
# webadmin/src/views/certs.js
# webadmin/src/views/settings.js
2017-12-06 22:47:26 +01:00
Girish Ramakrishnan
cb814a50d7
Fix waitForDNSRecord for subdomain installations
2017-12-06 12:31:25 +05:30
Girish Ramakrishnan
5d34559f0a
Fix hostname validation
2017-12-06 07:13:46 +05:30
Girish Ramakrishnan
91ede59241
cloudron-setup: move backupConfig default as migration script
...
if in autoprovision, then the backupConfig ends up being overwritten
after a restore.
2017-12-05 18:21:25 +05:30
Girish Ramakrishnan
778342906e
cloudron-setup: remove dnsConfig
...
this is not really used since dns setup is the first step now
2017-12-05 18:09:25 +05:30
Girish Ramakrishnan
c42f3341ca
cloudron-setup: Add back restore-url and key for pre-1.9
2017-12-05 16:01:16 +05:30
Girish Ramakrishnan
a838b4c521
cloudron-setup: keep pre-1.9 compat for configs
2017-12-05 15:56:47 +05:30
Girish Ramakrishnan
44d4934546
cloudron-setup: create autoprovision.json
2017-12-05 14:55:06 +05:30
Girish Ramakrishnan
49db0d3641
cloudron-setup: remove boxVersionsUrl
2017-12-05 14:53:26 +05:30
Girish Ramakrishnan
2bebed2c19
Add fqdn to caas domain config
2017-12-05 07:16:00 +05:30
Girish Ramakrishnan
2cf2dddcee
Fix display of DNS records when not using cloudron-smtp
...
Fixes #492
2017-12-04 21:24:17 +05:30
Girish Ramakrishnan
306e11ae88
Remove unused requires
2017-12-04 17:10:06 +05:30
Girish Ramakrishnan
568397ec19
caas: send ids in backupDone instead of filenames
2017-11-29 12:39:10 -08:00
Girish Ramakrishnan
459314df17
lock for platform start, so that apps are not installed in between
2017-11-28 23:18:43 -08:00
Girish Ramakrishnan
693bc094cc
caas: make fqdn part of dns and s3 credentials
2017-11-28 22:44:40 -08:00
Girish Ramakrishnan
9cdd2df696
set restoring to false
2017-11-28 15:01:59 -08:00
Girish Ramakrishnan
e9b308bb95
Re-purpose the zoneName as the caas domain
2017-11-28 15:00:38 -08:00
Girish Ramakrishnan
432a369bff
Add token to dnsConfig
2017-11-28 15:00:38 -08:00
Girish Ramakrishnan
76312495fd
Add debug
2017-11-28 15:00:33 -08:00
Girish Ramakrishnan
126d8b9bec
stringify and a typo
2017-11-28 02:30:35 -08:00
Girish Ramakrishnan
d001647704
Change path of autoprovision.conf since /root is not readable
2017-11-28 01:23:10 -08:00
Girish Ramakrishnan
8701b36123
make dnsSetup return any provisioning error
2017-11-28 01:20:18 -08:00
Girish Ramakrishnan
c56a24d4fb
Autoprovision from autoprovision.json
...
This is done so that CaaS restore code path can provision correctly
2017-11-27 22:41:32 -08:00
Girish Ramakrishnan
e6eb54d572
More test fixing
2017-11-27 18:19:20 -08:00
Girish Ramakrishnan
68c26c1d12
Fix route/ tests
2017-11-27 16:01:52 -08:00
Girish Ramakrishnan
437312811d
wrap seconds
2017-11-27 15:41:37 -08:00
Girish Ramakrishnan
68d4e70823
Add config._reset to tests
2017-11-27 15:27:54 -08:00
Girish Ramakrishnan
74f3a4dd6f
remove redundant after()
2017-11-27 14:10:27 -08:00
Girish Ramakrishnan
3a74babcf4
Fix error message
2017-11-27 13:59:56 -08:00
Girish Ramakrishnan
ab2f2c9aab
Remove setTimeout from cron.js
...
this causes scripts to not end since the timeout is not killed
2017-11-27 13:43:25 -08:00
Girish Ramakrishnan
8b11692e37
cron: ensure all jobs are cleaned up
2017-11-27 12:44:04 -08:00
Girish Ramakrishnan
abe04d7d10
ldap: call client.unbind
2017-11-27 12:14:31 -08:00
Girish Ramakrishnan
efe75f0c4e
make tests finish
...
database.uninitialize must be called to drop the connection
2017-11-27 11:57:09 -08:00
Girish Ramakrishnan
b6c20877ea
lint
2017-11-27 10:43:12 -08:00
Girish Ramakrishnan
172d5bbdff
Remove obsolete setting (now migrated into domains table)
2017-11-24 22:45:32 -08:00
Girish Ramakrishnan
6ed7a91cf9
rename migration timestamps so they appear in correct order
...
The following migrations are already released in 1.8.3:
20171116203507-apps-rename-newConfigJson-to-updateConfigJson.js
20171116224051-apps-rename-lastBackupId-to-restoreConfigJson.js
2017-11-24 22:39:29 -08:00
Johannes Zellner
61a7f1a126
mailer.start() is gone remove from test
2017-11-25 00:47:00 +01:00
Johannes Zellner
ba49c1e30c
Remove accidentally commited debug lines
2017-11-25 00:39:44 +01:00
Girish Ramakrishnan
ca5b69a07d
Fix db export/import
2017-11-24 15:31:06 -08:00
Girish Ramakrishnan
998f736e6f
Add database.exportToFile
2017-11-24 15:29:56 -08:00
Girish Ramakrishnan
969f8ad11f
Add 1.9.0 changes
2017-11-24 14:58:43 -08:00
Johannes Zellner
34ec09588a
no need for a special test setup handling in the migration script
2017-11-24 23:48:59 +01:00
Johannes Zellner
4091315589
Make migration down fail if the table cannot be dropped
2017-11-24 23:48:39 +01:00
Johannes Zellner
91fb45584f
Add some changes
2017-11-24 23:01:34 +01:00
Girish Ramakrishnan
180a455299
remove mailer.start and stop
2017-11-24 13:58:40 -08:00
Girish Ramakrishnan
a77bf54df7
cron.initialize is required in domain setup for heartbeats
2017-11-24 13:56:34 -08:00
Girish Ramakrishnan
74abce99ac
Fix some typos in restore api
2017-11-23 16:37:40 -08:00
Johannes Zellner
b2d27ee26a
add 1.8.3 changes
2017-11-24 01:31:15 +01:00
Johannes Zellner
1466104681
Remove obsolete developer mode
2017-11-24 01:31:15 +01:00
Girish Ramakrishnan
4acd0bcdac
Remove --restore-url and --restore-key
2017-11-23 13:33:41 -08:00
Girish Ramakrishnan
f9f2bd5c28
Fix crash
2017-11-23 13:17:07 -08:00
Girish Ramakrishnan
a752b7139f
Add a break
2017-11-23 12:54:25 -08:00
Girish Ramakrishnan
2becf674ee
fix wording
2017-11-23 12:42:46 -08:00
Girish Ramakrishnan
ef2c44ee2f
Instead of exact match, only require major+minor to match
2017-11-23 12:36:43 -08:00
Girish Ramakrishnan
a5e5324f97
Add note about restore in setupdns page
2017-11-23 12:19:06 -08:00
Girish Ramakrishnan
479261bcec
add restore UI
...
Add a link from setup page to restore
Part of #439
2017-11-22 23:08:59 -08:00
Girish Ramakrishnan
ac94a0b7f2
Add route to restore box from backup
...
Part of #439
2017-11-22 23:08:59 -08:00
Girish Ramakrishnan
0f191324fa
Add backups.restore to import from box backup
...
Part of #439
2017-11-22 23:08:59 -08:00
Girish Ramakrishnan
b507ccaa33
Add database.importFileFile
...
Part of #439
2017-11-22 23:08:59 -08:00
Girish Ramakrishnan
9f6bc0b779
Start platform only on activated
2017-11-22 23:08:28 -08:00
Girish Ramakrishnan
7306f1ddea
chown the toplevel mail directory
...
this helps the restore box logic extract without sudo
2017-11-22 23:08:01 -08:00
Girish Ramakrishnan
dc1d10837b
split read/parse of fsmetadata
2017-11-22 23:07:52 -08:00
Girish Ramakrishnan
f58d6c04cc
Add DO spaces ams3
2017-11-22 21:03:38 -08:00
Girish Ramakrishnan
f9dda85a38
Fix error code handling
2017-11-22 21:03:34 -08:00
Johannes Zellner
8773c0f6e1
Remove unused requires
2017-11-23 02:36:33 +01:00
Girish Ramakrishnan
72a96c0d6a
lint
2017-11-22 12:19:05 -08:00
Girish Ramakrishnan
136ee363a8
Make backups.download take backupConfig
2017-11-22 10:38:04 -08:00
Girish Ramakrishnan
9c5965311f
Handle billing required error in clone
2017-11-22 09:05:06 -08:00
Girish Ramakrishnan
78bd819a36
fix indent
2017-11-21 19:18:03 -08:00
Girish Ramakrishnan
48df8b713d
add note on enableBackup
2017-11-21 18:09:44 -08:00
Girish Ramakrishnan
0e15fabf88
Do not put app in errored state if backup fails
...
this will end up sending an email but will put the app itself back
in installed state
Fixes #468
2017-11-21 15:59:25 -08:00
Johannes Zellner
ed83a11248
Hide domain actions
2017-11-21 23:05:07 +01:00
Johannes Zellner
8d69e5f3b9
More test cleanups to support domains api
2017-11-21 02:46:20 +01:00
Girish Ramakrishnan
5dab697fd6
Display backup progress in caas
2017-11-20 14:37:36 -08:00
Johannes Zellner
a94d5d1b3e
Add domains REST api tests
2017-11-20 22:53:14 +01:00
Johannes Zellner
9c0af8b13e
Fixing sysadmin, settings and clients tests
2017-11-20 20:01:50 +01:00
Johannes Zellner
a08ff89b78
Fix ldap and dns tests
2017-11-20 20:01:50 +01:00
Johannes Zellner
2e06724927
Add mailboxes unique name/domain constraint
2017-11-20 20:01:50 +01:00
Johannes Zellner
f7c7a36fc1
We reuse appFqdn() here for the webadmin
2017-11-20 20:01:50 +01:00
Johannes Zellner
748d1b8471
webadmin: Hide domain actions for caas managed domains
2017-11-20 20:01:50 +01:00
Johannes Zellner
032200b20f
cloudron addDnsRecords needs to provide subdomain and domain separately
2017-11-20 20:01:50 +01:00
Johannes Zellner
4cbb751d82
Fix usage of appFqdn in caas dns backend
2017-11-20 20:01:50 +01:00
Johannes Zellner
27e4f0cb82
make *DNSRecords apis take the explicit domain
2017-11-20 20:01:50 +01:00
Johannes Zellner
321bfc6130
Create initial domain record in start.sh if fqdn was provided
2017-11-20 20:01:50 +01:00
Johannes Zellner
635426c37e
Drop mailboxes primary key in favor of name+domain constraint
2017-11-20 20:01:50 +01:00
Johannes Zellner
33e7c8e904
Create the admin group only on owner creation
...
For new cloudrons this will first remove the previously added group and
mailbox entry from the db migration scripts and readds it once we have a
domain on owner creation
2017-11-20 20:01:50 +01:00
Johannes Zellner
616b4b86d8
Reword the dns setup page to indicate more domains can be added later
2017-11-20 20:01:50 +01:00
Johannes Zellner
e3e6fd2bc9
For new cloudrons, the migration scripts cannot rely on an existing
...
domain
2017-11-20 20:01:50 +01:00
Johannes Zellner
07626dacb5
Ensure certificates needs to be multidomain aware
2017-11-20 20:01:50 +01:00
Johannes Zellner
bf711c6ebb
allow to set domain specific fallback certs
2017-11-20 20:01:50 +01:00
Johannes Zellner
a4a3e19a92
Remove configJson field for domain records in postprocess
2017-11-20 20:01:50 +01:00
Johannes Zellner
16db4ac901
Make app configure domain aware
2017-11-20 20:01:50 +01:00
Johannes Zellner
78d6b6d632
Put app configure dialog helper in the correct scope
2017-11-20 20:01:50 +01:00
Johannes Zellner
009b8abf1b
dns api now takes full fqdn instead of subdomain
2017-11-20 20:01:50 +01:00
Johannes Zellner
4edd874695
webadmin: add client.getDomain()
2017-11-20 20:01:50 +01:00
Johannes Zellner
dda403caa9
Only show domains in apps view if there are more than one
2017-11-20 20:01:50 +01:00
Johannes Zellner
de44796b6f
Handle errors if domain is still used on deletion attempt
2017-11-20 20:01:50 +01:00
Johannes Zellner
53e3626e51
More test fixes for config database and settings
2017-11-20 20:01:50 +01:00
Johannes Zellner
9aa4fdc829
Fixup the dns provider tests
2017-11-20 20:01:50 +01:00
Johannes Zellner
1ccc3b84b8
Fixup various tests for multidomain
2017-11-20 20:01:50 +01:00
Johannes Zellner
d4b6768464
Fixup validateHostname and related tests
2017-11-20 20:01:50 +01:00
Johannes Zellner
6e07a4ec08
Fixup database tests
2017-11-20 20:01:50 +01:00
Johannes Zellner
1cee0f3831
Fix unregisterSubdomain to work during migration from single to multidomain
...
oldConfig.domain was previously not there and thus might be missing
still
2017-11-20 20:01:50 +01:00
Johannes Zellner
a52747cde0
Avoid logging 'undefined' on success, this looks like a bug otherwise
2017-11-20 20:01:50 +01:00
Johannes Zellner
14d575f514
Make mailboxdb aware of domain field
2017-11-20 20:01:50 +01:00
Johannes Zellner
e43e904622
Refactor all app.location usages to config.appFqdn(app)
2017-11-20 20:01:50 +01:00
Johannes Zellner
1dfa689d1c
Make apptask subdomain cleanup multidomain aware
2017-11-20 19:59:40 +01:00
Johannes Zellner
293e401852
Store domain alongside with location in apps oldConfig
2017-11-20 19:59:40 +01:00
Johannes Zellner
c565d0789e
webadmin: Show domain where the app is installed
2017-11-20 19:59:40 +01:00
Johannes Zellner
59ae1ac012
Move fallback certificate api to domains
2017-11-20 19:59:40 +01:00
Johannes Zellner
4cf2978088
Remove dns related settings api
...
This is replaced with the multi domain aware api
2017-11-20 19:59:40 +01:00
Johannes Zellner
707d34cb89
Make app install dialog multi domain aware
2017-11-20 19:59:40 +01:00
Johannes Zellner
20a37030b6
The domain update route returns 204 not 202
2017-11-20 19:59:40 +01:00
Johannes Zellner
e1be8b669f
Do not rely on admin subdomain for dns backend config validation
2017-11-20 19:59:40 +01:00
Johannes Zellner
c723b289dc
Only validate the nameservers for manual dns backend
2017-11-20 19:59:40 +01:00
Johannes Zellner
7c51c380ae
webadmin: Refactor the domains view
2017-11-20 19:59:40 +01:00
Johannes Zellner
d75959772c
Add more error handling for domains update route
2017-11-20 19:59:40 +01:00
Johannes Zellner
37e23c9465
Add zoneName support to domains rest API
2017-11-20 19:59:40 +01:00
Johannes Zellner
21c8f63dc1
weadmin: Add domain REST api wrapper
2017-11-20 19:59:40 +01:00
Johannes Zellner
ca3b6e542a
Require password for domain deletion route
2017-11-20 19:59:40 +01:00
Johannes Zellner
3e4466a41e
Fix appdb.add sql query
2017-11-20 19:59:40 +01:00
Johannes Zellner
c1b5f56ac6
Send domain with app install request
2017-11-20 19:59:40 +01:00
Johannes Zellner
28c3ef772e
Ensure we pass full fqdn to domains api from apptask
2017-11-20 19:59:40 +01:00
Johannes Zellner
f1b23005c9
Fix appFqdn() usage to match new api
2017-11-20 19:59:40 +01:00
Johannes Zellner
143ba831f4
Make appFqdn() multidomain aware
2017-11-20 19:59:40 +01:00
Johannes Zellner
5ca31f2484
Send domain as part of the apps routes
2017-11-20 19:59:40 +01:00
Johannes Zellner
5c272fe5d9
Make appdb domain aware
2017-11-20 19:59:40 +01:00
Johannes Zellner
155877534f
Fixup apps.validateHostname()
2017-11-20 19:59:26 +01:00
Johannes Zellner
a2a1d842fa
Add db migration scripts
...
This adds domains table and adjusts the apps and mailboxes table accordingly
Also ensure we explicitly set the table collation, this is required
for the foreign key from apps table (utf8) and the newly created
domains table, which by default now would be utf8mb4
Put db table constraint for mailboxes.domain
Update the schema file
2017-11-20 19:59:26 +01:00
Johannes Zellner
260ac0afb7
Remove subdomains.js in favor of multidomain capable domains.js
2017-11-20 19:59:26 +01:00
Johannes Zellner
fb9372d93e
Remove unused dns config change event
2017-11-20 19:59:26 +01:00
Johannes Zellner
eb65f9e758
Remove default settings key for DNS_CONFIG
2017-11-20 19:59:26 +01:00
Johannes Zellner
3265d7151c
Migrate dns test to domains.js
2017-11-20 19:59:26 +01:00
Johannes Zellner
597af2e034
Do not send obsolete settings.dnsConfig with alive status
2017-11-20 19:59:26 +01:00
Johannes Zellner
0b8f0bf731
Remove subdomains usage in cloudron.js
2017-11-20 19:59:26 +01:00
Johannes Zellner
a7e10cead0
Use domains api in platform
2017-11-20 19:59:26 +01:00
Johannes Zellner
0e74a6df35
Deprecate dns settings api and add dns data migration
2017-11-20 19:59:26 +01:00
Johannes Zellner
3fbaa385c4
Add DNS record specific functions to domains.js
2017-11-20 19:59:26 +01:00
Johannes Zellner
29637bb4f4
Add basic domain setting validation
2017-11-20 19:59:26 +01:00
Johannes Zellner
9dba816711
Add domain routes
2017-11-20 19:59:26 +01:00
Johannes Zellner
9155f49d4c
Add domaindb logic
2017-11-20 19:59:26 +01:00
Johannes Zellner
0e62780f55
Add domains table
2017-11-20 19:59:26 +01:00
Girish Ramakrishnan
998bc36673
remove manifest arg to backupApp
2017-11-19 17:58:04 -08:00
Girish Ramakrishnan
c2dbc40473
Move version to the top
2017-11-19 16:36:00 -08:00
Girish Ramakrishnan
cd5a14ce47
Use date object instead of string
2017-11-19 16:11:51 -08:00
Girish Ramakrishnan
917122c812
display last updated in app info
2017-11-19 13:20:20 -08:00
Girish Ramakrishnan
21b8b8deba
Fix many links in the readme
2017-11-19 12:16:04 -08:00
Girish Ramakrishnan
44c2aedb57
1.8.2 changes
2017-11-18 02:19:17 -08:00
Girish Ramakrishnan
7e6a83df84
Fix migration callback
2017-11-18 02:11:00 -08:00
Girish Ramakrishnan
ec4910a45e
Fix restore
2017-11-17 22:35:56 -08:00
Girish Ramakrishnan
6558c78094
change the json blobs to text
2017-11-17 15:52:40 -08:00
Girish Ramakrishnan
5df92d1903
remove dead code
2017-11-17 15:18:06 -08:00
Girish Ramakrishnan
05affa7d26
remove dead code
2017-11-17 15:17:50 -08:00
Girish Ramakrishnan
46c6c5a5a8
remove double .js
2017-11-17 14:50:53 -08:00
Girish Ramakrishnan
75da751c72
1.8.1 changes
2017-11-17 14:50:53 -08:00
Johannes Zellner
b84f60671e
Also fix the restoreConfigJson migration down script
2017-11-17 23:45:22 +01:00
Johannes Zellner
8dcb06cb02
Fix db migration down step for newConfigJson change
2017-11-17 23:41:22 +01:00
Girish Ramakrishnan
83bf739081
Update the license
2017-11-17 10:46:12 -08:00
Girish Ramakrishnan
48a52fae2e
LE agreement URL has changed
2017-11-17 10:35:58 -08:00
Girish Ramakrishnan
0ddbda6068
Fix crash
2017-11-16 15:11:12 -08:00
Girish Ramakrishnan
360fa058ea
store format information for restoring
...
fixes #483
2017-11-16 15:01:27 -08:00
Johannes Zellner
489d2022e6
Do not underline errored links
2017-11-16 23:18:50 +01:00
Girish Ramakrishnan
f762d0c0a1
newConfig -> updateConfig
2017-11-16 12:36:07 -08:00
Girish Ramakrishnan
98cad0678d
Handle json parse errors with new body-parser module
2017-11-16 11:47:17 -08:00
Girish Ramakrishnan
92acb2954f
Rename restoreConfig to manifest in backup table
...
Only the manifest needs to be preserved in the backup table
2017-11-16 11:25:40 -08:00
Girish Ramakrishnan
00a6e4c982
Show doc url in info dialog
...
Fixes #486
2017-11-16 10:05:49 -08:00
Girish Ramakrishnan
bf9eb4bd87
Switch the default to logs to show some useful information
2017-11-16 10:05:49 -08:00
Girish Ramakrishnan
2f4940acbd
update modules
2017-11-16 09:34:00 -08:00
Girish Ramakrishnan
9f7ca552a6
handle various appstore errors
2017-11-16 00:23:34 -08:00
Girish Ramakrishnan
4272d5be8a
Send feedback via API
...
Fixes #484
2017-11-15 23:31:13 -08:00
Girish Ramakrishnan
1babfb6e87
Allow admins to access all apps
...
Fixes #420
2017-11-15 19:24:11 -08:00
Girish Ramakrishnan
5663cf45f8
remove redundant reset
2017-11-15 19:08:38 -08:00
Girish Ramakrishnan
d8cb2d1d25
test: reset is already part of setup
2017-11-15 18:56:27 -08:00
Girish Ramakrishnan
174a60bb07
fix linter warnings
2017-11-15 18:56:27 -08:00
Girish Ramakrishnan
3d7094bf28
Handle error in uploadFile
2017-11-15 18:45:23 -08:00
Girish Ramakrishnan
4d6616930a
Fix failing test
2017-11-15 18:41:37 -08:00
Girish Ramakrishnan
24875ba292
Handle all errors and set focus correctly
...
Fixes #485
2017-11-14 18:26:42 -08:00
Johannes Zellner
c58b2677b6
Fixup config tests and do not allow saving random values to the config file
...
Those will eventually be overwritten by start.sh anyways, we cannot rely
on those
2017-11-15 02:41:40 +01:00
Johannes Zellner
25146e1134
Allow tests to work without a cloudron.conf on disk
2017-11-15 02:40:50 +01:00
Johannes Zellner
c0c35964fe
Fix backups tests
2017-11-15 02:29:58 +01:00
Johannes Zellner
0bf9ab0a2b
No need to put static database config in cloudron.conf
2017-11-15 02:29:36 +01:00
Johannes Zellner
6d86f4cbda
Ensure we only save relevant config values
2017-11-15 02:29:07 +01:00
Girish Ramakrishnan
d2741bbeb9
Allow mailTo to be configurable
...
Part of #485
2017-11-14 16:24:34 -08:00
Girish Ramakrishnan
690d02a353
Always show the DNS records in the UI
2017-11-14 15:13:56 -08:00
Johannes Zellner
c629db9597
Remove preinstall app bundle support
2017-11-14 23:09:17 +01:00
Aleksandr Bogdanov
994f771d4d
Merge remote-tracking branch 'origin/master' into feature/gcs
2017-11-14 20:16:12 +01:00
Girish Ramakrishnan
67fcf85abb
Allow restore if already restoring
2017-11-13 18:43:36 -08:00
Girish Ramakrishnan
527eace8f8
Fix j2xml usage
2017-11-13 11:10:42 -08:00
Girish Ramakrishnan
e65230b833
update many dev modules
2017-11-13 10:57:36 -08:00
Girish Ramakrishnan
3e8334040b
Update many node modules
...
also, use rimraf instead of del
2017-11-13 10:57:32 -08:00
Girish Ramakrishnan
2bcd3a8e4d
Add a hack to stretch the multi-select box a bit
2017-11-12 02:50:28 -08:00
Girish Ramakrishnan
e75b85fc3a
Bump postgresql container to workaround shm issues
...
reconfiguring the postgresql configuring seems to fix some shm
issues on docker upgrade
2017-11-11 20:52:34 -08:00
Girish Ramakrishnan
c4362d3339
Fix failing ldap test
2017-11-11 17:33:27 -08:00
Girish Ramakrishnan
85e492a632
Fix detection of container id from IP
...
https://docs.docker.com/engine/api/v1.32/#tag/Network
"Note that it uses a different, smaller representation of a network
than inspecting a single network. For example, the list of containers
attached to the network is not propagated in API versions 1.28 and up."
Verified using:
curl --unix-socket /var/run/docker.sock http::/networks/cloudron
2017-11-11 16:55:43 -08:00
Girish Ramakrishnan
b8d4b67043
update aws-sdk and dockerode
2017-11-11 16:38:40 -08:00
Girish Ramakrishnan
ffacd31259
bump the node version
2017-11-11 16:25:42 -08:00
Johannes Zellner
19f6da88da
Do not disable access control elements if no group was created
...
There are still users to be selected
2017-11-12 00:09:05 +01:00
Girish Ramakrishnan
c0faae4e27
Add more changes for 1.8.0
2017-11-11 11:14:42 -08:00
Girish Ramakrishnan
a19c566eea
Always show info box that displays app version
...
Fixes #478
2017-11-11 11:09:59 -08:00
Girish Ramakrishnan
3ec806452c
Update node to 6.11.5
2017-11-10 19:25:08 -08:00
Girish Ramakrishnan
0c73cd5219
Update docker to 17.09
2017-11-10 18:49:28 -08:00
Girish Ramakrishnan
9b6bf719ff
1.7.8 changes
2017-11-09 09:40:26 -08:00
Girish Ramakrishnan
25431d3cc4
Fix the spacing
2017-11-09 09:29:42 -08:00
Girish Ramakrishnan
e0805df3b1
Only show backup warning if using default location
2017-11-09 09:09:39 -08:00
Girish Ramakrishnan
8392fec570
Remove the bold
2017-11-08 20:57:40 -08:00
Girish Ramakrishnan
1c173ca83f
Add UI to select users for access restriction
2017-11-08 20:54:38 -08:00
Girish Ramakrishnan
05a67db761
backup must be stored in ext4
...
Other file systems like FAT/CIFS can error with cryptic error messages
when saving filenames with special characters such as ':'
2017-11-08 12:26:25 -08:00
Girish Ramakrishnan
bb24d5cf9e
Order eventlog entries by time
2017-11-08 09:14:55 -08:00
Girish Ramakrishnan
8d2fbe931f
Bump max limit to two times ram
...
part of #466
2017-11-07 10:07:05 -08:00
Girish Ramakrishnan
0a8adaac9f
filter out empty usernames from groups
...
Fixes #472
2017-11-06 11:09:40 -08:00
Girish Ramakrishnan
fa6d151325
Fix update mail templates
2017-11-02 21:34:03 -07:00
Girish Ramakrishnan
a7296a0339
Rename filename to backupId in backup eventlog
2017-11-02 18:17:08 -07:00
Girish Ramakrishnan
a6aee53ec2
Filter out failed backups
2017-11-02 18:13:51 -07:00
Girish Ramakrishnan
963ab2e791
More 1.7.7 changes
2017-11-02 16:30:13 -07:00
Girish Ramakrishnan
ca724b8b03
Add cert renewal and user add/remove in weekly digest
2017-11-02 16:30:10 -07:00
Girish Ramakrishnan
88a929c85e
Instead of appstore account, include owner alternate email
2017-11-02 15:10:05 -07:00
Girish Ramakrishnan
2bc0270880
1.7.7 changes
2017-11-02 12:18:51 -07:00
Girish Ramakrishnan
014b77b7aa
Fix LE cert renewal failures
...
LE contacts the server by hostname and not by IP. This means that
when installing and reconfiguring the app it hits the default_server
route since nginx configs for the app are not generated at.
When doing in the daily cert renew, the nginx configs exist and we
are unable to renew the certs.
2017-11-02 11:43:43 -07:00
Girish Ramakrishnan
06f8aa8f29
Remove dead code
...
getNonApprovedCode code flow is ununsed (and broken by design on
the appstore side).
2017-11-02 10:36:30 -07:00
Girish Ramakrishnan
a8c64bf9f7
Clarify heartbeat code
...
heartbeats are not sent for self-hosted cloudrons (only managed ones)
2017-11-02 10:26:21 -07:00
Girish Ramakrishnan
41ef16fbec
link to memory limit docs
2017-11-01 09:25:05 -07:00
Girish Ramakrishnan
2a848a481b
Add newline
2017-11-01 09:25:05 -07:00
Johannes Zellner
3963d76a80
The update dialog does not contain a form anymore
...
Fixes #467
2017-11-01 11:55:06 +01:00
Girish Ramakrishnan
8ede37a43d
Make the dkim selector dynamic
...
it has to change with the adminLocation so that multiple cloudrons
can send out emails at the same time.
2017-10-31 12:18:40 -07:00
Girish Ramakrishnan
36534f6bb2
Fix indent
2017-10-31 12:12:02 -07:00
Girish Ramakrishnan
7eddcaf708
Allow setting app memory till memory limit
...
Fixes #466
2017-10-31 12:12:02 -07:00
Aleksandr Bogdanov
2cad93dfd2
Fixing UI to not require credentials be set (GCP use-case has no credentials field)
2017-10-31 12:33:15 +01:00
Aleksandr Bogdanov
9b1f8febf1
Fixing listDir to support batchSize = -1 for non-chunked listings. Also strings extrapolation fix (ES6)
2017-10-31 11:40:00 +01:00
Girish Ramakrishnan
d8d2572aa1
Keep restarting mysql until it succeeds
...
MySQL restarts randomly fail on our CI systems. This is easily
reproducible:
root@smartserver:~# cp /tmp/mysql.cnf . && systemctl restart mysql && echo "Yes"
Yes
root@smartserver:~# cp /tmp/mysql.cnf . && systemctl restart mysql && echo "Yes"
Yes
root@smartserver:~# cp /tmp/mysql.cnf . && systemctl restart mysql && echo "Yes"
Job for mysql.service failed. See "systemctl status mysql.service" and "journalctl -xe" for details.
There also seems some apparmor issue:
[ 7389.111704] audit: type=1400 audit(1509404778.110:829): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=15618 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=112 ouid=0
The apparmor issue is reported in https://bugs.launchpad.net/ubuntu/+source/mysql-5.7/+bug/1610765 ,
https://bugs.launchpad.net/ubuntu/+source/mysql-5.7/+bug/1658233 and
https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/1658239
2017-10-30 16:14:20 -07:00
Girish Ramakrishnan
96a98a74ac
Move the mysql block
...
The e2e is failing sporadically with:
==> Changing ownership
==> Adding automated configs
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Maybe the dhparam creation is doing something causing mysql to not respond.
2017-10-30 08:03:47 -07:00
Girish Ramakrishnan
d0a244e392
stash adminLocation also
2017-10-29 19:09:03 -07:00
Girish Ramakrishnan
f09c89e33f
Remove confusing batchSize logic from listDir
...
This also fixes a bug in removeDir in DO spaces
thanks to @syn for reporting
2017-10-29 19:04:10 -07:00
Johannes Zellner
d53f0679e5
Also stash the zoneName to settings
2017-10-29 22:40:15 +01:00
Girish Ramakrishnan
527093ebcb
Stash the fqdn in the db for the next multi-domain release
2017-10-29 12:08:27 -07:00
Girish Ramakrishnan
bd5835b866
send adminFqdn as well
2017-10-29 09:36:51 -07:00
Aleksandr Bogdanov
51ca1c7384
Refactoring gcs to match the new storage interface
2017-10-29 11:10:50 +01:00
Girish Ramakrishnan
6dd70c0ef2
acme challenges must be answered by default_server
...
The challenge must be answered even before app nginx config
is available.
2017-10-28 23:39:03 -07:00
Girish Ramakrishnan
acc90e16d7
1.7.6 changes
2017-10-28 21:07:44 -07:00
Girish Ramakrishnan
4b3aca7413
Bump mail container for sogo disconnect fix
2017-10-28 20:58:26 -07:00
Johannes Zellner
8daee764d2
Only require gcdns form input to be valid if that provider is selected
2017-10-28 22:37:56 +02:00
Aleksandr Bogdanov
8d14832c6a
Making gcdns credentials field optional in webadmin
2017-10-28 15:14:23 +02:00
Aleksandr Bogdanov
051d04890b
Adding Google Cloud Storage support
2017-10-28 15:14:23 +02:00
Girish Ramakrishnan
3dedda32d4
Configure http server to only listen on known vhosts/IP
...
For the rest it returns 404
Fixes #446
2017-10-27 00:10:50 -07:00
Girish Ramakrishnan
d127b25f0f
Only set the custom https agent for HTTPS minio
...
Otherwise, we get a Cannot set property ‘agent’ of undefined error
2017-10-26 18:38:45 -07:00
Johannes Zellner
6a2b0eedb3
Add ldap pagination support
2017-10-27 01:25:07 +02:00
Girish Ramakrishnan
8c81a97a4b
Check that the backup location has perms to create a directory
...
The backup itself runs as root and this works fine. But when rotating
the backup, the copy fails because it is unable to create a directory.
2017-10-26 11:41:34 -07:00
Girish Ramakrishnan
d9ab1a78d5
Make the my location customizable
...
Fixes #22
2017-10-25 23:00:43 -07:00
Girish Ramakrishnan
593df8ed49
Do not use ADMIN_LOCATION in tests
2017-10-25 21:38:11 -07:00
Girish Ramakrishnan
b30def3620
move prerelease check to appstore
2017-10-25 21:34:56 -07:00
Johannes Zellner
9c02785d49
Support ldap group compare
...
Fixes #463
2017-10-24 02:00:00 +02:00
Johannes Zellner
f747343159
Cleanup unused port bindings after an update
2017-10-23 22:11:33 +02:00
Johannes Zellner
2971910ccf
Do not accept port bindings on update route
2017-10-23 22:06:28 +02:00
Johannes Zellner
56534b9647
Add appdb.delPortBinding()
2017-10-23 22:05:43 +02:00
Johannes Zellner
a8d26067ee
Allow autoupdates if new ports are added
...
Those will simply be disabled after update and the user has to
enable them through the app configuration
2017-10-20 22:27:48 +02:00
Johannes Zellner
4212e4bb00
Do not show any port binding update ui
2017-10-20 22:27:48 +02:00
Johannes Zellner
7b27ace7bf
Update cloudron-setup help url
2017-10-20 22:13:54 +02:00
Girish Ramakrishnan
d8944da68d
1.7.5 changes
2017-10-19 12:19:10 -07:00
Girish Ramakrishnan
433d797cb7
Add SMTPS port for apps that require TLS connections for mail relay
2017-10-19 12:15:28 -07:00
Girish Ramakrishnan
0b1d940128
cloudscale -> cloudscale.ch
2017-10-19 07:28:07 -07:00
Johannes Zellner
6016024026
Move restore functions into appropriate scope object
2017-10-18 00:40:02 +02:00
Johannes Zellner
e199293229
Further reduce ui flickering on restore
2017-10-18 00:40:02 +02:00
Girish Ramakrishnan
2ebe92fec3
Do not chown mail directory
2017-10-16 23:18:37 -07:00
Girish Ramakrishnan
628cf1e3de
bump mail container for superfluous sa-update supervisor file
2017-10-16 21:16:58 -07:00
Girish Ramakrishnan
9e9aaf68f0
No need to migrate mail data anymore
2017-10-16 21:13:57 -07:00
Girish Ramakrishnan
b595ca422c
1.7.4 changes
2017-10-16 15:28:36 -07:00
Girish Ramakrishnan
9273a6c726
Add option to disable hardlinks
...
We can probably remove this later based on the use
2017-10-16 15:22:40 -07:00
Johannes Zellner
76d00d4e65
Render changelog markdown as html in app update dialog
2017-10-17 00:07:58 +02:00
Johannes Zellner
668c03a11b
Give visual feedback in the restore dialog when fetching backups
2017-10-16 22:31:49 +02:00
Girish Ramakrishnan
1e72d2d651
remove debugs (too noisy)
2017-10-16 12:34:09 -07:00
Girish Ramakrishnan
89fc8efc67
Save as empty array if find output is empty
2017-10-16 10:54:48 -07:00
Girish Ramakrishnan
241dbf160e
Remove Unused required
2017-10-15 14:07:03 -07:00
Girish Ramakrishnan
e46bdc2caa
Force the copy just like tar --overwrite
2017-10-13 23:23:36 -07:00
Girish Ramakrishnan
e1cb91ca76
bump mail container
2017-10-13 22:36:54 -07:00
Girish Ramakrishnan
709c742c46
Fix tests
2017-10-12 21:14:13 -07:00
Girish Ramakrishnan
ecad9c499c
Port binding conflict can never happen in update route
2017-10-12 21:04:38 -07:00
Girish Ramakrishnan
ed0879ffcd
Stop the app only after the backup completed
...
App backup can take a long time or possibly not work at all. For such
cases, do not stop the app or leave it in some errored state.
newConfigJson is the new config to be updated to. This ensures that
the db has correct app info during the update.
2017-10-12 18:10:41 -07:00
Girish Ramakrishnan
61e2878b08
save/restore exec bit in files
...
this covers the case where user might stash some executable files
that are used by plugins.
2017-10-12 16:18:11 -07:00
Girish Ramakrishnan
d97034bfb2
Follow backup format for box backups as well
2017-10-12 11:02:52 -07:00
Girish Ramakrishnan
21942552d6
Clarify the per-app backup flag
2017-10-12 11:02:52 -07:00
Girish Ramakrishnan
dd68c8f91f
Various backup fixes
2017-10-12 11:02:48 -07:00
Girish Ramakrishnan
28ce5f41e3
handle errors in log stream
2017-10-11 12:55:56 -07:00
Girish Ramakrishnan
5694e676bd
Set default rentention to a week
2017-10-11 12:55:55 -07:00
Girish Ramakrishnan
db8c5a116f
Typo
2017-10-11 10:30:03 -07:00
Girish Ramakrishnan
fa39f0fbf3
Add 1.7.3 changes
2017-10-11 00:50:41 -07:00
Girish Ramakrishnan
1444bb038f
only upload needs to be retried
...
copy/delete are already retried in the sdk code
2017-10-11 00:08:41 -07:00
Girish Ramakrishnan
ac9e421ecf
improved backup progress and logging
2017-10-10 22:49:38 -07:00
Girish Ramakrishnan
b60cbe5a55
move constant
2017-10-10 19:47:21 -07:00
Girish Ramakrishnan
56d794745b
Sprinkle retries in syncer logic
2017-10-10 14:25:03 -07:00
Girish Ramakrishnan
fd3b73bea2
typo in format name
2017-10-10 13:54:54 -07:00
Girish Ramakrishnan
78807782df
Various hacks for exoscale-sos
...
SOS does not like multipart uploads. They just fail randomly.
As a fix, we try to detect filesystem files and skip multipart uploads
for files < 5GB. For > 5GB, we do multipart upload anyways (mostly fails).
The box backup is switched to flat-file for exoscale for the reason
above.
2017-10-10 11:03:20 -07:00
Girish Ramakrishnan
754b29b263
Start out empty if the previous run errored
2017-10-09 20:12:21 -07:00
Girish Ramakrishnan
9f97f48634
Add note on s3ForcePathStyle
2017-10-09 18:46:14 -07:00
Girish Ramakrishnan
815e5d9d9a
graphs: Compute width of system graph from total memory
...
Fixes #452
2017-10-09 14:58:32 -07:00
Girish Ramakrishnan
91ec2eaaf5
sos: "/" must separate bucket and key name
2017-10-09 11:50:22 -07:00
Girish Ramakrishnan
f8d3a7cadd
Bump mail container (fixes spam crash)
2017-10-06 16:45:21 -07:00
Girish Ramakrishnan
d04a09b015
Add note on bumping major infra version
2017-10-06 15:52:04 -07:00
Girish Ramakrishnan
5d997bcc89
Just mark DO Spaces as experimental instead
2017-10-06 14:45:14 -07:00
Girish Ramakrishnan
f0dd90a1f5
listObjectsV2 does not work on some S3 providers
...
specifically, cloudscale does not support it
2017-10-05 12:07:14 -07:00
Girish Ramakrishnan
ee8ee8e786
KeyCount is not set on some S3 providers
2017-10-05 11:36:54 -07:00
Girish Ramakrishnan
ee1a4411f8
Do not crash if prefix is empty string
...
('' || undefined) will return undefined ...
2017-10-05 11:08:01 -07:00
Girish Ramakrishnan
df6e6cb071
Allow s3 backend to accept self-signed certs
...
Fixes #316
2017-10-05 10:14:55 -07:00
Girish Ramakrishnan
ba5645a20e
Disable DO spaces since it is not yet production ready
2017-10-05 09:21:26 -07:00
Girish Ramakrishnan
ca502a2d55
Display error code
2017-10-04 22:34:44 -07:00
Girish Ramakrishnan
ecd53b48db
Display the backup format
2017-10-04 22:11:11 -07:00
Girish Ramakrishnan
b9efb0b50b
Fix callback invokation
2017-10-04 19:28:40 -07:00
Johannes Zellner
3fb5034ebd
Ensure we setup the correct OAuth redirectURI if altDomain is used
2017-10-05 01:10:25 +02:00
Girish Ramakrishnan
afed3f3725
Remove duplicate debug
2017-10-04 15:08:26 -07:00
Girish Ramakrishnan
b4f14575d7
Add 1.7.1 changes
2017-10-04 14:31:41 -07:00
Johannes Zellner
f437a1f48c
Only allow dns setup with subdomain if enterprise query argument is provided
2017-10-04 22:25:14 +02:00
Girish Ramakrishnan
c3d7d867be
Do not set logCallback
2017-10-04 12:32:12 -07:00
Girish Ramakrishnan
96c16cd5d2
remove debug
2017-10-04 11:54:17 -07:00
Girish Ramakrishnan
af182e3df6
caas: cache the creds, otherwise we bombard the server
2017-10-04 11:49:38 -07:00
Girish Ramakrishnan
d70ff7cd5b
Make copy() return event emitter
...
This way the storage logic does not need to rely on progress
2017-10-04 11:02:50 -07:00
Johannes Zellner
38331e71e2
Ensure all S3 CopySource properties are URI encoded
2017-10-04 19:07:08 +02:00
Johannes Zellner
322a9a18d7
Use multipart copy for s3 and files larger than 5GB
2017-10-04 18:56:23 +02:00
Johannes Zellner
423ef546a9
Merge branch 'user_agent' into 'master'
...
Added user agent to health checks
See merge request !19
2017-10-04 11:48:02 +00:00
Dennis Schwerdel
e3f3241966
Added user agent to health checks
2017-10-04 13:05:00 +02:00
Johannes Zellner
eaef384ea5
Improve the invite link display
...
Fixes #445
2017-10-04 13:03:32 +02:00
Girish Ramakrishnan
b85bc3aa01
s3: Must encode copySource
...
https://github.com/aws/aws-sdk-js/issues/1302
2017-10-03 15:51:05 -07:00
Girish Ramakrishnan
01154d0ae6
s3: better error messages
2017-10-03 14:46:59 -07:00
Girish Ramakrishnan
6494050d66
Make removeDir less noisy
2017-10-03 01:22:37 -07:00
Girish Ramakrishnan
8c7223ceed
Fix cleanup logic to use the app backup format
...
box backup and app backup can have different format
2017-10-03 00:56:34 -07:00
Girish Ramakrishnan
21afc71d89
add tests for storage backends
2017-10-02 23:08:16 -07:00
Girish Ramakrishnan
7bf70956a1
fix tests
2017-10-02 18:42:13 -07:00
Girish Ramakrishnan
9e9b8b095e
Provider dhparams.pem to the mail container
2017-10-02 01:51:28 -07:00
Girish Ramakrishnan
0f543e6703
s3: add progress detail
...
this is a bit of a hack and we should add another way to set the progress
(maybe via backups.setProgress or via a progress callback). this is because
some methods like removeDir can be called from backuptask and from box code.
2017-10-01 18:25:51 -07:00
Girish Ramakrishnan
f9973e765c
Add backup cleanup eventlog
2017-10-01 10:35:50 -07:00
Girish Ramakrishnan
e089851ae9
add debugs
2017-09-30 20:36:08 -07:00
Girish Ramakrishnan
c524d68c2f
fix crash when cleaning up snapshots
2017-09-30 20:31:41 -07:00
Girish Ramakrishnan
5cccb50a31
fix backup cleanup logic
2017-09-30 18:38:45 -07:00
Girish Ramakrishnan
3d375b687a
style: Fix quoting
2017-09-30 18:26:38 -07:00
Girish Ramakrishnan
a93d453963
rename flat-file to rsync
...
not a name I like but cannot come up with anything better
https://en.wikipedia.org/wiki/Flat_file_database
the term 'rsync format' seems to be used in a few places
2017-09-30 14:19:19 -07:00
Girish Ramakrishnan
f8ac2d4628
1.7.0 changes
2017-09-30 14:02:06 -07:00
Girish Ramakrishnan
d5ba73716b
add emptydirs test
2017-09-29 15:29:22 -07:00
Girish Ramakrishnan
954224dafb
make syncer track directories
2017-09-29 15:29:18 -07:00
Johannes Zellner
8b341e2bf8
Only make nginx listen on ipv6 connections if it is supported by the system
...
Could not decide on the ejs formatting, never nice for me
2017-09-29 19:43:37 +02:00
Johannes Zellner
78fb9401ee
Add config.hasIPv6()
2017-09-29 19:43:37 +02:00
Girish Ramakrishnan
4a5cbab194
Do not remove parent directory in fs.remove()
...
Do the pruning in the cleanup logic instead
2017-09-28 20:55:45 -07:00
Girish Ramakrishnan
19999abc50
s3: fix restore
2017-09-28 14:35:49 -07:00
Girish Ramakrishnan
5123b669d7
remove options.concurrency
2017-09-28 12:20:15 -07:00
Girish Ramakrishnan
565c8445e1
make backup progress work for per-app backups
2017-09-28 11:17:48 -07:00
Girish Ramakrishnan
404a019c56
s3: Check IsTruncated before accessing Contents
2017-09-28 10:36:56 -07:00
Girish Ramakrishnan
24dee80aa6
Make box backups always tarball based
...
this makes cloudron easy to restore. in the future, if required,
we can move out the mail data as a separate virtual app backup
2017-09-28 10:22:10 -07:00
Girish Ramakrishnan
ce6df4bf96
Disable encryption for flat-file for now
2017-09-28 09:47:18 -07:00
Girish Ramakrishnan
f8f6c7d93e
Add progress detail when rotating snapshots
2017-09-28 09:29:46 -07:00
Girish Ramakrishnan
bafc6dce98
s3: refactor out directory listing
2017-09-27 21:59:51 -07:00
Girish Ramakrishnan
56ee4d8e25
Remove old cache files when backup settings is changed
2017-09-27 21:04:46 -07:00
Girish Ramakrishnan
eeef221b4e
Fix race where pipe finishes before file is created
...
When there are 0 length files, this is easily reproducible.
2017-09-27 19:40:26 -07:00
Girish Ramakrishnan
4674653982
compare size and inode as well
2017-09-27 19:39:03 -07:00
Girish Ramakrishnan
a34180c27b
Add format to backupsdb
...
Call remove/removeDir based on the format
2017-09-27 18:02:30 -07:00
Girish Ramakrishnan
aa8ce2c62e
Use graphite 0.12.0
...
this fixes an issue where carbon does not startup properly
if a previous pid file was present
2017-09-27 15:35:55 -07:00
Girish Ramakrishnan
b3c6b8aa15
do not spawn process just for chown
2017-09-27 15:07:19 -07:00
Girish Ramakrishnan
44a7a2579c
rework backup status
...
* show backup progress even if not initiated by UI
* display backup progress in separate line
2017-09-27 15:07:15 -07:00
Girish Ramakrishnan
39f0e476f2
Start out empty if cache file is missing
2017-09-27 12:09:19 -07:00
Girish Ramakrishnan
003dc0dbaf
Add todo
2017-09-27 11:50:49 -07:00
Girish Ramakrishnan
e39329218d
Make tests work
2017-09-27 11:38:43 -07:00
Girish Ramakrishnan
8d3fbc5432
Save backup logs and fix backup progress
2017-09-26 21:09:00 -07:00
Girish Ramakrishnan
2780de631e
writable streams emit finish
2017-09-26 16:43:51 -07:00
Girish Ramakrishnan
399c756735
use exec so that filenames do not have to be escaped
2017-09-26 15:53:42 -07:00
Girish Ramakrishnan
859311f9e5
Process delete commands before add commands
...
This is required for cases where a dir becomes a file (or vice-versa)
2017-09-26 15:33:54 -07:00
Girish Ramakrishnan
a9e89b57d9
merge caas storage into s3 backend
2017-09-26 12:28:33 -07:00
Girish Ramakrishnan
4e68abe51d
Handle fs errors
2017-09-26 12:10:58 -07:00
Girish Ramakrishnan
12083f5608
Ignore all special files
2017-09-26 11:41:01 -07:00
Girish Ramakrishnan
d1efb2db56
remove bogus mkdir
2017-09-26 11:34:24 -07:00
Girish Ramakrishnan
adde28523f
Add backup format to the backup UI
2017-09-26 10:46:02 -07:00
Girish Ramakrishnan
f122f46fe2
Generate new index file by appending to file
2017-09-26 07:57:20 -07:00
Girish Ramakrishnan
ad7fadb4a9
display backup id in the ui
2017-09-26 07:45:23 -07:00
Johannes Zellner
be383582e0
Do not rely on external resource in the appstatus page
2017-09-26 15:33:05 +02:00
Girish Ramakrishnan
0a60365143
Initial version of flat-file uploader
2017-09-26 00:17:11 -07:00
Girish Ramakrishnan
2f6cb3e913
set format in the backup ui
2017-09-26 00:01:36 -07:00
Girish Ramakrishnan
b0f85678d4
Implement downloadDir for flat-file format
2017-09-23 18:07:26 -07:00
Girish Ramakrishnan
e43413e063
implement remove dir in storage backends
2017-09-23 12:34:51 -07:00
Girish Ramakrishnan
e39a5c8872
preserve env in backuptask.js
2017-09-22 11:19:44 -07:00
Girish Ramakrishnan
fb4b75dd2a
Fix typo in comment
2017-09-22 11:19:37 -07:00
Girish Ramakrishnan
3c1ccc5cf4
Add exoscale provider
2017-09-21 17:50:03 -07:00
Girish Ramakrishnan
abd66d6524
Add cloudscale as a provider
2017-09-21 17:49:26 -07:00
Girish Ramakrishnan
b61b7f80b5
Add DO spaces
2017-09-21 12:25:39 -07:00
Girish Ramakrishnan
efa850614d
Add a s3-v4-compat provider
2017-09-21 12:13:45 -07:00
Girish Ramakrishnan
21c534c806
Ensure format is set in backupConfig
2017-09-21 09:49:55 -07:00
Girish Ramakrishnan
7e4ff2440c
Fix text for manual DNS
2017-09-21 09:10:12 -07:00
Johannes Zellner
f415e19f6f
Do not unneccesarily mention error in the logs
...
Not so friendly for log searches
2017-09-21 15:00:35 +02:00
Girish Ramakrishnan
97da8717ca
Refactor backup strategy logic into backups.js
2017-09-20 14:09:55 -07:00
Girish Ramakrishnan
cbddb79d15
Resolve the id in rotateAppBackup
2017-09-20 09:38:55 -07:00
Johannes Zellner
bffb935f0f
Also send digest to appstore account owner
2017-09-20 16:33:25 +02:00
Johannes Zellner
e50e0f730b
Make nginx listen on :: for ipv6
2017-09-20 16:33:25 +02:00
Girish Ramakrishnan
26f33a8e9b
Send resolved path to the storage APIs
2017-09-19 21:58:35 -07:00
Girish Ramakrishnan
952b1f6304
Make backuptask call back into backups.js
2017-09-19 20:27:49 -07:00
Girish Ramakrishnan
a3293c4c35
Fix tests
2017-09-19 12:43:13 -07:00
Girish Ramakrishnan
4892473eff
backupIds do not have extension anymore
...
this code existed for legacy reasons
2017-09-19 12:34:09 -07:00
Girish Ramakrishnan
221d5f95e1
ensure backupFolder is always set
2017-09-19 12:34:09 -07:00
Girish Ramakrishnan
84649b9471
Bring back backuptask
...
This is required for various small reasons:
* dir iteration with a way to pass messagein back to the upload() easily
* can be killed independently of box code
* allows us to run sync (blocking) commands in the upload logic
2017-09-19 12:32:38 -07:00
Girish Ramakrishnan
44435559ab
Typo
2017-09-19 10:37:45 -07:00
Girish Ramakrishnan
c351660a9a
Implement backup rotation
...
Always upload to 'snapshot' dir and then rotate it. This will allow
us to keep pushing incrementally to 'snapshot' and do server side
rotations.
2017-09-18 21:17:34 -07:00
Girish Ramakrishnan
0a24130fd4
Just reset config instead of clearing cache
2017-09-18 19:41:15 -07:00
Girish Ramakrishnan
ea13f8f97e
Fix checkInstall script
2017-09-18 18:19:27 -07:00
Johannes Zellner
d00801d020
Only require service account key for google dns on setup
2017-09-18 23:50:34 +02:00
Girish Ramakrishnan
8ced0aa78e
copy: use hardlinks to preserve space
2017-09-18 14:29:48 -07:00
Girish Ramakrishnan
f5d32a9178
copyBackup -> copy
2017-09-18 14:29:15 -07:00
Girish Ramakrishnan
7fc45b3215
Refactor out the backup snapshot logic
2017-09-18 12:43:11 -07:00
Girish Ramakrishnan
9bed14a3e8
Enable IP6 in unbound
...
On some provider (https://www.nine.ch ) disabling IPv6 makes unbound
not respond to the DNS queries.
Also, I was unable to test with prefer-ip6 to 'no' because unbound fails:
unbound[5657]: /etc/unbound/unbound.conf.d/cloudron-network.conf:8: error: unknown keyword 'no'
unbound[5657]: read /etc/unbound/unbound.conf failed: 3 errors in configuration file
2017-09-18 11:41:02 -07:00
Girish Ramakrishnan
71233ecd95
Fix undefined variable
2017-09-18 11:14:04 -07:00
Girish Ramakrishnan
02097298c6
Fix indentation
2017-09-18 10:38:30 -07:00
Girish Ramakrishnan
be03dd0821
remove unused require
2017-09-18 10:38:26 -07:00
Girish Ramakrishnan
5b77d2f0cf
Add commented out debugging section for unbound
2017-09-18 10:38:22 -07:00
Girish Ramakrishnan
781f543e87
Rename API calls in the storage backend
2017-09-17 18:50:29 -07:00
Girish Ramakrishnan
6525a467a2
Rework backuptask into tar.js
...
This makes it easy to integrate another backup strategy
as the next step
2017-09-17 18:50:26 -07:00
Girish Ramakrishnan
6cddd61a24
Fix style
2017-09-17 18:50:23 -07:00
Girish Ramakrishnan
b0ee116004
targz: make sourceDir a string
2017-09-17 18:50:15 -07:00
Girish Ramakrishnan
867a59d5d8
Pull it all to left
2017-09-15 15:47:37 -07:00
Girish Ramakrishnan
6f5085ebc3
Downcase email
2017-09-15 15:45:26 -07:00
Johannes Zellner
e8a93dcb1b
Add button to send test email
...
Fixes #419
2017-09-15 14:42:12 +02:00
Girish Ramakrishnan
09fe957cc7
style
2017-09-15 02:07:06 -07:00
Girish Ramakrishnan
020ccc8a99
gcdns: fix update/del confusion
...
in the DNS api, we always update/del all records of same type
2017-09-15 01:54:39 -07:00
Girish Ramakrishnan
7ed304bed8
Fix cloudflare domain display
2017-09-15 00:50:29 -07:00
Girish Ramakrishnan
db1e39be11
Do not overwrite subdomain when location was changed
...
* Install in subdomain 'test'
* Move to subdomain 'test2'
* Move to another existing subdomain 'www' (this should be detected as conflict)
* Move to subdomain 'www2' (this should not remove 'www'). This is why dnsRecordId exists.
2017-09-14 22:31:48 -07:00
Girish Ramakrishnan
f163577264
Typo
2017-09-14 18:38:48 -07:00
Girish Ramakrishnan
9c7080aea1
Show email text for gcdns
2017-09-14 18:33:07 -07:00
Girish Ramakrishnan
c05a7c188f
Coding style fixes
2017-09-14 18:15:59 -07:00
Girish Ramakrishnan
72e912770a
translate network errors to SubdomainError
...
fixes #391
2017-09-14 16:14:16 -07:00
Girish Ramakrishnan
28c06d0a72
bump mail container
2017-09-14 12:07:53 -07:00
Girish Ramakrishnan
9805daa835
Add google-cloud/dns to shrinkwrap
2017-09-14 10:45:04 -07:00
Girish Ramakrishnan
a920fd011c
Merge branch 'feature/gcdns' into 'master'
...
Adding Google Cloud DNS support
See merge request !17
2017-09-14 17:44:20 +00:00
Girish Ramakrishnan
1b979ee1e9
Send rbl status as part of email check
2017-09-13 23:58:54 -07:00
Girish Ramakrishnan
70eae477dc
Fix logstream test
2017-09-13 23:01:04 -07:00
Girish Ramakrishnan
c16f7c7891
Fix storage tests
2017-09-13 22:50:38 -07:00
Girish Ramakrishnan
63b8a5b658
Add update pattern of wednesday night
...
Fixes #432 , #435
2017-09-13 14:52:31 -07:00
Aleksandr Bogdanov
c0bf51b79f
A bit more polish
2017-09-13 21:17:40 +02:00
Aleksandr Bogdanov
3d4178b35c
Adding Google Cloud DNS to "setupdns" stage
2017-09-13 21:00:29 +02:00
Aleksandr Bogdanov
34878bbc6a
Make sure we don't touch records which are not managed by cloudron, but are in the same zone
2017-09-13 20:53:38 +02:00
Girish Ramakrishnan
e78d976c8f
Fix backup mapping (mail dir has moved)
2017-09-13 09:51:20 -07:00
Girish Ramakrishnan
ba9662f3fa
Add 1.6.5 changes
2017-09-12 22:32:57 -07:00
Girish Ramakrishnan
c8750a3bed
merge the logrotate scripts
2017-09-12 22:03:24 -07:00
Girish Ramakrishnan
9710f74250
remove collectd stats when app is uninstalled
2017-09-12 21:34:15 -07:00
Girish Ramakrishnan
52095cb8ab
add debugs for timing backup and restore
2017-09-12 15:37:35 -07:00
Aleksandr Bogdanov
c612966b41
Better validation
2017-09-12 22:47:46 +02:00
Aleksandr Bogdanov
90cf4f0784
Allowing to select a service account key as a file for gcdns
2017-09-12 22:35:40 +02:00
Aleksandr Bogdanov
ec93d564e9
Adding Google Cloud DNS to webadmin
2017-09-12 19:03:23 +02:00
Aleksandr Bogdanov
37f9e60978
Fixing verifyDns
2017-09-12 16:29:07 +02:00
Johannes Zellner
ca199961d5
Make settings.value field TEXT
...
We already store JSON blobs there and the gce dns backend
will require a larger blob for a certificate.
Since we use innodb the storage format in TEXT will only be different
if the data is large
2017-09-11 15:41:07 +02:00
Girish Ramakrishnan
fd811ac334
Remove "cloudron" to fit in one line
2017-09-10 17:43:21 -07:00
Girish Ramakrishnan
609c1d3b78
bump mail container
...
this is also required since we moved the maildir
2017-09-10 00:07:48 -07:00
Girish Ramakrishnan
9906ed37ae
Move mail data inside boxdata directory
...
This also makes the noop backend more useful because it will dump things
in data directory and user can back it up as they see fit.
2017-09-10 00:07:44 -07:00
Girish Ramakrishnan
dcdce6d995
Use MAIL_DATA_DIR constant
2017-09-09 22:24:16 -07:00
Girish Ramakrishnan
9026c555f9
snapshots dir is not used anymore
2017-09-09 22:13:15 -07:00
Girish Ramakrishnan
547a80f17b
make shell.exec options non-optional
2017-09-09 19:54:31 -07:00
Girish Ramakrishnan
300d3dd545
remove unused requires
2017-09-09 19:23:22 -07:00
Aleksandr Bogdanov
6fce729ed2
Adding Google Cloud DNS
2017-09-09 17:45:26 +02:00
Girish Ramakrishnan
d233ee2a83
ask password only for destructive actions
2017-09-08 15:14:37 -07:00
Girish Ramakrishnan
3240a71feb
wording
2017-09-08 14:42:54 -07:00
Girish Ramakrishnan
322be9e5ba
Add ip blacklist check
...
Fixes #431
2017-09-08 13:29:32 -07:00
Girish Ramakrishnan
e67ecae2d2
typo
2017-09-07 22:01:37 -07:00
Girish Ramakrishnan
75b3e7fc78
resolve symlinks correctly for deletion
...
part of #394
2017-09-07 21:57:08 -07:00
Girish Ramakrishnan
74c8d8cc6b
set label on the redis container
...
this ensures that redis is stopped when app is stopped and also
helps identifying app related containers easily
2017-09-07 20:09:46 -07:00
Girish Ramakrishnan
51659a8d2d
set label on the redis container
...
this ensures that redis is stopped when app is stopped and also
helps identifying app related containers easily
2017-09-07 19:54:05 -07:00
Girish Ramakrishnan
70acf1a719
Allow app volumes to be symlinked
...
The initial plan was to make app volumes to be set using a database
field but this makes the app backups non-portable. It also complicates
things wrt to app and server restores.
For now, ignore the problem and let them be symlinked.
Fixes #394
2017-09-07 15:50:34 -07:00
Girish Ramakrishnan
8d2f3b0217
Add note on disabling ssh password auth
2017-09-06 11:36:23 -07:00
Girish Ramakrishnan
e498678488
Use node 6.11.3
2017-09-06 09:39:22 -07:00
Girish Ramakrishnan
513517b15e
cf dns: filter by type and name in the REST API
...
Otherwise, we will have to implement pagination
2017-09-05 16:07:14 -07:00
Girish Ramakrishnan
a96f8abaca
DO DNS: list all pages of the domain
2017-09-05 15:52:59 -07:00
Johannes Zellner
f7bcd54ef5
Better ui feedback on the repair mode
2017-09-05 23:11:04 +02:00
Johannes Zellner
d58e4f58c7
Add hook to react whenever apps have changed
2017-09-05 23:10:45 +02:00
Girish Ramakrishnan
45f0f2adbe
Fix wording
2017-09-05 10:38:33 -07:00
Johannes Zellner
36c72dd935
Sendgrid only has an api key similar postmark
...
Fixes #411
2017-09-05 11:28:28 +02:00
Girish Ramakrishnan
df9e2a7856
Use robotsTxt in install route
2017-09-04 12:59:14 -07:00
Girish Ramakrishnan
2b043aa95f
remove unused require
2017-09-04 12:59:05 -07:00
Johannes Zellner
c0a09d1494
Add 1.6.4 changes
2017-09-04 18:53:11 +02:00
Johannes Zellner
1c5c4b5705
Improve overflow handling in logs and terminal view
2017-09-04 18:40:16 +02:00
Girish Ramakrishnan
b56dcaac68
Only run scheduler when app is healthy
...
Fixes #393
2017-09-03 18:21:13 -07:00
Girish Ramakrishnan
fd91ccc844
Update the unbound anchor key
...
This helps the unbound recover from any previous out of disk space
situation.
part of #269
2017-09-03 17:48:26 -07:00
Johannes Zellner
fca1a70eaa
Add initial repair button alongside webterminal
...
Part of #416
2017-09-01 20:08:22 +02:00
Johannes Zellner
ed81b7890c
Fixup the test for the password requirement change
2017-09-01 20:08:22 +02:00
Johannes Zellner
cb8dcbf3dd
Lift the password requirement for app configure/update/restore actions
2017-09-01 20:08:22 +02:00
Johannes Zellner
4bdbf1f62e
Fix indentation
2017-09-01 20:08:22 +02:00
Johannes Zellner
47a8b4fdc2
After consuming the accessToken query param, remove it
...
Fixes #415
2017-09-01 10:25:28 +02:00
Johannes Zellner
5720e90580
Guide the user to use ctrl+v for pasting into webterminal
...
Fixes #413
2017-08-31 20:52:04 +02:00
Johannes Zellner
f98e13d701
Better highlight dropdown menu hovers
2017-08-31 20:52:04 +02:00
Johannes Zellner
d5d924861b
Fix gravatar margin in navbar
2017-08-31 20:52:04 +02:00
Girish Ramakrishnan
b81a92d407
disable ip6 in unbound as well
...
part of #412
2017-08-31 11:41:35 -07:00
Johannes Zellner
22b0100354
Ensure we don't crash if the terminal socket is not ready yet
...
Upstream patch submitted https://github.com/sourcelair/xterm.js/pull/933
2017-08-31 20:31:31 +02:00
Johannes Zellner
6eb6eab3f4
Let the browser handle paste keyboard shortcuts
...
Related to #413
2017-08-31 20:31:31 +02:00
Girish Ramakrishnan
57d5c2cc47
Use IPv4 address to connect to mysql
...
Fixes #412
2017-08-31 10:59:14 -07:00
Johannes Zellner
6a9eac7a24
Use the correct input change event
...
Fixes #414
2017-08-31 19:06:02 +02:00
Johannes Zellner
e4760a07f0
Give feedback if the relay settings have successfully saved
2017-08-30 11:02:13 +02:00
Johannes Zellner
257e594de0
Allow mail relay provider specific UI
...
Only contains specific UI for postmark
Part of #411
2017-08-30 10:55:36 +02:00
Girish Ramakrishnan
6fea022a04
remove dead code
2017-08-29 14:47:59 -07:00
Girish Ramakrishnan
f34840d127
remove old data migration paths
2017-08-29 13:08:31 -07:00
Girish Ramakrishnan
f9706d6a05
Always generate nginx config for webadmin
...
Part of #406
2017-08-28 21:16:47 -07:00
Girish Ramakrishnan
61f7c1af48
Remove unused error codes
2017-08-28 15:27:17 -07:00
Girish Ramakrishnan
00786dda05
Do not crash if DNS creds do not work during startup
...
If DNS creds are invalid, then platform.start() keeps crashing on a
mail container update. For now, just log the error and move on.
Part of #406
2017-08-28 14:55:36 -07:00
Girish Ramakrishnan
8b9f44addc
1.6.3 changes
2017-08-28 13:49:15 -07:00
Johannes Zellner
56c7dbb6e4
Do not attempt to reconnect if the debug view is already gone
...
Fixes #408
2017-08-28 21:06:25 +02:00
Girish Ramakrishnan
c47f878203
Set priority for MX records
...
Fixes #410
2017-08-26 15:54:38 -07:00
Girish Ramakrishnan
8a2107e6eb
Show email text for Cloudflare
2017-08-26 15:37:24 -07:00
Girish Ramakrishnan
cd9f0f69d8
email dialog has moved to it's own view
2017-08-26 15:36:12 -07:00
Girish Ramakrishnan
1da91b64f6
Filter out possibly sensitive information for normal users
...
Fixes #407
2017-08-26 14:47:51 -07:00
Johannes Zellner
a87dd65c1d
Workaround for firefox flexbox bug
...
Fixes selection while clicking on empty flexbox space.
This only happens in firefox and seems to be a bug in firefox
flexbox implementation, where the first child element with a
non zero size, in a flexbox managed `block` element, has the
`float` property.
Fixes #405
2017-08-24 23:29:42 +02:00
Johannes Zellner
7c63d9e758
Fix typo in css
2017-08-24 23:16:36 +02:00
Girish Ramakrishnan
329bf596ac
Indicate that directories can be downloaded
2017-08-24 13:38:50 -07:00
Girish Ramakrishnan
2a57c4269a
handle app not found
2017-08-23 13:23:04 -07:00
Girish Ramakrishnan
ca8813dce3
1.6.2 changes
2017-08-23 10:43:27 -07:00
Girish Ramakrishnan
3aebf51360
Fix upload of large files to apps
...
6a0ef7a1c1 broke the upload for apps
e2e test is being added
2017-08-23 10:22:54 -07:00
Johannes Zellner
103f8db8cb
Do not expand to fixed pixel size on mobile
2017-08-23 16:57:34 +02:00
Johannes Zellner
04c127b78d
Add changes for 1.6.1
...
Due to regressions we should skip 1.6.0 thus the same changelog
2017-08-23 16:14:30 +02:00
Johannes Zellner
9bef1bcf64
Hijack and demux the container exec stream to be compliant with new
...
dockerode
2017-08-23 16:04:50 +02:00
Johannes Zellner
718413c089
autocomplete attribute is not respected for username/password fields
...
Since the cloudflare email input field is above the password field
some browsers will automatically autofill it with the username
as it looks like a login form. So we add a hidden unused input field
which gets autofilled instead :-/
2017-08-23 13:13:00 +02:00
Girish Ramakrishnan
a34691df44
Hide the header as well
2017-08-22 09:30:18 -07:00
Girish Ramakrishnan
795e38fe82
file is an object
2017-08-22 09:15:46 -07:00
Johannes Zellner
1d348fb0f3
Do not lose focus on terminal
2017-08-22 16:24:26 +02:00
Johannes Zellner
91f3318879
Implement rightclick menu for terminal text copy
2017-08-22 16:23:06 +02:00
Girish Ramakrishnan
c61808f4c6
1.6.0 changes
2017-08-21 16:08:37 -07:00
Girish Ramakrishnan
991b2dad28
bump mail container version
...
part of #400
2017-08-21 15:54:21 -07:00
Girish Ramakrishnan
f3d9a70de7
Only send the stdout stream
2017-08-21 10:46:13 -07:00
Johannes Zellner
60758de10a
Fixup package.json linter issues and clean the shrinkwrap
2017-08-21 12:45:15 +02:00
Girish Ramakrishnan
6a0ef7a1c1
Allow larger files to be uploaded
...
Note that other upload APIs like avatar are still limited to 1m by
the nginx config
2017-08-20 19:15:54 -07:00
Girish Ramakrishnan
7cb451c157
Allow dirs to downloaded as tarballs
2017-08-20 18:54:59 -07:00
Girish Ramakrishnan
3c31c96ad4
Hide the download dialog after download starts
2017-08-20 18:29:11 -07:00
Johannes Zellner
5d73f58631
Show upload progress
2017-08-20 19:32:00 +02:00
Johannes Zellner
4ca7cccdae
Give error feedback if the requested file does not exist
2017-08-20 18:50:37 +02:00
Johannes Zellner
82380b6b7c
Remove hardcoded /app/data and fix submit for file downloads
2017-08-20 18:09:43 +02:00
Johannes Zellner
979c4e77e3
Fix view bug when terminal reconnects but user has moved on
2017-08-20 18:00:07 +02:00
Johannes Zellner
e318fb0c01
Show restat button also in logs view
2017-08-20 17:57:32 +02:00
Girish Ramakrishnan
77d2fb97e5
test: create logrotate dir
2017-08-19 18:57:43 -07:00
Girish Ramakrishnan
24e6c4d963
bump test image
2017-08-19 17:57:21 -07:00
Girish Ramakrishnan
064c5cf7f2
Fix failing test
2017-08-19 17:41:15 -07:00
Girish Ramakrishnan
891542bfb9
move restart button
2017-08-19 17:33:59 -07:00
Girish Ramakrishnan
599702d410
Fix casing
2017-08-19 16:45:20 -07:00
Girish Ramakrishnan
3cb39754fd
Make logs button work for apps
2017-08-19 12:52:48 -07:00
Girish Ramakrishnan
f04345a99a
Move restart button to log view
2017-08-19 12:49:03 -07:00
Johannes Zellner
3d59b8a5b0
Deliver content-length and file not found errors for file downloads
2017-08-19 12:13:04 +02:00
Johannes Zellner
cf518b0285
Resize terminal based on initial DOM size
...
Currently we cannot send new cols,rows on DOM element resize
as they are sent on connect only and a reconnect would loose
current session
2017-08-19 11:32:00 +02:00
Girish Ramakrishnan
52832c881a
Add upload and download for the webterminal
2017-08-18 21:19:48 -07:00
Girish Ramakrishnan
537fbff4aa
Use ws directly to handle new exec ws route
2017-08-18 19:46:18 -07:00
Johannes Zellner
e3040b334d
Do not submit injected commands right away but give some space and fix
...
focus
2017-08-18 20:36:52 +02:00
Johannes Zellner
6c2879d567
Rename debug view to terminal and logs
2017-08-18 20:36:47 +02:00
Johannes Zellner
595c89076f
Add postgres, mongo and redis client injection
2017-08-18 11:26:10 -07:00
Johannes Zellner
c85f5b15c6
Reenable custom tcp upgrade handling
2017-08-18 11:26:05 -07:00
Johannes Zellner
8fbed7e84b
Ensure we only write to the websocket if it is open
2017-08-18 11:26:00 -07:00
Johannes Zellner
ee3c5f67af
Show mysql addon only if the app uses it
2017-08-18 11:25:54 -07:00
Johannes Zellner
52db28e876
Verify the websocket request
2017-08-18 11:25:49 -07:00
Johannes Zellner
65bc3491f6
enable timeout middleware again and reset it for all upgrade requests
2017-08-18 11:25:45 -07:00
Johannes Zellner
82f512dc27
Rename logs view to debug view
2017-08-18 11:25:37 -07:00
Johannes Zellner
4b41378d08
Ensure app restarts also close the websocket
2017-08-18 11:25:05 -07:00
Johannes Zellner
1fd4e27d92
Fix logs autoscroll
2017-08-18 11:25:00 -07:00
Johannes Zellner
2420fef6b1
Reconnect the terminal on disconnection
...
This can happen if the app crashes or restarts
2017-08-18 11:24:55 -07:00
Johannes Zellner
50074b936a
Integrate the terminal with the logs ui
2017-08-18 11:24:48 -07:00
Johannes Zellner
f98e68edc1
Add express-ws node module
2017-08-18 11:24:42 -07:00
Johannes Zellner
83e5daf08c
Add xterm.js
2017-08-18 11:24:34 -07:00
Girish Ramakrishnan
53b43ca36b
Don't show restore button for noop backend
2017-08-17 20:20:06 -07:00
Girish Ramakrishnan
d11842a7f8
Show popup when using noop backend
2017-08-17 19:52:08 -07:00
Girish Ramakrishnan
6746781b46
Add warning for noop backend
...
Fixes #402
2017-08-17 12:38:52 -07:00
Girish Ramakrishnan
78ec8e5c0c
Add field to skip backup for an app
...
This skips the app from a backup when doing a full box backup and
simply reuses the previous backup.
The app can still be explicitly backed up using 'cloudron backup'
and explicitly restored using 'cloudron restore --backup'.
When restoring the box, it all depends on the app's last backup.
Fixes #311
2017-08-16 16:36:50 -07:00
Johannes Zellner
67a2ba957e
Use maxsize logrotate rule instead of size
...
The current ruleset means rotate the file daily unless the file grows
larger than 1Mb earlier, then rotate once the file reaches that size.
https://serverfault.com/questions/474941/how-to-rotate-log-based-on-an-interval-unless-log-exceeds-a-certain-size
2017-08-16 19:10:49 +02:00
Girish Ramakrishnan
9e558924bb
df plugin replaces with _ and not -
...
Part of #348
2017-08-15 09:32:42 -07:00
Johannes Zellner
afcb3dd237
Fix layout issues in oauth views
2017-08-15 13:18:31 +02:00
Johannes Zellner
054de4813d
Fix layout issue in update view
2017-08-15 11:04:47 +02:00
Girish Ramakrishnan
57891c64b5
use check_output instead
...
Aug 14 19:10:46 collectd[12651]: close failed in file object destructor:
Aug 14 19:10:46 collectd[12651]: IOError: [Errno 10] No child processes
2017-08-14 12:31:58 -07:00
Girish Ramakrishnan
26361c037d
Merge branch 'mehdi/box-permissions'
...
Closes MR !14
2017-08-14 10:49:54 -07:00
Girish Ramakrishnan
2048b03431
Removed this file by mistake
2017-08-14 10:44:58 -07:00
Girish Ramakrishnan
c12aba6c00
install xfsprogs
...
on some VPS like scaleway this is not installed.
This is why docker with devicemapper was using ext4 and not devmapper
devmapper: XFS is not supported in your system. Either the kernel doesn't support it or mkfs.xfs is not in your PATH. Defaulting to ext4 filesystem"
2017-08-13 23:15:23 -07:00
Girish Ramakrishnan
0bd0857189
Update many modules
...
npm WARN deprecated ejs-cli@1.2.0: This has breaking change. (in ejs package) use <= 2.0.0.
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
npm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
2017-08-13 17:57:48 -07:00
Girish Ramakrishnan
978893250f
Update superagent (for doubele callback bug)
2017-08-13 17:38:02 -07:00
mehdi
d0f4a76ca2
basic capabilities syntax
2017-08-12 09:42:54 +01:00
Girish Ramakrishnan
755c87b079
Remove extra space
2017-08-11 22:14:53 -07:00
Girish Ramakrishnan
1da073c9bf
Display mail server settings inline
2017-08-11 22:12:11 -07:00
Girish Ramakrishnan
96ead77520
Remove the API section
2017-08-11 21:10:18 -07:00
Girish Ramakrishnan
178b04fead
Fix broken links to docs
2017-08-11 21:00:51 -07:00
Girish Ramakrishnan
335631ac28
Look for log files in first level and third level as well
2017-08-11 16:24:56 -07:00
Girish Ramakrishnan
42778cb84d
Add 1.5.0 changes
2017-08-11 16:24:30 -07:00
Johannes Zellner
2f51088e67
Add logrotate support for *.log files in /run mounts of apps
...
logrotate config files may contain arbitrary commands which are
exectued as root, thus the config files have to be owned by root.
This is the reason we need the sudo scripts :-/
To test the generated scripts, just run:
$ logrotate /etc/logrotate.conf -v
Fixes #396
2017-08-12 00:04:00 +02:00
Johannes Zellner
378d7aee91
Add docker.inspect() api
2017-08-11 23:31:59 +02:00
Johannes Zellner
ac53f8c747
Show app title for log selection
2017-08-11 15:32:58 +02:00
Girish Ramakrishnan
5fe73c5a46
Replace df plugin with custom df plugin
...
The built-in df plugin cannot do the following:
* if we choose by type ext4, we want to skip devicemapper (on scaleway)
* the MountPoint of the appsdata directory is not possible to know at install time
Fixes #398
2017-08-11 01:39:51 -07:00
Johannes Zellner
a6f13eee14
Fix further layout issues in the appstore login view
2017-08-11 09:30:07 +02:00
Girish Ramakrishnan
86d23a4d35
Switch default storage backend to overlay2
...
This does not try to migrate existing cloudrons from devicemapper.
We will possibly do that in a future version.
61e130fb7 takes care of checking that we run on ext4
https://cloudron.io/documentation/server/#using-overlay2-backend-for-docker
Fixes #364
2017-08-10 14:11:03 -07:00
Johannes Zellner
b25bb76792
Give some bottom spacing for the log output container
2017-08-10 21:49:27 +02:00
Johannes Zellner
7ba5d1e0d6
Enable automatic scrolling while trailing logs
2017-08-10 21:49:06 +02:00
Girish Ramakrishnan
f17bde2d97
Add motd message for cloudron admins about updates
...
Fixes #351
2017-08-10 12:14:51 -07:00
Girish Ramakrishnan
93cafebfdb
Allow options to be set in shell.sudo and shell.exec
2017-08-09 19:32:02 -07:00
Johannes Zellner
5538a91585
We are not using bootstrap rows on toplevel layout anymore
2017-08-09 09:49:52 +02:00
Girish Ramakrishnan
09cb468290
Update node to 6.11.2
2017-08-08 18:41:38 -07:00
Johannes Zellner
3b98eb0543
Add cloudron logstream api test
2017-08-08 20:40:18 +02:00
Johannes Zellner
59936c6fbf
Further simplification of the layout code
2017-08-08 18:24:00 +02:00
Johannes Zellner
5a7e636f2d
Use flexbox to avoid lots of grid system quirks
...
Finally we can sanely control navbar and footer
2017-08-08 12:05:46 +02:00
Johannes Zellner
401dc37a50
Ensure we destroy the eventsource when the view changes
2017-08-08 11:52:32 +02:00
Johannes Zellner
9f1af572a0
Make log lines backlog configurable
2017-08-08 10:07:33 +02:00
Johannes Zellner
96e2fa159c
Show timestamp in log lines
2017-08-08 09:55:18 +02:00
Johannes Zellner
bc49a3e18a
Add moment.js to webadmin
2017-08-08 09:55:09 +02:00
Johannes Zellner
ae19d8d754
Protect the logs view from normal user access
2017-08-07 21:00:23 +02:00
Johannes Zellner
13b067eb88
Remove log download in support view
...
This has moved to the logs view
2017-08-07 20:54:18 +02:00
Johannes Zellner
af08f4e7b6
Auto scroll the log streamer
2017-08-07 19:43:07 +02:00
Johannes Zellner
534e5781ba
Set correct font and fix the follow flag
2017-08-07 18:42:08 +02:00
Johannes Zellner
737e266729
Set the url for the log download button
2017-08-07 18:24:19 +02:00
Johannes Zellner
07a133ebe9
Fix the platform log streaming
2017-08-07 18:18:36 +02:00
Johannes Zellner
b0444edf7e
Add platform logstream api
2017-08-07 17:09:39 +02:00
Johannes Zellner
bcf37d833f
Allow to follow app logs
2017-08-07 16:48:27 +02:00
Johannes Zellner
e7db2ab137
Add color code to html conversion library
2017-08-07 16:47:47 +02:00
Johannes Zellner
125b416463
Add initial logs view
2017-08-07 13:50:45 +02:00
Girish Ramakrishnan
800468fbe6
Use debug instead
2017-08-04 11:16:00 -07:00
Girish Ramakrishnan
0c1e3ec6a0
use mailFqdn instead of adminFqdn
2017-08-04 07:46:09 -07:00
Johannes Zellner
d97ee5d425
Bring back update badge hover
2017-08-04 14:59:06 +02:00
Johannes Zellner
a1be30c35a
Remove preceeding * or - in changelogs
...
Should be possibly solved somewhere more central
2017-08-04 12:31:25 +02:00
Johannes Zellner
ba3cb3b646
Do not crash the whole cloudron if an email template does not render but report the ejs error
2017-08-04 12:02:50 +02:00
Johannes Zellner
daadefe6b9
Ensure we also send the html portion of the digest mail
2017-08-04 12:00:01 +02:00
Girish Ramakrishnan
12c849398e
1.4.1 changes
2017-08-03 13:55:58 -07:00
Girish Ramakrishnan
392492be04
Only collect info on the / mountpoint
...
The original intention was to collect information on the data
dirs as well but we have long moved away from that design.
On some VPS like scaleway, this ends up collecting info on
devicemapper stuff (which are on ext4, not sure why).
In future, we should collect info of other disks as well (#348 )
Fixes #389
2017-08-03 11:45:23 -07:00
Johannes Zellner
4fd0c3c66c
Add html version of the digest email
2017-08-03 15:55:36 +02:00
Johannes Zellner
7d2e6d8d4d
Add test_data for html email development
2017-08-03 15:55:03 +02:00
Girish Ramakrishnan
f3e7249bdc
Fix unterminated quote
2017-08-02 14:43:05 -07:00
Johannes Zellner
53afb2606a
Change the update notification badge
2017-08-02 21:45:11 +02:00
Girish Ramakrishnan
fbce71d031
Do not show the backup region for minio and exoscale
...
Fixes #392
2017-08-02 11:21:39 -07:00
Johannes Zellner
1adde7d8e8
And another doc links change to fit the new doc layout
2017-08-02 11:30:16 +02:00
Girish Ramakrishnan
d23599ba24
Add 1.1.3
2017-08-01 17:21:00 -07:00
Girish Ramakrishnan
ac35bcf9f0
add 1.0.x and 1.1.x changelogs
2017-08-01 16:48:51 -07:00
Johannes Zellner
e4c5dfda60
Adjust documentation links to fit knowledgebase
2017-08-01 20:38:47 +02:00
Johannes Zellner
99cfe564ae
Add repair button to error dialog and improve dns error message
2017-08-01 11:56:39 +02:00
Johannes Zellner
70a3cdc9bc
Make it more obvious that the error dialog can be triggered when clicking on the app icon
2017-08-01 11:56:39 +02:00
Girish Ramakrishnan
bd52068695
Return error object instead of false
2017-07-31 11:57:23 -07:00
Girish Ramakrishnan
ae54b57ca7
Fix wording to match cf website
2017-07-31 10:50:00 -07:00