Girish Ramakrishnan
e67fc64e65
Update mail container
2018-10-03 09:45:27 -07:00
Girish Ramakrishnan
0189539b27
Add 3.2.1 changes (updated dashboard)
2018-09-30 15:03:31 -07:00
Girish Ramakrishnan
7547f6f6a6
Use async unlink
...
(cherry picked from commit 8dd3c55ecf )
2018-09-28 17:06:05 -07:00
Girish Ramakrishnan
f9ae208eaa
typoe
...
(cherry picked from commit 1ee902a541 )
2018-09-28 17:02:17 -07:00
Girish Ramakrishnan
f9cd81d262
godaddy: empty the text record for del
...
(cherry picked from commit 55cbe46c7c )
2018-09-28 14:36:05 -07:00
Girish Ramakrishnan
db2fda0b18
acme2: Display any errors when cleaning up challenge
...
(cherry picked from commit 5a8a4e7907 )
2018-09-28 14:33:26 -07:00
Girish Ramakrishnan
32744d4fdf
acme2: fix challenge subdomain calculation in cleanup
...
(cherry picked from commit 3b5be641f0 )
2018-09-28 13:48:34 -07:00
Girish Ramakrishnan
e79857b9cf
TXT values must be quoted
...
(cherry picked from commit a34fe120fb )
2018-09-27 20:22:13 -07:00
Girish Ramakrishnan
ffb02a3ba8
Use the local branch in hotfix
2018-09-26 22:26:46 -07:00
Girish Ramakrishnan
47f404cbca
3.2 changes
2018-09-26 16:16:52 -07:00
Girish Ramakrishnan
a9c1af50f7
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 16:10:43 -07:00
Girish Ramakrishnan
2967ad0ec8
more debugs and comments
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
1fd2c3381d
Fix perms issue when restoring
...
Fixes #536
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
9d2f729089
Fix case where mailbox already exists
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
2aecf4be08
reset mailboxname to .app when empty
...
fixes #587
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
cde43c8a47
3.1.4 changes
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
60fff645c4
Use alternateDomain fqdn for ensuring certificate
...
this makes it work for hyphenated domains as well
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
299bcf5574
list domains only once
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
29745c277f
Attach fqdn to all the alternateDomains
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
7a43b742c0
allow hyphenated subdomains in caas
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
f85a7f4d5c
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-26 16:10:43 -07:00
Girish Ramakrishnan
291bee7f6a
register alt domains in install route
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
78365acc43
Fix new account return value
...
https://tools.ietf.org/html/draft-ietf-acme-acme-07#section-7.3
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
976fe1c67d
acme2: register new account returns 201
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
e5ecfeb43f
calculate subdomain correctly for non-wildcard domains
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
6c9d093da0
Fix double callback
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
0725d40484
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-26 16:10:43 -07:00
Girish Ramakrishnan
27b655c62e
rework args to ensureCertificate
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
2a7a0f04e4
Allow wildcard only with programmable DNS backend
2018-09-26 16:10:43 -07:00
Girish Ramakrishnan
b2f7eac629
make ensureCertificate check any wildcard cert
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
40d95a45a8
acme2: implement wildcard certs
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
ef89b09817
Move type validation to routes logic
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
cfa29fa82e
refactor to validateTlsConfig
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
7a07e0220f
consolidate hyphenatedSubdomains handling
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
d0eba4d3e3
acme2: wait for dns
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
5eccf7dc3b
Enhance waitForDns to support TXT records
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
29bd5fdbc7
acme2: dns authorization
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
7c28fa1175
pass domain arg to getCertificate API
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
323a498f04
rename func
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
2ea0d57d95
lint
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
55093af2ae
Fix callback use
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
8f4c1055c3
acme2 implementation
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
0bb81bf0ee
Fix tests
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
9a6b095563
acme -> acme1
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
b4f756dceb
storage: add access denied function (unused)
2018-09-26 16:06:13 -07:00
Girish Ramakrishnan
3554f39fdd
cloudflare: Add the chain message
2018-09-26 16:05:54 -07:00
Girish Ramakrishnan
bcd3a30579
cloudflare: priority is now an integer
2018-09-26 16:05:54 -07:00
Girish Ramakrishnan
2e756a9b25
Return 424 for external errors
2018-09-26 16:05:54 -07:00
Girish Ramakrishnan
bd4c5883f5
dns: implement wildcard dns validation
2018-09-26 16:05:54 -07:00
Girish Ramakrishnan
004f00a97b
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-26 16:05:54 -07:00
Girish Ramakrishnan
44ed650538
typo
2018-09-26 16:05:54 -07:00
Girish Ramakrishnan
a3ae73d48f
3.1.4 changes
2018-09-12 20:29:55 -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
Johannes Zellner
0eb3c26c05
Only show cloudflare note when cloudflare is selected
2017-07-31 17:01:04 +02:00
Johannes Zellner
ca007ff979
The Cloudflare token is called API Key
2017-07-31 11:46:17 +02:00
Johannes Zellner
2eb5c39388
Improve error reporting for cloudflare
2017-07-31 11:25:17 +02:00
Johannes Zellner
014ce9df66
Mention that we only support cloudflare DNS management
2017-07-31 11:08:17 +02:00
Johannes Zellner
a4dff215f1
Change eventlog db column types from JSON to TEXT
...
JSON type is only supported on oracle mysql and none of the features are
used
2017-07-31 09:44:30 +02:00
Girish Ramakrishnan
0db4387013
Ensure security updates are enabled
...
Fixes #346
2017-07-28 20:03:55 -07:00
Girish Ramakrishnan
d81abfb2f0
Add blocking flag to changes
2017-07-28 10:41:28 -07:00
Girish Ramakrishnan
0d880cf1e3
Add 1.4.0 changes
2017-07-28 10:39:33 -07:00
Girish Ramakrishnan
b24d600b31
Update haraka
2017-07-28 10:34:29 -07:00
Johannes Zellner
2ac52fc64f
Merge branch 'issue102' into 'master'
...
Added support for cloudflare DNS
See merge request !8
2017-07-28 17:14:43 +00:00
Johannes Zellner
3bf07a3143
Make it work
2017-07-28 18:33:08 +02:00
Johannes Zellner
cf883046b3
verifyDnsConfig() api has changed
2017-07-28 16:33:19 +02:00
Johannes Zellner
5e9808ad79
We use single quotes
2017-07-28 16:12:41 +02:00
Johannes Zellner
83ddf0a62c
add cloudflare ui components
2017-07-28 16:10:04 +02:00
Johannes Zellner
cb7fea97af
Keep coding style consistent
2017-07-28 16:10:04 +02:00
Johannes Zellner
3a4ee3ec8c
Check for cloudflare email and token
2017-07-28 16:10:04 +02:00
Johannes Zellner
96dbda3949
Provide cloudflare in dns setup screen
2017-07-28 16:10:04 +02:00
Johannes Zellner
7facf17ac6
Make cloudflare api available in subdomain.js
2017-07-28 16:10:04 +02:00
Johannes Zellner
a939367ab6
Cleanup linter errors
2017-07-28 16:10:04 +02:00
Abhishek Patil
fd52f0ded4
Added support cloudflare DNS TODO:UI
...
Signed-off-by: Abhishek Patil <abhishek@zeroth.me >
2017-07-28 16:10:04 +02:00
Johannes Zellner
84ba20493e
The docs are now in a separate repo
...
See https://git.cloudron.io/cloudron/docs
2017-07-28 13:41:17 +02:00
Girish Ramakrishnan
4f9a9906c9
Do not automatically update apps with a major version change
...
(future) pre-1.0 packages can be considered 'experimental'
Fixes #342
2017-07-27 13:49:08 -07:00
Girish Ramakrishnan
204340eac0
Set ttl
...
Fixes #384
2017-07-27 13:25:37 -07:00
Girish Ramakrishnan
d72fffb61f
Bump mail container for AUTH LOGIN crash fix
2017-07-27 13:21:37 -07:00
Girish Ramakrishnan
cf4f0af0be
Freudian slip
2017-07-26 15:58:43 -07:00
Girish Ramakrishnan
07d0601342
doc: robots.txt
2017-07-26 15:48:16 -07:00
Johannes Zellner
4cd0e4d38d
Fix digest cron schedule to no run every hour on wednesdays
2017-07-26 10:52:12 +02:00
Girish Ramakrishnan
4f1a596123
Add support for exoscale SOS
2017-07-25 15:23:04 -07:00
Girish Ramakrishnan
d3990eff39
Add 1.3.1 changelog
2017-07-25 09:34:43 -07:00
Girish Ramakrishnan
6eab8bbdce
Use -%> for newline slurping
...
Fixes #383
2017-07-24 22:13:31 -07:00
Girish Ramakrishnan
61e130fb71
check that rootfs is ext4
...
part of #364
2017-07-24 18:14:53 -07:00
Johannes Zellner
0c2267f9b4
Allow digest to be templated with or without subscription
2017-07-24 21:15:28 +02:00
Girish Ramakrishnan
a4e822f1c0
multi-line changelog does not work :(
2017-07-23 21:15:11 -07:00
Girish Ramakrishnan
e9c5837059
Add 1.3.0 changes
2017-07-23 21:13:57 -07:00
Girish Ramakrishnan
17406e4560
Adjust digest wording
2017-07-23 21:07:13 -07:00
Girish Ramakrishnan
eb99f8b844
escape and quote the robotsTxt when templating
...
for now, we restrict the string length to 4096 since that is what
nginx allows
2017-07-23 19:56:28 -07:00
Johannes Zellner
4fec2fe124
Allow specify the robots.txt text in the configure dialog
2017-07-23 22:00:05 +02:00
Girish Ramakrishnan
4045eb7a33
Add digest tests
2017-07-23 10:58:00 -07:00
Johannes Zellner
99d8baf36f
Add cron job to send email digest
2017-07-22 17:44:15 +02:00
Girish Ramakrishnan
db7a4b75ae
log the host in nginx logs
2017-07-21 09:43:44 -07:00
Johannes Zellner
dcd8c82a75
send lastLogin event timestamp with alive status
2017-07-21 15:15:13 +02:00
Girish Ramakrishnan
d577756851
doc: formatting
2017-07-20 12:57:18 -07:00
Girish Ramakrishnan
1e9c1e6ed0
doc: subdomain installation
2017-07-20 12:37:42 -07:00
Girish Ramakrishnan
ecc76ed368
doc: mail relay
2017-07-20 11:40:03 -07:00
Girish Ramakrishnan
9e61f76aad
doc: catch-all mailbox
2017-07-20 11:27:31 -07:00
Johannes Zellner
11c2cecc9e
Ensure we only add a leading / when we have a prefix
...
Part of #343
2017-07-19 14:35:35 +02:00
Girish Ramakrishnan
b5aed7b00a
Set full path for nginx access log
2017-07-18 21:49:12 -07:00
Girish Ramakrishnan
4d177e0d29
Add 1.3.0 changes
2017-07-18 21:21:24 -07:00
Girish Ramakrishnan
f070082586
doc: get/set mail from validation
2017-07-18 18:57:27 -07:00
Girish Ramakrishnan
f3483e6a92
fix typo in mail.ini
2017-07-18 17:38:21 -07:00
Girish Ramakrishnan
91e56223ce
Add mail from validation tests
...
Fixes #366
2017-07-18 17:05:34 -07:00
Girish Ramakrishnan
631b830f4c
Add setting to toggle from address validation check
...
part of #366
2017-07-18 16:33:42 -07:00
Girish Ramakrishnan
63364ae017
Use settings.getAll in createMailConfig
2017-07-18 13:50:39 -07:00
Girish Ramakrishnan
3b162c6648
Add _KEY prefix to catch all address
2017-07-18 13:50:05 -07:00
Girish Ramakrishnan
b4fb73934b
Remove unused function
2017-07-18 13:42:22 -07:00
Girish Ramakrishnan
8f04163262
convert missing json settings in getAll
2017-07-18 13:31:43 -07:00
Girish Ramakrishnan
10b6664134
Update schema.sql
2017-07-18 12:03:45 -07:00
Girish Ramakrishnan
454ca86507
trigger a reconfigure to regenerate nginx configs
...
see !13
2017-07-18 11:38:02 -07:00
Girish Ramakrishnan
34020064bc
Merge branch 'patch-1' into 'master'
...
add X-Forwarded-Port in nginx reverse proxy for jetpack
See merge request !13
2017-07-18 17:47:25 +00:00
Dick Tang
67486b8177
add X-Forwarded-Port in nginx reverse proxy for jetpack
...
jetpack require X-Forward for the port, or "requested method jetpack.jsonAPI does not exist"
ref: https://github.com/ViBiOh/docker-wordpress/issues/1
2017-07-18 15:58:46 +00:00
Girish Ramakrishnan
6a4be98f19
Display cloudronId in settings
2017-07-17 14:36:50 -07:00
Girish Ramakrishnan
d5fb048364
Bump test container version
2017-07-17 13:19:52 -07:00
Girish Ramakrishnan
6dd4d40692
parse and save zoneName to cloudron.conf
...
part of #377
2017-07-17 09:16:06 -07:00
Johannes Zellner
04d6f94108
Add docs for app migration
2017-07-17 15:28:06 +02:00
Johannes Zellner
8d49f5a229
Also put manually triggered app backups under a datetime prefix
2017-07-17 14:33:00 +02:00
Girish Ramakrishnan
f80713ba2f
Make sure zoneName is not lost across updates
...
Part of #377
2017-07-16 11:05:04 -07:00
Girish Ramakrishnan
91f25465a4
Add 1.3.0 changes
2017-07-15 19:58:57 -05:00
Girish Ramakrishnan
aa5cc68301
Fix typo in error message
2017-07-15 19:58:52 -05:00
Girish Ramakrishnan
acd00222e5
Allow per-app configuration of robots.txt
...
https://developers.google.com/search/reference/robots_txt has
the specification
Part of #344
2017-07-14 15:25:05 -05:00
Girish Ramakrishnan
5697bcf43f
Update to node 6.11.1
...
Fixes a DDoS issue in node
https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/
2017-07-13 09:02:32 -05:00
Johannes Zellner
5b7cc6642a
Ensure only the token value ends up in the clipboard
...
Fixes #375
2017-07-12 11:53:50 +02:00
Girish Ramakrishnan
ee528470a7
Add 1.2.1 changes
2017-07-11 10:37:11 -05:00
Girish Ramakrishnan
3eed481d22
Send mail relay and catch all as part of alive status
2017-07-11 09:53:06 -05:00
Girish Ramakrishnan
97b37cb45c
bump mail container
2017-07-07 10:35:51 -05:00
Girish Ramakrishnan
49de39a1f3
Set max ttl to 5 minutes
...
This means the web ui will atleast work in 5 minutes.
Fixes #373
2017-07-07 09:50:29 -05:00
Girish Ramakrishnan
6fe390b957
Fix casing
2017-07-07 09:10:28 -05:00
Girish Ramakrishnan
1a68467ff2
Add one more 1.2.0 change
2017-07-06 09:12:44 -05:00
Girish Ramakrishnan
40de715f20
doc: relay API
2017-07-05 12:56:17 -05:00
Girish Ramakrishnan
8d9fbb9cea
Create mail config regardless of whether owner exists
2017-07-05 11:31:51 -05:00
Girish Ramakrishnan
e3910d6587
1.2.0 changes
2017-06-30 17:54:21 -05:00
Girish Ramakrishnan
50e712a93e
preserve existing docker storage driver
...
fixes #364
2017-06-30 16:50:31 -05:00
Girish Ramakrishnan
1c8ddc10db
mailer: Do not wait for SPF record to be in sync
...
This code logic does not work when a relay is used. Besides, the
SPF record can go out of sync at any time. This code is thus
not worth keeping.
2017-06-30 15:30:12 -05:00
Girish Ramakrishnan
1007a85fde
Use latest haraka and restart on relay change
2017-06-30 09:07:43 -05:00
Girish Ramakrishnan
a0903f0890
Allow relay to be reset back to cloudron
2017-06-30 09:07:43 -05:00
Girish Ramakrishnan
1c40e51999
Only starttls is supported by haraka
...
In addition, auth_type has to be set to PLAIN (or LOGIN)
2017-06-30 09:07:43 -05:00
Girish Ramakrishnan
c07df68558
Fix typos
2017-06-30 09:07:37 -05:00
Girish Ramakrishnan
fd5a05db6c
suppress spf, dkim, ptr results when using external relay
...
part of #188
2017-06-28 22:20:41 -05:00
Girish Ramakrishnan
19d825db48
refactor code into email.js
2017-06-28 22:20:35 -05:00
Girish Ramakrishnan
2862fec819
outboundPort25 -> relay status
2017-06-28 22:20:25 -05:00
Girish Ramakrishnan
2df74ebe96
Only display the DNS records if they exist in the response
...
part of #188
2017-06-28 22:20:15 -05:00
Girish Ramakrishnan
5794aaee0a
Display dns notification only when using cloudron for relay
...
part of #188
2017-06-28 22:20:04 -05:00
Girish Ramakrishnan
229ca7f86b
return SettingsError and not CloudronError
2017-06-28 17:38:40 -05:00
Girish Ramakrishnan
7edf43c627
Select tls based on port
...
Note that starttls is always supported
part of #188
2017-06-28 16:56:11 -05:00
Girish Ramakrishnan
ae1dff980a
Set cloudron-smtp as default relay
2017-06-28 12:32:07 -05:00
Girish Ramakrishnan
01d0e56332
refactor code to have a relay provider
...
part of #188
2017-06-28 11:39:45 -05:00
Girish Ramakrishnan
00990b6837
Verify relay credentials
...
part of #188
2017-06-27 16:40:10 -05:00
Girish Ramakrishnan
5886671fba
update nodemailer
2017-06-27 16:23:44 -05:00
Girish Ramakrishnan
5088cb47d9
Load and save the relay settings
...
part of #188
2017-06-27 15:13:09 -05:00
Girish Ramakrishnan
60ae4972b0
Bump mail container version (relay support)
2017-06-27 13:16:30 -05:00
Girish Ramakrishnan
ad8ddf80f5
add mail relay tests
...
part of #188
2017-06-27 12:20:51 -05:00
Girish Ramakrishnan
c4d313a2c0
generate smtp_forward.ini
...
part of #188
2017-06-27 11:08:50 -05:00
Johannes Zellner
140e9fdd94
Initial ui for email relay configuration
2017-06-27 13:39:08 +02:00
Johannes Zellner
82b5c11374
Use the locally installed gulp to avoid global dependency
2017-06-27 12:25:40 +02:00
Johannes Zellner
3307b581af
Give the spawned node processes a bit more memory
...
Two cloudrons failed with 200 again and bumping it up helps
We still should look into the tarfs module to fix the root cause
2017-06-26 13:06:57 +02:00
Girish Ramakrishnan
45e68ef6da
Use latest mysql image
...
have to reconfigure to re-inject new passwords
fixes #362
2017-06-22 14:16:58 -07:00
Girish Ramakrishnan
4d7f9ba9a5
isPaying is not set properly for non-caas
2017-06-21 22:38:39 -07:00
Girish Ramakrishnan
6d0cdc36b2
move getSubscription to appstore.js
2017-06-21 22:17:32 -07:00
Girish Ramakrishnan
79541a68a5
Display and send usernames instead of the email address
2017-06-21 19:34:55 -07:00
Girish Ramakrishnan
845d386478
Grammar
2017-06-21 19:28:38 -07:00
Girish Ramakrishnan
8771de5c12
Minor rewording
2017-06-21 19:14:15 -07:00
Girish Ramakrishnan
76246b2952
Try to fix sporadic mysql startup issue after cloudron-setup
2017-06-21 17:20:02 -07:00
Johannes Zellner
f994b68701
wait for dns with the correct zone even on external domain setup
2017-06-21 15:04:39 +02:00
Johannes Zellner
77558c823c
Check for subscription right after appstore login
2017-06-21 13:43:34 +02:00
Johannes Zellner
dd6a19ea85
get zoneName from domain on migration if not set
2017-06-21 13:41:13 +02:00
Johannes Zellner
16978f8c1a
Keep the subdomain as is for non-custom domain cloudrons
2017-06-21 10:23:04 +02:00
Johannes Zellner
f311c3da1c
Fix explicit zone information in dns setup view
2017-06-21 09:51:35 +02:00
Johannes Zellner
423e355fd6
Add changes
2017-06-21 09:37:34 +02:00
Johannes Zellner
8fadb3badc
Use the actual result not the potentially cached value
2017-06-20 13:10:07 +02:00
Johannes Zellner
3845065085
Enable catchall based on subscription status
2017-06-20 12:58:14 +02:00
Johannes Zellner
801d848908
Show hint about subdomain cloudrons in dns setup
2017-06-20 11:56:09 +02:00
Girish Ramakrishnan
e6eda1283c
Format the combo box better
2017-06-19 23:16:03 -07:00
Girish Ramakrishnan
a553755f4a
the noop callback will print the error
2017-06-19 22:20:25 -07:00
Girish Ramakrishnan
cd52459f05
more descriptive debug
2017-06-19 22:20:25 -07:00
Girish Ramakrishnan
1802201e9e
Remove one level of indentation
2017-06-19 22:20:22 -07:00
Johannes Zellner
2d72f49261
Ensure the updatechecker does not prematurely callback
...
Also add tests and make sure we send update notifications if automatic
updates cannot be applied
2017-06-19 14:34:36 +02:00
Johannes Zellner
cd42a6c2ea
Send update notifications on the free plan
2017-06-19 13:27:08 +02:00
Johannes Zellner
65f949e669
Add settings.getSubscription()
2017-06-19 13:26:49 +02:00
Johannes Zellner
f3fec9a33c
Handle 402 response on app installation
2017-06-19 12:17:55 +02:00
Johannes Zellner
13182de57f
Appstore login dialog does not exist anymore
2017-06-19 12:06:42 +02:00
Girish Ramakrishnan
c33566b553
Add note that LE certs require valid email
...
part of #338
2017-06-18 17:23:41 -07:00
Johannes Zellner
4faf247898
Add catch-all address interface
2017-06-16 21:04:46 +02:00
Johannes Zellner
9952a986eb
Always remind the user that the DNS zone has to be hosted on the provider
...
Do not use $location as the search() object is not consistent without
the angular router, which is not used here
2017-06-16 21:04:44 +02:00
Girish Ramakrishnan
40aaffe365
tests: Fix usage of settings.setDnsConfig
2017-06-15 20:05:35 -07:00
Girish Ramakrishnan
3745e96a6f
domain -> fqdn
2017-06-15 19:56:04 -07:00
Girish Ramakrishnan
157ce06f93
Add zoneName query parameter to dns setup
...
fixes #110
2017-06-15 19:55:48 -07:00
Girish Ramakrishnan
822dfb8af5
Allow 3rd level domains in UI
...
part of #110
2017-06-15 19:55:32 -07:00
Girish Ramakrishnan
9ead482dc6
Make verifyDnsConfig take zone name
...
part of #110
2017-06-15 19:55:24 -07:00
Girish Ramakrishnan
865c0a7aa7
Pass other level domains to dns API backends
...
part of #110
2017-06-15 19:55:01 -07:00
Girish Ramakrishnan
c760c42f92
make waitForDns take zone name argument
...
part of #110
2017-06-15 19:54:08 -07:00
Girish Ramakrishnan
ded31b977e
Add config.setFqdn and config.setZoneName
...
Part of #110
2017-06-15 19:53:20 -07:00
Johannes Zellner
4781c4e364
Deliver empty JSON object on success
...
This ensures the client does not throw a parsing exception
2017-06-15 07:49:19 -07:00
Johannes Zellner
8e123b017e
Add REST wrapper for catchall
2017-06-15 07:49:07 -07:00
Girish Ramakrishnan
658cbcdab9
bump mail container version (catchall support)
...
part of #33
2017-06-15 07:48:57 -07:00
Girish Ramakrishnan
0cc980f539
Add setting for catch all address
...
Note that this is not a flag on the mailboxes because we might theoretically
support forwarding to some other external domain in the future.
Part of #33
2017-06-15 07:48:46 -07:00
Girish Ramakrishnan
da7648fe3f
Match the button text with existing text in the UI
2017-06-14 21:55:17 -07:00
Johannes Zellner
8db1073980
Add changes
2017-06-14 20:29:10 +02:00
Girish Ramakrishnan
f74f17af02
fix language
2017-06-13 14:42:30 -07:00
Johannes Zellner
87ca05281d
Revert "Always check for updates prior to performing an update"
...
Lets keep the rest apis more single purpose and offload this case to the
client
This reverts commit 0bddd5a2c6 .
2017-06-13 22:58:07 +02:00
Johannes Zellner
9780f77fa8
Ensure we fetch the latest update info
...
This is to bring the webadmin in sync
2017-06-13 22:51:53 +02:00
Johannes Zellner
0bddd5a2c6
Always check for updates prior to performing an update
...
This covers the case where the box has not yet received a tarballUrl but
the user already setup a subscription.
2017-06-13 21:42:32 +02:00
Johannes Zellner
20f2a6e4c6
Block updates if sourceTarballUrl is missing
2017-06-13 21:33:03 +02:00
Johannes Zellner
6d47737de7
Remove unused require
2017-06-13 21:14:27 +02:00
Johannes Zellner
e8f9552ff9
Remove email modal, it is included in the free plan
2017-06-13 17:26:28 +02:00
Johannes Zellner
9c76c5fc27
Also handle the undecided case
2017-06-13 17:25:59 +02:00
Johannes Zellner
f9d5f92397
Align the text with the dialog
2017-06-13 17:23:44 +02:00
Johannes Zellner
3a2a05dfce
Change the plan configure label
2017-06-13 17:21:38 +02:00
Johannes Zellner
5a291fa2a4
Change subscription dialog to reflect 1.0
2017-06-13 17:08:36 +02:00
Johannes Zellner
84d34ec004
Mention our app request tracker in the missing app dialog
2017-06-13 16:07:21 +02:00
Girish Ramakrishnan
63fca38f0b
Add gce to cloudron-setup
2017-06-12 14:05:03 -07:00
Johannes Zellner
e3b2799230
Make it clear that the domain, not the server must be hosted on the DNS provider
2017-06-12 10:16:53 +02:00
Girish Ramakrishnan
2efe72519e
Can only update using paid plan
2017-06-09 11:05:23 -07:00
Johannes Zellner
eb3ae2c34f
Give better feedback when a plan was selected
2017-06-09 14:26:28 +02:00
Johannes Zellner
eba79cd859
Open all outlinks in a new tab
2017-06-09 14:10:42 +02:00
Girish Ramakrishnan
d7d8cf97ed
update dialog text
2017-06-08 14:19:32 -07:00
Girish Ramakrishnan
089f7301b8
set webServerOrigin in cloudron.conf
...
also remove the hardly used --api-server
2017-06-08 10:51:28 -07:00
Johannes Zellner
fb4f13eb13
Fixes to the update dialog logic
2017-06-08 17:44:35 +02:00
Johannes Zellner
89878ff9ad
Also preset the login email for account details
2017-06-08 14:09:01 +02:00
Johannes Zellner
ba62f577fa
Show the correct navbar badge for managed cloudron users
2017-06-08 11:17:32 +02:00
Johannes Zellner
4c5bd2d318
Specifically redirect the managed cloudron user to the cc setup
2017-06-08 11:07:05 +02:00
Johannes Zellner
3c318a72f7
Add email query param name
2017-06-08 10:14:09 +02:00
Girish Ramakrishnan
23532eafea
Fix path to version
2017-06-07 20:31:18 -07:00
Girish Ramakrishnan
5b7a080d98
Add email when redirecting to cloudron.io
2017-06-07 17:47:03 -07:00
Girish Ramakrishnan
0a44b8c23b
Change badge text based on 1.0.0 or not
2017-06-07 15:15:14 -07:00
Girish Ramakrishnan
c0c07c2839
ensure .ssh dir exists
...
Fixes #349
2017-06-07 09:50:31 -07:00
Girish Ramakrishnan
96d2b32a9f
doc: scaleway does not require boot script anymore
2017-06-07 09:18:02 -07:00
Girish Ramakrishnan
795c2ad91c
typo
2017-06-07 09:04:11 -07:00
Johannes Zellner
fc9a9c3f87
Add new changes to changelog
2017-06-07 16:22:56 +02:00
Johannes Zellner
d141d6ba21
Do not poll for subscription so often
2017-06-07 13:41:18 +02:00
Johannes Zellner
479da5393a
Reword the version 1.0 update dialog
2017-06-07 13:40:56 +02:00
Johannes Zellner
307334ef81
Also test for parent object in case it does not exist
2017-06-07 12:46:01 +02:00
Johannes Zellner
c1ec7a06bf
If we don't have a dockerImage, we can't proceed with the update
2017-06-07 12:46:01 +02:00
Johannes Zellner
1126a0fc1e
Use the app manifest from the box updater
2017-06-07 12:46:01 +02:00
Johannes Zellner
b5f678613b
Add version 1.0 welcome dialog
2017-06-07 12:46:01 +02:00
Johannes Zellner
b7e3447a46
Show subscription dialog on app update
2017-06-07 12:46:01 +02:00
Johannes Zellner
32fa3b8a51
Show subscription indicator in navbar
2017-06-07 12:46:01 +02:00
Johannes Zellner
fe0e4000a6
Fix link to subscription page
2017-06-07 12:46:01 +02:00
Johannes Zellner
9ceeb70fc2
No need to pull in unused AppStore dependency
2017-06-07 12:46:01 +02:00
Johannes Zellner
aa8b4f1fba
show cloudron account in the settings view
2017-06-07 12:46:01 +02:00
Johannes Zellner
95ba51dfb2
Add wrapper to get current subscription
2017-06-07 12:46:01 +02:00
Girish Ramakrishnan
c74fb07ff7
Replace all / with _ when querying graphite
...
Part of #348
2017-06-06 21:25:20 -07:00
Johannes Zellner
03f1326073
Tweak the architecture doc page
2017-06-05 18:10:50 +02:00
Johannes Zellner
daa4c66e7f
Do not perform automatic updates for major platform version
2017-06-05 18:06:00 +02:00
Johannes Zellner
571abc56fe
Fix email view flickering while not eveything has loaded yet
2017-06-05 14:22:34 +02:00
Johannes Zellner
4aaeccecbd
Hide DNS record listing for caas dnsprovider
2017-06-02 10:48:00 +02:00
Johannes Zellner
4287d69397
Correctly show dns recrods on view load
2017-06-02 10:47:56 +02:00
Johannes Zellner
de328e34d8
Ensure menu is sorted
2017-06-02 10:47:53 +02:00
Johannes Zellner
8d45ce6971
Move email related things into separate view
2017-06-02 10:47:46 +02:00
Johannes Zellner
fa3f173e8a
Reduce app grid item size a bit to avoid too early overflow
2017-06-02 09:28:22 +02:00
Girish Ramakrishnan
414e9bdf05
Do not use lastBackupId in cleanup logic
...
lastBackupId is only used as a "message" passing field for apptask restore.
Theoretically, this code somehow protects a race between the cleanup logic
and the restore apptask. this is unlikely to happen and adds unnecessary
complexity.
2017-06-01 14:47:57 -07:00
Girish Ramakrishnan
c342e52e7d
Record copyLastBackup in the backupdb
2017-06-01 14:08:55 -07:00
Girish Ramakrishnan
78aa9c66f7
Add a note why we do not cleanup more aggressively yet
2017-06-01 10:33:49 -07:00
Girish Ramakrishnan
986ec02ac6
Add debug on what backup is preserved
2017-06-01 09:38:39 -07:00
Girish Ramakrishnan
4e0bb9187a
lower case domain in migrate code path
2017-06-01 09:26:03 -07:00
Johannes Zellner
9c8a8571b4
Ensure we lowercase the domain name before consuming it in dns setup
...
Finally fixes #335
2017-06-01 17:29:46 +02:00
Johannes Zellner
7f30b8de9d
Ensure we test domains with lowercase
...
Fixes #335
2017-06-01 16:42:16 +02:00
Johannes Zellner
d1bfa4875a
Give the domain name a bit more space
...
Fixes #340
2017-06-01 15:31:58 +02:00
Johannes Zellner
0250e1ea59
Improve the domain name fitting
2017-06-01 15:31:58 +02:00
Johannes Zellner
924fb337e8
Ensure long domain names are visible in the app grid
...
Part of #340
2017-06-01 15:31:58 +02:00
Girish Ramakrishnan
0c9dce0c9f
redis: set memoryLimit to 600 because only half is RAM
2017-05-31 23:09:47 -07:00
Girish Ramakrishnan
9e9470c6af
Fix link to managed hosting
2017-05-31 21:49:28 -07:00
Girish Ramakrishnan
471539d64b
CNAME output from dig has trailing dot
2017-05-30 21:14:28 -07:00
Girish Ramakrishnan
95127a868d
0.150.0 changes
2017-05-30 16:23:06 -07:00
Girish Ramakrishnan
f34d429052
kill the backup process if it runs for too long
2017-05-30 16:11:12 -07:00
Girish Ramakrishnan
82e53bce36
ensure backups and clean them every 6 hours
...
also, make sure they don't run at the same time.
2017-05-30 16:04:32 -07:00
Girish Ramakrishnan
b04a417cfc
Cleanup errored and creating backups
...
Fixes #330
2017-05-30 15:16:08 -07:00
Girish Ramakrishnan
77641f4b51
Add backupdb.getByState and backupdb.getByTypeAndState
...
part of #330
2017-05-30 14:30:06 -07:00
Girish Ramakrishnan
765d20c8be
Add backup states to track unfinished backups
...
part of #330
2017-05-30 13:43:30 -07:00
Girish Ramakrishnan
d2420de594
refactor backup cleanup logic
2017-05-30 13:43:30 -07:00
Girish Ramakrishnan
8e9da38451
update schema file
2017-05-26 22:23:24 -07:00
Girish Ramakrishnan
ddb69eb25c
remove native-dns and use dig directly
...
native-dns module is unmaintained and we keep getting sporadic
errors from that module
Fixes #220
2017-05-26 16:51:05 -07:00
Girish Ramakrishnan
11697f11cf
use constants for admin location
2017-05-24 15:41:37 -07:00
Girish Ramakrishnan
35a2a656d3
doc: fix path to node
2017-05-22 12:25:18 -07:00
Girish Ramakrishnan
6fc69c05ca
Add noop storage backend
...
This is sometimes useful when an update gets stuck because of some
bug in backup logic.
Note that you cannot restore from this backend because nothing is
saved.
2017-05-22 10:45:01 -07:00
Girish Ramakrishnan
65cff35be6
Do not dump certs in the log files
2017-05-19 14:39:08 -07:00
Girish Ramakrishnan
7467907c09
Do not dump data in update script since it might have the cert
2017-05-19 14:34:20 -07:00
Girish Ramakrishnan
d6c32a2632
tweak redis memory limit based on app's memory
2017-05-18 15:39:38 -07:00
Johannes Zellner
7dc277a80c
Give the backup task more memory 150 is often too close to the limit
2017-05-17 14:17:54 +02:00
Girish Ramakrishnan
4881d090f0
disable dnsmasq on ovh
2017-05-16 16:33:43 -07:00
Girish Ramakrishnan
48330423c6
Add 0.140.0 changes
2017-05-15 14:27:24 -07:00
Girish Ramakrishnan
88e844b545
Bump infra version to reconfigure apps for http2 support
2017-05-12 16:25:14 -07:00
Girish Ramakrishnan
f45da2efc4
Merge branch 'http2' into 'master'
...
Add HTTP/2 support to NGINX configs
See merge request !9
2017-05-12 23:23:41 +00:00
Girish Ramakrishnan
f422614e7b
doc: new app store submission guidelines
...
Fixes #292
2017-05-11 15:58:02 -07:00
Johannes Zellner
d164f881ca
Bring back code for alt domain match
...
There are no actual tests for this yet. Should be added.
2017-05-11 21:55:29 +02:00
Johannes Zellner
4994a5da49
Use -checkhost openssl subcommand
2017-05-11 21:31:01 +02:00
Johannes Zellner
393317d114
Automatically expand the failing dns records
2017-05-11 16:44:18 +02:00
Johannes Zellner
8de940ae36
Condense the dns checks in the settings view
2017-05-11 16:34:15 +02:00
Johannes Zellner
374130d12a
Only set local dns server if run on a cloudron
2017-05-11 15:37:44 +02:00
Johannes Zellner
05fcdb0a67
Extract CN from cert with JS
...
unlike the sed script, this does not rely on the order openssl reports the subject entities
2017-05-11 15:19:02 +02:00
Johannes Zellner
23827974d8
Fix certificate validation to work with new openssl version as well
2017-05-11 14:58:29 +02:00
Girish Ramakrishnan
ae2c0f3503
Use new mail container (fix for exec)
2017-05-10 21:58:39 -07:00
Girish Ramakrishnan
cbb93ef7ad
For low end cloudrons, give a delay between addon starts
...
Starting them all at once, sometimes hogs cpu/memory too much
and makes the startup scripts of the addons error.
The new addons setup a .setup file to confirm initialization.
In a future commit, we can use those .setup files to check if
the addon has started up instead of a timeout
2017-05-10 15:43:02 -07:00
Girish Ramakrishnan
4d3c6f7caa
better error message
2017-05-09 11:24:47 -07:00
Girish Ramakrishnan
4f3c846e2b
Add 0.130.3 changes
2017-05-09 09:22:07 -07:00
Girish Ramakrishnan
6ef2f974ae
fs: Use key to determine backup extension
2017-05-08 16:03:29 -07:00
Girish Ramakrishnan
180cafad0c
Fix restore of unencrypted backups
2017-05-08 15:48:32 -07:00
Girish Ramakrishnan
f707f59765
Only ext4 supports as data dir
...
Fixes #325
2017-05-08 15:25:16 -07:00
Girish Ramakrishnan
969ef3fb11
doc: ensure the data directory exists
2017-05-08 15:16:58 -07:00
Girish Ramakrishnan
7af3f85d7c
cloudron-setup: pass --data-dir for all non 0.10x.x versions
2017-05-08 12:04:00 -07:00
Johannes Zellner
ffc0a75545
user.get() returns UserErrors
2017-05-08 13:51:19 +02:00
Johannes Zellner
d5b5bdb104
Replace old cloud logo with cloudron logo in error and no app pages
2017-05-08 13:51:19 +02:00
Girish Ramakrishnan
8ae65661dd
redact the password so it is never displayed in logs
2017-05-05 15:36:47 -07:00
Johannes Zellner
423c4446de
Show description if setup fails due to reserved username
2017-05-05 11:54:47 +02:00
Girish Ramakrishnan
53cffd5133
doc: Add note on A record for external domain
2017-05-04 20:49:53 -07:00
Johannes Zellner
15ff1fb093
Add changes for 0.130.2
2017-05-04 21:52:17 +02:00
Johannes Zellner
195d388990
Bring back tldExists() for the dns setup screen
2017-05-04 21:49:27 +02:00
Johannes Zellner
d008e871da
Add changes for 0.130.1
2017-05-04 14:34:48 +02:00
Johannes Zellner
3e6295de92
Fix form validation for external domains
2017-05-03 15:25:24 +02:00
Ian Fijolek
788004245a
Add HTTP/2 support to NGINX configs
...
This easy fix should improve performance with newer browsers especially
for applications that require many files to be sent over the wire
*cough*Nextcloud11*cough*
NGINX blog post about HTTP/2 support: https://www.nginx.com/blog/nginx-1-9-5/
2017-05-02 22:00:55 +00:00
Girish Ramakrishnan
be5221d5b8
bash gymnastics for password with spaces
2017-05-01 11:40:08 -07:00
Girish Ramakrishnan
dacc66bb35
Ignore fifo files during backup
...
Fixes #318
2017-05-01 10:11:41 -07:00
Girish Ramakrishnan
5f26c3a2c1
bump test image version
2017-05-01 09:46:20 -07:00
Girish Ramakrishnan
228af62c39
Add more changes to 0.130.0
2017-05-01 08:03:40 -07:00
Girish Ramakrishnan
b531922175
do not quote the argument
2017-04-30 22:17:23 -07:00
Girish Ramakrishnan
dad58efc94
Version 0.130.0 changes
2017-04-30 19:30:03 -07:00
Girish Ramakrishnan
7a3d3a3c74
Fix usage of tar.gz API
2017-04-30 17:42:55 -07:00
Girish Ramakrishnan
e5c42f2b90
Do a multipart download for slow internet connections
...
Fixes #317
2017-04-28 17:28:40 -07:00
Girish Ramakrishnan
6cbf64b88e
use openssl password only when restore key is non-empty or backup ends with .enc
2017-04-28 15:00:17 -07:00
Girish Ramakrishnan
9635f9aa24
Use key to determine if we should encrypt or not
...
When encrypting we use the .enc extension. When not encrypting, we
use the plain .tar.gz extension.
Fixes #315
2017-04-28 14:50:20 -07:00
Girish Ramakrishnan
893f9d87bc
make s3 upload use queueSize of 1
2017-04-28 14:50:08 -07:00
Girish Ramakrishnan
bfda0d4891
drop support for old format backups
2017-04-28 14:45:44 -07:00
Girish Ramakrishnan
65a62f9fbf
allow backup prefix to be an empty string
2017-04-26 22:28:52 -07:00
Girish Ramakrishnan
6d74f7e26f
doc: fix link for blacklist testing
2017-04-26 21:20:30 -07:00
Girish Ramakrishnan
14ca0c1623
Support naked domains as external location
...
Let the user add an A record for naked domains
Fixes #272
2017-04-26 15:56:39 -07:00
Girish Ramakrishnan
3f6e8273a7
remove hack to update docker
2017-04-26 15:50:01 -07:00
Girish Ramakrishnan
287b96925a
Check if dns flag is in some intermediate state
2017-04-26 12:36:33 -07:00
Girish Ramakrishnan
608cc1e036
remove notification that can never trigger
...
this code comes from 0601ea2f39
2017-04-25 17:31:14 -07:00
Girish Ramakrishnan
5fa27c4954
show warning if domain config is not working
...
fixes #302
2017-04-25 17:31:09 -07:00
Girish Ramakrishnan
8deadece05
handle null tlsCert and tlsKey
2017-04-25 17:29:26 -07:00
Girish Ramakrishnan
797dc26f47
ip_based_setup.conf is long gone
2017-04-25 17:29:26 -07:00
Girish Ramakrishnan
ddf7823b19
Make box come up regardless of dns config
...
Part of #302
2017-04-25 16:53:14 -07:00
Girish Ramakrishnan
923e1d0524
Kill more event based logic
2017-04-25 16:36:38 -07:00
Girish Ramakrishnan
339bc71435
Rename onConfigured to onDomainConfigured
2017-04-25 14:09:13 -07:00
Girish Ramakrishnan
863612356d
refactor addDnsRecords to take IP as argument
2017-04-25 14:06:13 -07:00
Girish Ramakrishnan
56cdaefecc
configureAdmin on dns key change
...
This allows the user to re-get an admin certificate by updating
the DNS config.
Part of #302
2017-04-25 14:04:27 -07:00
Girish Ramakrishnan
9e611b6ae3
Run scheduler containers in cloudron network as well
...
This results in:
box:scheduler Unhandled error: { Error: (HTTP code 409) unexpected - Conflicting options: dns and the network mode
Part of #307
2017-04-25 12:25:21 -07:00
Girish Ramakrishnan
7e26b4091b
use ":" in security-opt is deprecated
2017-04-25 11:41:05 -07:00
Girish Ramakrishnan
d7702b96e5
Also set dns args for redis addon
...
part of #307
2017-04-25 10:13:52 -07:00
Girish Ramakrishnan
41edd3778d
Merge branch 'dns-fixes' into 'master'
...
Set DNS per container rather than the daemon
Closes #307
See merge request !6
2017-04-25 17:06:31 +00:00
Ian Fijolek
0ac69cc6c9
Add DNS args to platform containers
2017-04-25 15:21:23 +00:00
Johannes Zellner
fbb01b1ce7
Add 0.120.1 changes
2017-04-25 13:59:41 +02:00
Johannes Zellner
a723203b28
Fix typo of missing data argument
2017-04-25 13:48:12 +02:00
Girish Ramakrishnan
a995037f0a
set retentionSecs of caas to 10 days
2017-04-24 19:06:19 -07:00
Girish Ramakrishnan
5ad4600fd4
More 0.120.0 changes
2017-04-24 16:29:52 -07:00
Girish Ramakrishnan
8ddb670445
simplify: start/stop taskmanager from platform logic
2017-04-24 15:48:23 -07:00
Girish Ramakrishnan
ca5723bbc7
more work on tests
...
disable the migrate tests for now
2017-04-24 15:45:23 -07:00
Girish Ramakrishnan
1b0a81cb3f
make sysadmin test work
2017-04-24 15:21:42 -07:00
Johannes Zellner
d92a2b070c
retry apt endlessly
2017-04-24 23:40:21 +02:00
Johannes Zellner
4703f1afda
woops Revert "WIP"
...
This reverts commit ca7f80414e .
2017-04-24 16:18:01 +02:00
Johannes Zellner
3fad5e856c
Do not cleanup any app backups which are referenced by an app through lastBackupId
2017-04-24 13:50:46 +02:00
Johannes Zellner
cc66830a2d
Also cleanup app backups which are not referenced by a box backup
2017-04-24 13:41:23 +02:00
Johannes Zellner
880f7b4cd3
Allow to get backups by type in backupdb
2017-04-24 12:41:19 +02:00
Johannes Zellner
5b9d4daafe
Add first backup cleanup tests
2017-04-24 12:34:57 +02:00
Johannes Zellner
410420e9d5
Ensure we keep at least one backup on cleanup
...
If for some reason backups fail for longer than the retention time
we should at least keep the latest around
2017-04-24 12:01:52 +02:00
Johannes Zellner
ca7f80414e
WIP
2017-04-24 11:41:45 +02:00
Girish Ramakrishnan
81b705b25b
give inner callback variable a different name
2017-04-23 22:51:07 -07:00
Girish Ramakrishnan
11c7ba1957
Say why filesystem is not recommended
2017-04-23 22:36:45 -07:00
Girish Ramakrishnan
f79e1993cb
use debug() more
2017-04-23 22:10:44 -07:00
Girish Ramakrishnan
fe71dc22fc
add note on lastBackupId
2017-04-23 22:00:17 -07:00
Girish Ramakrishnan
e3c72fa6ce
remove src/ prefix in debug tags
2017-04-23 21:53:59 -07:00
Girish Ramakrishnan
27a542daec
Do not show support tab for non-admins
...
Fixes #313
2017-04-23 21:25:14 -07:00
Girish Ramakrishnan
aeba8e8fd2
Use retentionSecs to cleanup backups
...
Part of #310
2017-04-23 19:34:00 -07:00
Girish Ramakrishnan
a0e122e578
Try to make tests work again
2017-04-23 18:03:40 -07:00
Girish Ramakrishnan
29ae2cf8ca
Allow setting retentionSecs in backendConfig
...
Part of #310
2017-04-22 23:25:57 -07:00
Girish Ramakrishnan
abe72442ae
Set default retentionSecs
...
Set to 2 days for filesystem provider and -1 (never) for s3/minio.
Part of #310
2017-04-22 21:46:26 -07:00
Girish Ramakrishnan
8e134f3ae8
make docker install script more robust
2017-04-22 19:22:01 -07:00
Girish Ramakrishnan
70042021aa
caas: make migrate not send the restoreKey like upgrade
2017-04-22 18:28:58 -07:00
Girish Ramakrishnan
6cc708136e
caas expects filename for migrations
2017-04-22 18:17:44 -07:00
Girish Ramakrishnan
00ac78c839
backup ui: clear form if selector changes
2017-04-22 14:14:21 -07:00
Girish Ramakrishnan
6f0c271e6e
Make URL the first field for minio
2017-04-22 13:47:44 -07:00
Girish Ramakrishnan
ef3a125ce4
Move the info button
2017-04-22 13:36:28 -07:00
Girish Ramakrishnan
d91e8bb87b
add minio as a separate backend
...
Fixes #308
2017-04-22 13:34:43 -07:00
Johannes Zellner
a7d7935451
Remove backup download code
2017-04-22 22:17:29 +02:00
Girish Ramakrishnan
8c011ea9b0
setup: do not dump sensitive fields in args
2017-04-22 11:57:00 -07:00
Girish Ramakrishnan
c41b2c32f5
Fix debug
2017-04-22 11:50:12 -07:00
Girish Ramakrishnan
1e90ec95d3
Add -y flag to apt install
2017-04-22 10:23:48 -07:00
Girish Ramakrishnan
1cca0aee6e
refactor targz logic into separate file
2017-04-21 15:45:45 -07:00
Girish Ramakrishnan
be73ec4b66
Add oldFormat support to caas and s3 backends
2017-04-21 15:06:54 -07:00
Girish Ramakrishnan
6c8b9b8799
Propagate error messages from backuptask into box code
2017-04-21 14:26:34 -07:00
Girish Ramakrishnan
0aea7cc347
Add progress-stream for upload/download progress
2017-04-21 12:07:01 -07:00
Girish Ramakrishnan
e15c3f05c2
Pass DEBUG args to node.sh
2017-04-21 12:04:54 -07:00
Johannes Zellner
f516dddf30
Detect old backup format and pipe to openssl
2017-04-21 19:39:02 +02:00
Johannes Zellner
8fb1bc29d1
Fix storage tests for filesystem and s3
2017-04-21 17:21:10 +02:00
Johannes Zellner
cc8f8b2339
Only send backend specific fields on configuration
2017-04-21 16:52:10 +02:00
Johannes Zellner
f7338c8210
Show default filesystem storage location
2017-04-21 16:51:46 +02:00
Johannes Zellner
c04e8f33c5
Allow to change the backup storage provider in the ui
2017-04-21 16:37:17 +02:00
Johannes Zellner
8e1f190079
Implement check configuration for filesystem backend
2017-04-21 15:37:57 +02:00
Johannes Zellner
019cff8851
Wait for dpkg tasks to finish before installing new docker
2017-04-21 13:34:36 +02:00
Johannes Zellner
8a76788e7a
From this version on encrypted backups don't use the openssl implicit salt
2017-04-21 10:58:52 +02:00
Johannes Zellner
33492333c7
Fix backupDone() for caas
2017-04-21 10:31:43 +02:00
Johannes Zellner
710cdc7bb8
Bring storage interface up to date
2017-04-21 10:01:58 +02:00
Johannes Zellner
0471a14894
We always encrypt even with empty key so make that clear with the file extension
2017-04-21 09:59:27 +02:00
Girish Ramakrishnan
e4b1b73408
Add more 0.120.0 changes
2017-04-20 20:16:12 -07:00
Girish Ramakrishnan
a6c2c608e4
storage/caas: bring it upto speed for new backup design
2017-04-20 20:12:45 -07:00
Girish Ramakrishnan
1cd36319ff
s3: support setting the signatureVersion
2017-04-20 19:56:06 -07:00
Girish Ramakrishnan
a65611a37b
Fix error handling in s3 backend
2017-04-20 19:27:12 -07:00
Girish Ramakrishnan
4769d14414
Mark all fs failures as external errors
...
This gets the right error message on failures:
$ cloudron machine backup create
Waiting for backup to finish...backup failed: ENOENT: no such file or directory, open '/var/backups/2017-04-21-013900-584/app_7549c6a1-682e-4150-8b40-2c31a3fa92f7_2017-04-21-013900-591_v0.7.1.tar.gz'
2017-04-20 19:01:12 -07:00
Girish Ramakrishnan
64c2f3d8c3
copyBackup() already returns a BackupError
2017-04-20 18:56:34 -07:00
Girish Ramakrishnan
2083efdef8
Fix PERM issue when restoring an app with redis
...
This is the root cause of 926224bd5d .
0488aada9f caused a regression where
we setup addons in the restore code path. This meant that redis was
instantiated and running, changing the perms of the dir. Then when
the backup extract happens it fails as it has wrong permissions.
2017-04-20 18:12:29 -07:00
Girish Ramakrishnan
a5efdb067d
Revert "Add apprestoretask.js"
...
This reverts commit 926224bd5d .
This shouldn't be required. We already fix the perms
See 7035b3c18a
2017-04-20 18:12:29 -07:00
Girish Ramakrishnan
0584ace954
Remove StorageError from backends
2017-04-20 18:12:29 -07:00
Girish Ramakrishnan
77d23d6c15
return BackupsError on error
2017-04-20 18:12:29 -07:00
Girish Ramakrishnan
a0c3a531b3
Remove unused file
2017-04-20 18:12:29 -07:00
Girish Ramakrishnan
31ea1e677c
Simply change ownership instead instead of umask fiddling
2017-04-20 18:12:25 -07:00
Girish Ramakrishnan
2479af23ab
app backups must have app version (and not box version)
2017-04-20 17:29:21 -07:00
Girish Ramakrishnan
83f36981f7
Make box backups work again
2017-04-20 16:26:42 -07:00
Ian Fijolek
851e70be6e
Bump version to force creation of new containers
2017-04-20 21:34:31 +00:00
Ian Fijolek
f0ba126156
Move dns-search from daemon to client as well
...
Verified no regression of #130
2017-04-20 21:33:16 +00:00
Ian Fijolek
9dd51575ab
Set DNS per container rather than the daemon
...
All Cloudron containers need to have the nameserver 172.18.0.1. This was
being done at the daemon level, however since there are also iptables
rules restricting access to the nameserver from containers that aren't
on the Cloudron Docker network, this broke DNS for non-Cloudron
containers.
Since the DNS is only required for Cloudron containers in the first
place, this patch specifies 172.18.0.1 as the nameserver when Cloudron
creates a container and reverts the change at the daemon level
2017-04-20 19:02:10 +00:00
Girish Ramakrishnan
cf701b8eb0
Use apt install instead so that deps are installed
2017-04-20 10:37:46 -07:00
Girish Ramakrishnan
9b4e81b476
Fix curl usage
2017-04-20 10:19:00 -07:00
Johannes Zellner
788873e858
Add error callbacks for backup in filesystem and s3
2017-04-20 16:18:27 +02:00
Johannes Zellner
926224bd5d
Add apprestoretask.js
2017-04-20 16:10:13 +02:00
Johannes Zellner
d9a0bf457d
Don't make backup files executable
2017-04-20 16:02:13 +02:00
Johannes Zellner
6a5b0c194f
No more restore mapping
2017-04-20 15:37:49 +02:00
Johannes Zellner
9f117fcfdc
Also simplify the s3 backend
2017-04-20 15:35:52 +02:00
Johannes Zellner
fe01d1bf28
Keep storage api as simple as possible
...
Do not support the directory mapping, which is only used for box backups
This greatly simplifies things, but needs a special fix for the box.
2017-04-20 15:20:11 +02:00
Johannes Zellner
a94d44da75
Add generic node.sh to run node apps as root and with memory limitations
2017-04-20 15:20:11 +02:00
Girish Ramakrishnan
8ded006dea
Fix apps.getLogs usage
2017-04-19 21:43:29 -07:00
Girish Ramakrishnan
5424a658f3
Do not read PTR records from /etc/hosts
...
Fixes #306
2017-04-19 19:34:22 -07:00
Girish Ramakrishnan
b268a18695
Just destroy the client socket
2017-04-19 09:14:00 -07:00
Johannes Zellner
06f1b9dd1b
Ensure we only call callback once for port 25 check
...
On a caas cloudron we saw timeout and end events raised, causing the box
to crash as async throws on double callbacks
2017-04-19 14:35:22 +02:00
Johannes Zellner
e82bdfc996
Use a specific tag of our patched node-archiver
2017-04-19 13:38:46 +02:00
Johannes Zellner
40f5d0412b
Bring the caas storage backend up to speed
...
This is mostly the same as the s3 backend at the moment
2017-04-19 13:30:05 +02:00
Johannes Zellner
65af062c33
Cleanup linter issues
2017-04-19 13:20:24 +02:00
Girish Ramakrishnan
68a1efe3d3
Download short format logs from web ui
...
Fixes #304
2017-04-18 21:04:45 -07:00
Girish Ramakrishnan
3cb4d4b1ab
Add UI to download logs
...
Part of #304
2017-04-18 18:43:09 -07:00
Girish Ramakrishnan
0c706cffc0
Add API to get cloudron logs
...
part of #304
2017-04-18 15:19:26 -07:00
Girish Ramakrishnan
5f888341ea
move eventlog api into /api/v1/cloudron
2017-04-18 15:18:00 -07:00
Girish Ramakrishnan
cf69a8c4ce
move feedback route into /api/v1/feedback
2017-04-18 14:49:28 -07:00
Girish Ramakrishnan
a3ece64273
getDnsConfig only if admin
2017-04-18 14:41:02 -07:00
Girish Ramakrishnan
4bda11edcf
Require admin for reboot, disk, graphs api
2017-04-18 14:31:55 -07:00
Girish Ramakrishnan
3913a8367b
doc: provider is varied
2017-04-18 12:22:49 -07:00
Girish Ramakrishnan
bac0ea17c2
update packages
...
this also updates dockerode
2017-04-18 12:22:49 -07:00
Girish Ramakrishnan
d7f77de6c6
Add 0.120.0 changes
2017-04-18 12:22:49 -07:00
Girish Ramakrishnan
d2d2818b0b
wrap curl command with retry and timeouts
2017-04-18 12:22:49 -07:00
Girish Ramakrishnan
b58fe9edd6
Update docker to CE 17.03
...
https://docs.docker.com/engine/installation/linux/ubuntu/#install-from-a-package
has helpful instructions.
This should also help use userns at some point (https://github.com/moby/moby/pull/25540 )
Fixes #303
2017-04-18 12:22:32 -07:00
Girish Ramakrishnan
dee8bec2dc
doc: add note about what we collect
2017-04-18 10:20:29 -07:00
Johannes Zellner
d5db9657ca
Add s3 mock for the s3 storage tests
2017-04-18 19:15:56 +02:00
Johannes Zellner
9378b949fb
Add s3 storage tests
...
Those are not mocked yet and require real aws things.
Change will follow for mocking. We should probably keep them optionally
working agains AWS directly to ensure things really work
2017-04-18 17:34:45 +02:00
Johannes Zellner
ad9cb00f13
Add s3 storage removeBackup() and getDownloadStream() implementations
2017-04-18 17:33:59 +02:00
Johannes Zellner
5ccca76b17
Fix typo
2017-04-18 17:33:17 +02:00
Johannes Zellner
cec52e14f6
Remove s3 backup test shell script
2017-04-18 16:58:27 +02:00
Johannes Zellner
977936018f
Update aws-sdk node module
2017-04-18 16:49:30 +02:00
Johannes Zellner
261d15f0f7
Handle S3 not found errors
2017-04-18 16:47:49 +02:00
Johannes Zellner
14fe1dde58
s3 storage backend with backup and restore implemented
2017-04-18 16:28:39 +02:00
Johannes Zellner
737bbd26ee
sort requires alphabetically
2017-04-18 15:32:59 +02:00
Johannes Zellner
f5db7c974f
Sync the storage interface api
2017-04-18 14:55:22 +02:00
Johannes Zellner
7303a09f2f
Support older backupIds which already include the type prefix
2017-04-18 14:39:48 +02:00
Johannes Zellner
e3cfaabb74
Ensure we keep the backup creationTimestamp on migration
2017-04-18 13:35:31 +02:00
Johannes Zellner
3cae400b63
We still want to store the restoreConfig config.json as part of the backup itself
2017-04-18 12:16:32 +02:00
Johannes Zellner
5dd10e7cd2
app restoreConfig file api is no more in the filesystem backend
2017-04-18 12:11:05 +02:00
Johannes Zellner
f12358a10c
Do not save the restoreConfig json file in the backuptask
2017-04-18 12:10:39 +02:00
Johannes Zellner
23e3b0bd91
Get the restoreConfig from the database instead of the json file
2017-04-18 12:08:26 +02:00
Johannes Zellner
7a39cdda97
Store restoreConfig on backups
2017-04-18 12:02:15 +02:00
Johannes Zellner
5460027a49
Add restoreConfig to backupsdb.js
2017-04-18 11:57:59 +02:00
Johannes Zellner
4cfee06297
Follow the json field pattern
2017-04-18 11:47:18 +02:00
Johannes Zellner
d0147a5e67
Fallback to empty restoreConfig if migration fails
2017-04-18 11:36:57 +02:00
Johannes Zellner
a1dfc2b47b
Add backups.restoreConfig field with migration
2017-04-18 11:33:43 +02:00
Girish Ramakrishnan
5eaade1079
doc: Add note on LE
2017-04-17 22:08:47 -07:00
Girish Ramakrishnan
19d8b90a12
pass IP in query parameter
2017-04-17 21:14:13 -07:00
Girish Ramakrishnan
6bc764090c
Get geolocation info from geolocation.cloudron.io
2017-04-17 21:09:04 -07:00
Girish Ramakrishnan
d64c4927aa
doc: add a privacy section
2017-04-17 20:44:42 -07:00
Johannes Zellner
9c45dec8b0
Fix permissions for the filesystem backend
...
node will always apply the umask, so we have to set and then restore it
properly
2017-04-17 20:26:06 +02:00
Johannes Zellner
a21750a4c9
Fix the mysql dump commandline
2017-04-17 20:26:06 +02:00
Johannes Zellner
dda16331f6
Remove unused rmbackup.sh
2017-04-17 20:26:06 +02:00
Johannes Zellner
7b93150047
Also add intermediate removeAppRestoreConfig() api
2017-04-17 20:26:06 +02:00
Johannes Zellner
a98177fe71
Ensure non-root permissions to the backups
2017-04-17 20:26:06 +02:00
Johannes Zellner
d95e68926b
Remove unused backupapp.sh and backupbox.sh
2017-04-17 20:26:06 +02:00
Johannes Zellner
ff3a748398
Call backuptask.js directly as root to avoid trampoline shell scripts
2017-04-17 20:26:05 +02:00
Johannes Zellner
9354784f01
Remove unused cpbackup.sh
2017-04-17 20:26:05 +02:00
Johannes Zellner
e021a4b377
Remove unused restoreapp.sh
2017-04-17 20:26:05 +02:00
Johannes Zellner
4fac5a785f
Add unit tests for the filesystem storage backend
2017-04-17 20:26:05 +02:00
Johannes Zellner
4d42c116ce
Implement all the apis for the filesystem storage backend
2017-04-17 20:26:05 +02:00
Johannes Zellner
3879b55642
Also copy the app restore config file
2017-04-17 20:26:05 +02:00
Johannes Zellner
9d61ccaa45
Add custom archiver until upstream fixes
2017-04-17 20:26:05 +02:00
Johannes Zellner
6d8cf8456e
Add filesystem backend encryption support
...
We will probably remove this but lets keep this for now
just to keep changes low in the next release.
2017-04-17 20:26:05 +02:00
Johannes Zellner
5e1ad4ad93
We need root access to copy backup files with the filesystem backend
2017-04-17 20:26:05 +02:00
Johannes Zellner
b29a6014d5
Remove unused shell variable
2017-04-17 20:26:05 +02:00
Johannes Zellner
bd7625031e
The writeable stream end event is 'finished'
2017-04-17 20:26:05 +02:00
Johannes Zellner
9e881d1934
Gunzip the app backups
2017-04-17 20:25:59 +02:00
Johannes Zellner
31f93f0255
Use the directory property not the object
2017-04-17 20:09:10 +02:00
Johannes Zellner
67a7624da0
add an explicit saveAppRestoreConfig() api
2017-04-17 20:09:10 +02:00
Johannes Zellner
7fdf491815
Add backuptask.js to work with new storage interface
2017-04-17 20:09:02 +02:00
Johannes Zellner
798c2ff921
Return correct error if route53 security token is invalid
2017-04-16 12:52:14 +02:00
Girish Ramakrishnan
42c138e134
doc: appstore_config API
2017-04-15 07:30:58 -07:00
Girish Ramakrishnan
b1b389dd7d
Use the POST routes to login to appstore
2017-04-15 07:13:42 -07:00
Girish Ramakrishnan
8911081f85
When dns config changes, only fixup the cloudron records
2017-04-14 19:52:44 -07:00
Girish Ramakrishnan
9605fe3842
Only change dns records of already installed apps
2017-04-14 19:48:58 -07:00
Girish Ramakrishnan
bb91faf23c
mysql: Use utf8mb4 character set
2017-04-14 13:29:01 -07:00
Johannes Zellner
ba56f7d15d
Special case versions lower than '0.11*' to not pass new --data-dir
2017-04-14 17:24:28 +02:00
Johannes Zellner
6e73761983
We still require the versionsUrl in the setup script to be able to restore to older versions
2017-04-14 15:05:09 +02:00
Girish Ramakrishnan
588812a13a
Disable secure cookies for tests (since they use http)
2017-04-14 01:45:00 -07:00
Girish Ramakrishnan
b6d8721aed
reset config in backups test
2017-04-14 01:35:04 -07:00
Girish Ramakrishnan
da835afde1
More test fixing
2017-04-14 01:28:29 -07:00
Girish Ramakrishnan
5e22caa6e7
Fix updatechecker tests
2017-04-14 00:36:22 -07:00
Girish Ramakrishnan
937931e885
Pass the token when querying for updates
...
Part of #293
2017-04-13 19:40:59 -07:00
Girish Ramakrishnan
c2b140208e
doc: add note on subdomains vs paths
2017-04-13 16:11:12 -07:00
Girish Ramakrishnan
f9a4d00b3c
Query tarball url via appstore
...
Part of #293
2017-04-13 15:41:08 -07:00
Girish Ramakrishnan
eb2ef47df1
remove boxVersionsUrl
...
update checker now uses the appstore routes
2017-04-13 11:38:42 -07:00
Girish Ramakrishnan
cdb5dc2c53
Remove isDev flag
...
We can pretty much test everything here on self-hosted cloudrons now
2017-04-13 11:34:03 -07:00
Girish Ramakrishnan
f6a2406091
Use hat for secret instead of uuid
2017-04-13 11:05:46 -07:00
Johannes Zellner
c7134d2da3
Use a dynamic cookie secret
...
Fixes #300
2017-04-13 15:13:07 +02:00
Johannes Zellner
1692842bf0
Enable secure cookies
...
Fixes #299
2017-04-13 14:04:30 +02:00
Johannes Zellner
8d78f06a34
Add more 0.110.0 changes
2017-04-13 13:23:40 +02:00
Johannes Zellner
1694a1536c
Use our own tar for app backups
...
This is only temporarily as moving away from btrfs snapshots,
we introduced a regression for app backups.
gnu tar fails to create tarballs if the files change during packing.
2017-04-13 13:06:12 +02:00
Girish Ramakrishnan
e0b9dc3623
doc: fix links
2017-04-13 01:34:10 -07:00
Girish Ramakrishnan
644bc54a0d
Get box updates via appstore API
...
Part of #293
2017-04-13 01:31:25 -07:00
Girish Ramakrishnan
b2d062bdf8
Get app updates via appstore API
...
Part of #293
2017-04-13 01:23:18 -07:00
Girish Ramakrishnan
894d7a6e72
Handle AppstoreError correctly
2017-04-13 01:11:20 -07:00
Girish Ramakrishnan
fee513594f
Move sendAliveStatus to appstore.js
2017-04-13 01:07:07 -07:00
Girish Ramakrishnan
456c183622
Move sendAliveStatus into appstore.js
2017-04-13 00:52:02 -07:00
Girish Ramakrishnan
0488aada9f
refactor appstore logic to separate file
2017-04-13 00:42:44 -07:00
Girish Ramakrishnan
54f7cf5f64
Fix copy/paste errors
2017-04-13 00:19:11 -07:00
Girish Ramakrishnan
e1740a0d4b
Use new alive route for sending status
2017-04-12 21:29:42 -07:00
Girish Ramakrishnan
bac7d3ad84
Check for app and box updates once an hour
...
Part of #293
2017-04-12 18:48:14 -07:00
Girish Ramakrishnan
6402b0c221
doc: update check api
2017-04-12 18:38:33 -07:00
Girish Ramakrishnan
1f55bb52fc
Add a button to check updates instantly
...
Part of #293
2017-04-12 18:34:20 -07:00
Girish Ramakrishnan
1029402d1e
Make mailer.js work in test mode
2017-04-12 15:35:52 -07:00
Girish Ramakrishnan
abb371d81e
Add 0.110.0 changes
2017-04-12 13:49:27 -07:00
Girish Ramakrishnan
779c9d79b3
Add UI to choose from backups to restore from
...
Fixes #296
2017-04-12 13:41:26 -07:00
Girish Ramakrishnan
832c11d785
Always show the restore button
...
Part of #296
2017-04-12 13:17:53 -07:00
Girish Ramakrishnan
85fb63298e
Overwrite existing DNS record on restore
2017-04-12 13:17:50 -07:00
Girish Ramakrishnan
25b9d5a746
Fix comment
2017-04-12 00:17:20 -07:00
Girish Ramakrishnan
6dc900bbd8
Bump mysql to fix the encoding issue in dumps
2017-04-12 00:16:33 -07:00
Girish Ramakrishnan
e32b313cf2
refactor restore/clone/install into single function
2017-04-11 15:16:42 -07:00
Girish Ramakrishnan
a01dea3932
Allow installing from a backup
2017-04-11 13:06:39 -07:00
Johannes Zellner
aa0e820605
Bump infra version to rebuild nginx configs
2017-04-10 22:49:35 +02:00
Johannes Zellner
13db61a0e2
Merge branch 'master' into 'master'
...
Adding proxy_max_temp_file_size 0 to nginx config
Closes #294
See merge request !5
2017-04-10 20:48:50 +00:00
mehdi
fce2cdce7f
Adding proxy_max_temp_file_size 0 to nginx config.
...
Explanation:
When proxying an HTTP request, nginx first fills up the memory buffers (set by proxy_buffer_size and proxy_buffers).
When these are full, it then writes them to a temporary file in batches of proxy_temp_file_write_size until it reaches proxy_max_temp_file_size.
When proxy_max_temp_file_size is not set, and a very large file is being served, it reaches the maximum of 1GB, and nginx begins to behave weirdly.
2017-04-10 22:47:19 +02:00
Johannes Zellner
89bb690152
Only log failing REST requests
2017-04-10 14:17:26 +02:00
Girish Ramakrishnan
5c203dc759
Handle case where restore config is not found
2017-04-07 15:29:42 -07:00
Girish Ramakrishnan
4d737d535a
doc: disks api
2017-04-07 12:52:57 -07:00
Girish Ramakrishnan
558acf27a3
Add 0.109.1 changes
2017-04-07 12:38:48 -07:00
Girish Ramakrishnan
3da503ab8e
doc: improve the data-dir script
2017-04-07 12:34:59 -07:00
Girish Ramakrishnan
299e8aceeb
Check if --data-dir exists
2017-04-07 12:34:59 -07:00
Johannes Zellner
b422a27be8
Use the new disks api to explicitly get the apps data disk stats
...
We can add the other graphs if the disks deviate later
Also this is still pending the check if symlinked folders are reported
correctly.
Fixes #290
2017-04-07 18:46:11 +02:00
Johannes Zellner
f2312a6768
Add rest api to list disks where cloudron data is stored
2017-04-07 18:45:36 +02:00
Johannes Zellner
178ffe20a8
use df instead of node-df
2017-04-07 18:45:14 +02:00
Johannes Zellner
3b8edd4896
Do not make the DNS notfication persistent
2017-04-07 17:08:52 +02:00
Girish Ramakrishnan
f16aab7f80
Add --data-dir to cloudron-setup
...
This allows the data-dir to be re-located
Part of #148
2017-04-06 23:56:57 -07:00
Girish Ramakrishnan
09118d6b06
doc: how to configure data location
2017-04-06 15:31:43 -07:00
Girish Ramakrishnan
bd57ee9461
doc: more security notes
2017-04-06 13:53:35 -07:00
Girish Ramakrishnan
1fbbe036ce
doc: appstore command
2017-04-06 13:46:40 -07:00
Johannes Zellner
94d7bc5328
Ensure the app install dialog closes and releases the backdrop when moving to other views
...
Fixes #201
2017-04-06 17:39:45 +02:00
Johannes Zellner
d709a5cfe4
Attempt to give better digitalocean DNS error messages
2017-04-05 16:50:31 +02:00
Johannes Zellner
188f000507
Dump whole errors for app installation progress
...
Sometimes on error we get random strings for the installationProgresss,
as those contain the upstream errors :-/
We now at least attempt to show that so the user may give us the real
error not some wrongly parsed bits from that.
In the long run we have to make that a real structure to give sane error
messages
2017-04-05 16:42:13 +02:00