Johannes Zellner
6a7379e64c
Add apps.upstreamUri support
2022-06-09 10:48:54 +02:00
Girish Ramakrishnan
67801020ed
mailboxDisplayName is optional
2022-06-08 14:25:16 -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
dddc5a1994
migrate app dataDir to volumes
2022-06-02 16:29:01 -07:00
Girish Ramakrishnan
85af0d96d2
sendmail: allow display name to be set
2022-06-01 01:38:16 -07: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
Girish Ramakrishnan
05d7a7f496
constness
2022-04-14 17:50:41 -05:00
Girish Ramakrishnan
709d4041b2
backups: fix restore code path after backup id changes
2022-04-05 09:55:57 -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
b75afaf5d5
clone: secondary domains are required
2022-02-01 23:36:41 -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
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
d7d46a5a81
rename alternateDomains to redirectDomains
2022-01-14 22:32:34 -08: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
e9edfbc1e6
req.body -> data
2021-10-15 11:20:09 -07:00
Girish Ramakrishnan
93636a7f3a
apps: fix log streaming
2021-10-04 10:08:11 -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
1483dff018
make getLogs async
2021-10-01 09:23:25 -07: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
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
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
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
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
6c9b8c8fa8
apps: fix various operators issues
...
part of #791
2021-09-21 18:20:03 -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
0cfc3e03bb
Use concrete resource name instead of generic "resource"
2021-09-20 22:42:34 -07:00
Girish Ramakrishnan
99d8c171b3
apps: return 404 when get returns null
2021-08-30 09:28:21 -07:00
Girish Ramakrishnan
42774eac8c
docker.js and services.js: async'ify
2021-08-26 18:23:31 -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
5dd6f85025
reverseproxy: async'ify
2021-08-17 14:34:55 -07:00
Girish Ramakrishnan
004e812d60
merge backupdb into backups.js
2021-07-14 15:10:45 -07:00
Girish Ramakrishnan
bf1c7eedb7
clone: copy over the enableMailbox flag
2021-06-16 23:17:26 -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
199eda82d1
Use Array.isArray instead
2021-05-02 11:26:47 -07:00
Girish Ramakrishnan
0062e6d9fe
apps: add icon and appStoreIcon to database
2021-04-30 14:35:21 -07:00
Girish Ramakrishnan
9960729d6b
Add optional mailbox support
2021-03-16 22:40:38 -07: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
195fb198dd
implement domain aliases
2021-01-18 17:34:39 -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
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
Johannes Zellner
13050f7bff
Give log files better names on download
2020-11-09 11:07:16 +01:00
Girish Ramakrishnan
65eae30a48
Mount API fixes
2020-10-29 22:04:38 -07:00