Girish Ramakrishnan
060d9e88ef
Pass manifest to backupApp
2016-06-14 11:32:29 -07:00
Girish Ramakrishnan
9cf497a87d
0.15.2 changes
2016-06-13 23:31:35 -07:00
Girish Ramakrishnan
b174765992
delete unused addonsa fter backup
2016-06-13 23:07:41 -07:00
Girish Ramakrishnan
9c2d217176
fix typo
2016-06-13 23:04:43 -07:00
Girish Ramakrishnan
3197349058
Fix app backup before updates
...
we were passing the current manifest to the backup code which meant that
the app version and manifest was incorrect.
2016-06-13 21:19:29 -07:00
Girish Ramakrishnan
5f3378878e
remove lastBackupConfig
2016-06-13 19:19:28 -07:00
Girish Ramakrishnan
53cd45496b
parse the response
2016-06-13 18:28:51 -07:00
Girish Ramakrishnan
942339435a
return config correctly
2016-06-13 18:04:22 -07:00
Girish Ramakrishnan
2bd6519795
add assert
2016-06-13 18:02:57 -07:00
Girish Ramakrishnan
1763c36a0b
restore from the backup's config.json
...
To summarize what we are doing is that restore is simply getting old data and
old code. Config is not changed. If config is required, then it has to come
in the restore REST parameter. Otherwise, there is too much magic.
https://blog.smartserver.io/2016/06/13/app-restore/
2016-06-13 16:54:59 -07:00
Girish Ramakrishnan
2c0eb33625
use apps.getAppConfig when generating config.json
2016-06-13 15:11:49 -07:00
Girish Ramakrishnan
040b9993c7
refactor code into getAppConfig
2016-06-13 15:07:15 -07:00
Girish Ramakrishnan
8f21126697
add a way to get the restore config (config.json)
2016-06-13 15:04:27 -07:00
Girish Ramakrishnan
716d29165c
store altDomain in backupConfig
2016-06-13 13:14:04 -07:00
Girish Ramakrishnan
a2ec308155
pass the lastBackupId explicity as the backup to restore to
2016-06-13 10:13:54 -07:00
Girish Ramakrishnan
b82610ba00
pass data argument to restore
2016-06-13 10:08:58 -07:00
Johannes Zellner
ed4674cd14
Disable the trial popup
2016-06-13 16:51:28 +02:00
Johannes Zellner
4e9dc75a37
Replace DatabaseError with ClientsError where applicable
2016-06-13 14:43:56 +02:00
Johannes Zellner
f284b4cd83
Use clients.get() instead of clientdb.get()
2016-06-13 13:51:14 +02:00
Johannes Zellner
15cf83b37c
Fixup the built-in client setup for tests
2016-06-13 13:48:43 +02:00
Johannes Zellner
0eff8911ee
Do not use DatabaseError in routes clients.js
2016-06-13 13:29:39 +02:00
Girish Ramakrishnan
814a0ce3a6
wait for 10mins before sending out emails about app being down
2016-06-11 18:36:38 -07:00
Girish Ramakrishnan
b3e1c221b7
bump infra to force a reconfigure for existing pr cloudrons
2016-06-11 13:49:55 -07:00
Girish Ramakrishnan
dc31946e50
move webdav block outside location
...
when inside location, nginx is redirecting to 127.0.0.1 (no clue why)
2016-06-11 12:05:16 -07:00
Girish Ramakrishnan
36bbb98970
0.15.1 changes
2016-06-10 12:40:48 -07:00
Girish Ramakrishnan
ea4cea9733
add tag on blur
2016-06-10 12:35:57 -07:00
Girish Ramakrishnan
7c06937a57
Add @fqdn hint to email aliases
2016-06-10 12:04:40 -07:00
Girish Ramakrishnan
597704d3ed
remove the plain input email aliases
2016-06-10 11:58:25 -07:00
Girish Ramakrishnan
63290b9936
Final fixes to taginput
2016-06-10 11:58:00 -07:00
Girish Ramakrishnan
324222b040
Fix template code style
2016-06-09 16:11:57 -07:00
Girish Ramakrishnan
f37b92da04
taginput: remove autocomplete. we don't use it
2016-06-09 10:34:42 -07:00
Girish Ramakrishnan
0de3b8fbdb
taginput: add tag input control for email aliases
2016-06-09 10:34:29 -07:00
Johannes Zellner
f0cb3f94cb
Fixup the token ui to allow removal of user added clients
2016-06-09 16:17:14 +02:00
Johannes Zellner
1508a5c6b9
Add tokendb.delByClientId()
2016-06-09 15:42:52 +02:00
Johannes Zellner
9b9db6acf1
Only the rest api shall not allow to remove those
2016-06-09 15:35:46 +02:00
Johannes Zellner
001bf94773
Remove unused require
2016-06-09 15:35:20 +02:00
Johannes Zellner
0160c12965
Allow to distinguish between built-in auth clients and external ones
2016-06-09 15:35:00 +02:00
Johannes Zellner
d08397336d
Add test for addon auth clients deletion
2016-06-09 15:12:30 +02:00
Johannes Zellner
880754877d
Prevent the rest api to delete addon auth clients
2016-06-09 14:44:38 +02:00
Johannes Zellner
984a191e4c
Use the variable correctly
2016-06-09 14:24:53 +02:00
Girish Ramakrishnan
cdca43311b
wording and other minor fixes
2016-06-08 17:06:27 -07:00
Girish Ramakrishnan
020b47841a
0.15.1 changes
2016-06-08 16:42:00 -07:00
Girish Ramakrishnan
3f602c8a04
verifyWithUsername and not as id
2016-06-08 15:54:22 -07:00
Girish Ramakrishnan
dea0c5642d
bump mail container
2016-06-08 13:16:44 -07:00
Girish Ramakrishnan
3d2b75860b
minor fixes to session ui
2016-06-08 13:04:22 -07:00
Girish Ramakrishnan
0da754a14b
fix singular/plural
2016-06-08 12:52:19 -07:00
Girish Ramakrishnan
3d408c8c90
fix wording
2016-06-08 12:43:15 -07:00
Girish Ramakrishnan
40348a5132
Merge branch '0.15'
2016-06-08 11:56:24 -07:00
Girish Ramakrishnan
9a177d9e46
fix typo
2016-06-08 10:14:59 -07:00
Girish Ramakrishnan
6f1df9980d
minor wording changes
2016-06-08 09:58:30 -07:00
Girish Ramakrishnan
0c9d331f47
more changes
2016-06-08 08:46:18 -07:00
Girish Ramakrishnan
f9db24e162
Fix autoupdate detection logic
...
We should be comparing existing manifest ports with new manifest ports.
The user chosen bindings itself doesn't matter.
2016-06-08 08:45:40 -07:00
Johannes Zellner
385bf3561b
Remove unused function in platform.js
2016-06-08 15:06:03 +02:00
Johannes Zellner
4304f20fe0
Fix some log output
2016-06-08 15:05:43 +02:00
Johannes Zellner
509083265f
fix setup_infra.sh to accomodate ifconfig differences
2016-06-08 15:01:28 +02:00
Johannes Zellner
1b9dbd06c8
Fix typo
2016-06-08 14:55:14 +02:00
Johannes Zellner
d6482414bb
Fixup the clientdb tests
2016-06-08 14:49:54 +02:00
Johannes Zellner
194b9b35bd
We now have 3 built-in api clients
2016-06-08 14:48:03 +02:00
Johannes Zellner
6b9acb4722
Preserve the built-in clients on db clean
2016-06-08 14:47:21 +02:00
Johannes Zellner
08c3cb9376
Insert the default auth clients for tests
2016-06-08 14:37:41 +02:00
Johannes Zellner
79631ba996
Provide a fallback for the redirect uri
2016-06-08 14:30:42 +02:00
Johannes Zellner
4776a005a5
Remove redundant client TYPE_*s
2016-06-08 14:09:06 +02:00
Johannes Zellner
e954df2120
Issue developer tokens with cid-cli
2016-06-08 13:39:31 +02:00
Johannes Zellner
526a62a20e
Fix the async iterator
2016-06-08 13:35:32 +02:00
Johannes Zellner
e2432d002f
Count activeTokens correctly
2016-06-08 13:31:17 +02:00
Johannes Zellner
6e4d6d1099
Do not show application token listing if there is nothing to show
2016-06-08 13:03:59 +02:00
Johannes Zellner
fc2d1d61d7
Also logout the webadmin session
2016-06-08 13:03:21 +02:00
Johannes Zellner
4c4ae08b44
Allow users to see issued tokens and revoke them all in one
2016-06-08 12:56:48 +02:00
Johannes Zellner
401c0e1b44
Special handling for better ui for sdk tokens
2016-06-08 11:55:40 +02:00
Johannes Zellner
e431bd6040
Fix typo
2016-06-08 11:36:01 +02:00
Johannes Zellner
a69cd204d6
Handle sdk and cli clients just like the webadmin
2016-06-08 11:33:08 +02:00
Johannes Zellner
3c3de6205e
Add test case for blocking cid-webadmin deletion
2016-06-08 11:27:10 +02:00
Johannes Zellner
16444f775d
Prevent deletion of the built-in clients
2016-06-08 11:24:02 +02:00
Johannes Zellner
2676658b5d
Add auth client cid-sdk and cid-cli
2016-06-08 11:20:06 +02:00
Girish Ramakrishnan
fbb8a842c1
do not require password
2016-06-08 00:07:41 -07:00
Girish Ramakrishnan
62b586e8dd
fix require path
2016-06-07 20:57:39 -07:00
Girish Ramakrishnan
313d98ef70
add a route to check for updates quickly
2016-06-07 20:24:41 -07:00
Girish Ramakrishnan
06448f146d
fix typo
2016-06-07 20:09:53 -07:00
Girish Ramakrishnan
064d950f87
add new tests for field validation
2016-06-07 16:00:02 -07:00
Girish Ramakrishnan
3236ce9cd6
check if both are null
2016-06-07 15:36:45 -07:00
Johannes Zellner
f74b22645f
Token view is now admin only
2016-06-07 22:56:27 +02:00
Johannes Zellner
3540f2c197
Move token management to separate view for admins only
2016-06-07 22:54:53 +02:00
Girish Ramakrishnan
3231fe7874
use user.get which already set admin flag
2016-06-07 10:03:08 -07:00
Girish Ramakrishnan
dc8fd2eab3
do not use userdb directly
2016-06-07 10:01:14 -07:00
Girish Ramakrishnan
3ae388602c
fix wording
2016-06-07 09:27:42 -07:00
Johannes Zellner
733187f3c4
Also show redirectURI for developers to use
2016-06-07 16:21:33 +02:00
Johannes Zellner
02d2a7058e
Remove whitespace in scope input
2016-06-07 16:15:53 +02:00
Johannes Zellner
25003bcf40
Add placeholder text in scope input
2016-06-07 16:12:56 +02:00
Johannes Zellner
234caa60eb
Add form validation for scopes
2016-06-07 16:10:33 +02:00
Johannes Zellner
a0227b6043
Remove now unused localhost test client
...
We can now simply use the regular APIs to do local development against a Cloudron
2016-06-07 16:03:50 +02:00
Johannes Zellner
46ac6c4918
Offset the footer in the console views
2016-06-07 15:58:53 +02:00
Johannes Zellner
4afde79297
Fix error message
2016-06-07 15:56:22 +02:00
Johannes Zellner
17d48f3fce
Specify the expiration on the client. Currently this is 100 years.
...
I am not sure if this is the best approach, or if we should introduce a magic value instead.
2016-06-07 15:54:32 +02:00
Johannes Zellner
facdabcc8d
Mention the token expiration in the ui
2016-06-07 15:54:09 +02:00
Johannes Zellner
691803f10b
Allow optional expiresAt to be set on token creation
2016-06-07 15:47:13 +02:00
Johannes Zellner
8144c6d086
Patch up the token delete button with the route
2016-06-07 15:38:42 +02:00
Johannes Zellner
290ab6cc7d
Fix typo
2016-06-07 15:38:30 +02:00
Johannes Zellner
8e5af17e5d
Add route to delete a single token
2016-06-07 15:34:27 +02:00
Johannes Zellner
d9d94faf75
Refresh the client on token actions
2016-06-07 15:15:56 +02:00
Johannes Zellner
0201ab19e4
Pass in the client object
2016-06-07 14:47:56 +02:00
Johannes Zellner
721fe74f3c
The route creates the subobject
2016-06-07 14:47:47 +02:00
Johannes Zellner
96eeb247a1
Add rest api to create a new token for a client
2016-06-07 14:29:37 +02:00
Johannes Zellner
6261231593
add ui for token generation
2016-06-07 14:19:20 +02:00
Johannes Zellner
d62d2b17fe
Select tokens and secrets with single click
2016-06-07 14:10:20 +02:00
Johannes Zellner
89cef4f050
Show tokens for admins
2016-06-07 14:07:41 +02:00
Johannes Zellner
8602e033c5
Only show active clients for non-admins
2016-06-07 13:46:45 +02:00
Johannes Zellner
3598d89b12
?all is gone in clients route
2016-06-07 13:17:02 +02:00
Johannes Zellner
ffd552583c
Patch up the client remove ui
2016-06-07 13:12:53 +02:00
Johannes Zellner
9eabc9d266
Fixup the wording
2016-06-07 12:50:52 +02:00
Johannes Zellner
edf8cd736e
Add modal for client removal
2016-06-07 12:48:12 +02:00
Johannes Zellner
c5ebe2c2bf
Fixup the panel padding
2016-06-07 12:48:00 +02:00
Johannes Zellner
5d0ccc0dd7
Show correct token count
2016-06-07 12:37:18 +02:00
Johannes Zellner
4147455654
Fetch tokens for each client separately
2016-06-07 12:37:04 +02:00
Johannes Zellner
f3436a99a2
Fixup the client list details
2016-06-07 12:28:33 +02:00
Johannes Zellner
70d569e2e8
List all oauth clients in webadmin
2016-06-07 12:26:14 +02:00
Johannes Zellner
684625fbaf
Remove unused clients.getAllWithDetailsByUserId()
2016-06-07 12:25:48 +02:00
Johannes Zellner
c8b9ae542c
Simply return oauth clients instead of join with tokendb
2016-06-07 12:15:25 +02:00
Johannes Zellner
af29c1ba86
Handle external api client requests separately
2016-06-07 12:00:18 +02:00
Johannes Zellner
207e81345f
Log event for external login
2016-06-07 11:59:54 +02:00
Johannes Zellner
d880731351
Support ?all query param for oauth clients get route
2016-06-07 11:18:30 +02:00
Johannes Zellner
e603cfe96e
Add clients.getAllWithDetails()
2016-06-07 11:17:29 +02:00
Johannes Zellner
5b93a2870f
Add clientdb.getAllWithTokenCount()
2016-06-07 11:17:14 +02:00
Johannes Zellner
1214300800
Consistent code styling
2016-06-07 11:08:35 +02:00
Johannes Zellner
8159334cbf
Avoid more inlining
2016-06-07 10:55:36 +02:00
Johannes Zellner
78135c807a
Be consistent in client.js add -> create
2016-06-07 10:49:11 +02:00
Johannes Zellner
bfa33e4d8e
Fixup a linter issue
2016-06-07 10:48:36 +02:00
Johannes Zellner
8b23174769
add client.addOAuthClient()
2016-06-07 10:45:50 +02:00
Johannes Zellner
a078c94b97
Ensure autofocus is handled
2016-06-07 10:43:33 +02:00
Johannes Zellner
c86392cd60
Add modal dialog to create API clients
2016-06-07 10:42:54 +02:00
Johannes Zellner
f0e9256d46
Avoid style inlining
2016-06-07 10:10:58 +02:00
Girish Ramakrishnan
0cd4e4f03a
update now takes appStoreId
2016-06-04 20:51:17 -07:00
Girish Ramakrishnan
1766da9174
update code path now takes appStoreId
2016-06-04 20:05:29 -07:00
Girish Ramakrishnan
dbdcf1ec27
pass data object to update
2016-06-04 19:12:36 -07:00
Girish Ramakrishnan
c916ea2589
fix style
2016-06-04 18:56:53 -07:00
Girish Ramakrishnan
5540b5f545
remove unused require
2016-06-04 18:55:31 -07:00
Girish Ramakrishnan
1e38190e68
setting falsy values for cert/key removes it
2016-06-04 18:30:05 -07:00
Girish Ramakrishnan
8f3553090f
make args optional in configure
2016-06-04 18:07:06 -07:00
Girish Ramakrishnan
cc0f5a1f03
fix configure arg insanity
2016-06-04 16:32:27 -07:00
Girish Ramakrishnan
a1c531d2a8
better type checking in configure and make accessRestriction optional
2016-06-04 16:27:50 -07:00
Girish Ramakrishnan
57cb3b04d7
generate 2048-bit keys
2016-06-04 15:59:53 -07:00
Girish Ramakrishnan
a49cf98a8d
do not allow appId to be set
...
this is some legacy code
2016-06-04 13:40:43 -07:00
Girish Ramakrishnan
da6cab8dd6
we return 400 now
2016-06-04 13:32:41 -07:00
Girish Ramakrishnan
3b7cfdd7db
better type checking
2016-06-04 13:31:18 -07:00
Girish Ramakrishnan
f9251c8b37
sending manifest is now redundant
2016-06-04 13:23:13 -07:00
Girish Ramakrishnan
4068ff5f21
add TODO note to validate accessRestriction
2016-06-04 13:20:10 -07:00
Girish Ramakrishnan
ee073c91a3
return BAD_FIELD if app was not found
2016-06-04 13:15:38 -07:00
Girish Ramakrishnan
9e8742ca87
download manifest from appstore when appStoreId is provided
2016-06-04 01:07:43 -07:00
Girish Ramakrishnan
7f99fe2399
appStoreId has empty string default
2016-06-03 23:58:09 -07:00
Girish Ramakrishnan
bfe8df35df
toLowerCase in one place
2016-06-03 23:54:46 -07:00
Girish Ramakrishnan
e2848d3e08
fix apps.install insane arg list
2016-06-03 23:35:55 -07:00
Girish Ramakrishnan
bc823b4a75
make checkManifestConstraints return AppsError
2016-06-03 22:19:09 -07:00
Girish Ramakrishnan
c24f780722
make validateAccessRestriction and validateMemory return AppsError
2016-06-03 22:16:55 -07:00
Girish Ramakrishnan
0d51ec9920
make validatePortBindings return AppsError
2016-06-03 22:15:02 -07:00
Girish Ramakrishnan
e07e544029
make validateHostname return AppsError
2016-06-03 22:14:08 -07:00
Girish Ramakrishnan
5aff55c5ca
typo when stashing altDomain
2016-06-03 19:50:01 -07:00
Girish Ramakrishnan
5ebc29746d
fix failing tests
2016-06-03 19:14:16 -07:00
Girish Ramakrishnan
8fc44e6bc9
remove redundant checks
2016-06-03 19:08:47 -07:00
Girish Ramakrishnan
44f4872134
remove dead comments
2016-06-03 17:55:05 -07:00
Girish Ramakrishnan
49dd584a41
return expiresAt as ISO-string for API consistency
2016-06-03 10:11:09 -07:00
Girish Ramakrishnan
6d8f1f90d4
add note to change expires to TIMESTAMP type
2016-06-03 10:07:30 -07:00
Girish Ramakrishnan
c1ded66c1a
make download_url a post route
2016-06-03 09:23:15 -07:00
Johannes Zellner
4df49a82e5
Some clientdb.TYPE_ oversight in clients.js
2016-06-03 15:28:04 +02:00
Johannes Zellner
92e6ee9539
The clientSecret is now only ever created in the clients.js
2016-06-03 15:11:08 +02:00
Johannes Zellner
3ad2a2a5ca
Fixup the unit tests
2016-06-03 15:07:44 +02:00
Johannes Zellner
226537de04
Move client TYPE_* to clients.js
2016-06-03 15:05:00 +02:00
Johannes Zellner
41b324eb2d
Remove clientdb usage in addons.js
2016-06-03 14:56:45 +02:00
Johannes Zellner
1360729e97
Don't use clientdb directly from auth.js and apptask.js
2016-06-03 14:52:59 +02:00
Johannes Zellner
725e1debcc
Provide getByAppIdAndType() by clients.js
2016-06-03 14:47:06 +02:00
Johannes Zellner
201efa70b7
use clients instead of clientdb in oauth2.js
2016-06-03 14:38:58 +02:00
Johannes Zellner
c52d0369fa
Provide better feedback on invalid scopes
2016-06-03 13:53:33 +02:00
Johannes Zellner
b4dfad3aa3
Fixup the unit tests after removing PREFIX_USER
2016-06-03 13:09:26 +02:00
Johannes Zellner
7667cdc66d
PREFIX_USER finally gone
2016-06-03 13:01:23 +02:00
Johannes Zellner
3a9a667890
Make all token grants without PREFIX_USER
2016-06-03 13:01:05 +02:00
Johannes Zellner
304cfed5a9
Result of password setting is now a plain token identifier
2016-06-03 13:00:07 +02:00
Johannes Zellner
778c583a52
Activation hands out a token without PREFIX_USER now
2016-06-03 12:59:13 +02:00
Johannes Zellner
f988bb4d14
Do not use PREFIX_USER for token managment
2016-06-03 12:58:39 +02:00
Johannes Zellner
7057f1aaa2
All token identifiers are now plain user ids
2016-06-03 12:54:59 +02:00
Johannes Zellner
e06f5f88b8
Remove the token types
2016-06-03 12:54:34 +02:00
Johannes Zellner
03cd3f0b6f
Remove attached tokenType on req.user
2016-06-03 12:53:11 +02:00
Johannes Zellner
615f875169
Remove PREFIX_DEV for developer tokens
2016-06-03 12:52:10 +02:00
Johannes Zellner
f27ba04a00
Add test case for developer tokens
2016-06-03 11:11:11 +02:00
Johannes Zellner
3e0006a327
Allow tokens with SCOPE_ROLE_SDK through without a password
2016-06-03 11:10:59 +02:00
Johannes Zellner
558ca42ae8
Issue developer tokens with SCOPE_ROLE_SDK
2016-06-03 11:10:22 +02:00
Johannes Zellner
9d8a803185
Handle scope roles in scope checks
2016-06-03 11:09:48 +02:00
Johannes Zellner
105047b0c4
Add SCOPE_ROLE_SDK
2016-06-03 11:08:35 +02:00
Johannes Zellner
e335aa5dee
Check for sdk token instead of token type DEV
2016-06-03 10:17:52 +02:00
Johannes Zellner
10163733db
Separate the scope checking
2016-06-03 10:10:58 +02:00
Girish Ramakrishnan
251fad8514
add test for groupIds in listing api
2016-06-03 00:14:52 -07:00
Girish Ramakrishnan
036740f97b
filter out correct fields in the route code
2016-06-03 00:04:17 -07:00
Girish Ramakrishnan
f4958d936c
return groupIds in get user route
2016-06-03 00:00:11 -07:00
Girish Ramakrishnan
80ca69a128
user.update does not need the user object
2016-06-02 23:53:06 -07:00
Girish Ramakrishnan
097d23c412
move logic to model code
2016-06-02 23:29:43 -07:00
Girish Ramakrishnan
13a1213b0d
make group listing API return member userIds
2016-06-02 21:07:33 -07:00
Girish Ramakrishnan
76fe2bf531
add note to fix precision at some point
2016-06-02 19:43:23 -07:00
Girish Ramakrishnan
50c4e4c91e
log event only after lock is acquired
2016-06-02 19:26:58 -07:00
Girish Ramakrishnan
46441d1814
cloudron.update is not exposed
2016-06-02 19:23:21 -07:00
Girish Ramakrishnan
a4e73be834
pass auditSource for certificate renewal
2016-06-02 18:54:45 -07:00
Girish Ramakrishnan
6be0d0814d
pass auditSource from cron.js
2016-06-02 18:51:50 -07:00
Girish Ramakrishnan
e30d71921e
pass auditSource for app autoupdater
2016-06-02 18:49:56 -07:00
Girish Ramakrishnan
a49c78f32c
make box autoupdate generate eventlog
2016-06-02 18:47:09 -07:00
Girish Ramakrishnan
b077223e58
fix scope name
2016-06-02 17:49:54 -07:00
Girish Ramakrishnan
d2864dfe56
rename root scope to cloudron scope (for lack of better scope name)
2016-06-02 16:51:14 -07:00
Girish Ramakrishnan
6d08af35a8
give developer token root scope
2016-06-02 15:58:40 -07:00
Girish Ramakrishnan
54f9d653f7
fix error messages
2016-06-02 14:41:21 -07:00
Girish Ramakrishnan
8d65f93fa4
return error.message
2016-06-02 14:40:29 -07:00
Girish Ramakrishnan
462440bb30
do not check for password in profile route
...
This is already checked by the verifyPassword middleware based on
the token type.
When using dev tokens, this check barfs for lack of password field
even when none is required.
2016-06-02 14:26:01 -07:00
Girish Ramakrishnan
65261dc4d5
add time_zone setter route
2016-06-02 13:54:07 -07:00
Girish Ramakrishnan
54ead09aac
make the name API work
...
currently this only works for the main webadmin (and not for
nakeddomain, error etc) but that's fine.
2016-06-02 13:25:02 -07:00
Girish Ramakrishnan
28b3550214
use error.message
2016-06-02 13:00:23 -07:00
Girish Ramakrishnan
e2e70da4c5
restrict length to 32
2016-06-02 12:51:49 -07:00
Johannes Zellner
7326ea27ca
Only set username and displayName after successful update
2016-06-02 21:12:02 +02:00
Girish Ramakrishnan
1fe00f7f80
do not use verbs in resource url
2016-06-02 12:01:48 -07:00
Girish Ramakrishnan
e9e9d6000d
remove token check for user.update to work with dev tokens
2016-06-02 11:29:59 -07:00
Girish Ramakrishnan
6dccb3655f
add no groups available message in edit user dialog
2016-06-02 10:55:34 -07:00
Girish Ramakrishnan
c3113bd74d
go back to step2 if activation fails
2016-06-02 10:40:06 -07:00
Girish Ramakrishnan
e79119b72a
0.15.0 changes
2016-06-02 10:32:10 -07:00
Johannes Zellner
086cfdc1e6
Disabled form fields are not POSTed
...
I did not know about that fact, one has to use readonly
2016-06-02 16:12:32 +02:00
Johannes Zellner
1f091d3b4b
We have to let angular know
2016-06-02 16:06:15 +02:00
Johannes Zellner
892fa4b2ec
We still require the username to be sent always
2016-06-02 16:01:25 +02:00
Johannes Zellner
a87b4b207c
Adhere to already set username in user setup view
2016-06-02 15:47:58 +02:00
Johannes Zellner
bdd14022d6
Report user conflict message all the way through the rest routes
2016-06-02 15:41:07 +02:00
Johannes Zellner
3d40cf03b1
Pass down the reason why the user conflicts
2016-06-02 15:39:21 +02:00
Johannes Zellner
594be7dbbd
Allow the userdb code to distinguish between username or email duplicates
2016-06-02 15:34:27 +02:00
Johannes Zellner
a52e2ffc23
Distinguish between username and email conflict
2016-06-02 15:19:35 +02:00
Johannes Zellner
8eeee712aa
Remove unused require
2016-06-02 14:14:16 +02:00
Johannes Zellner
0f62faa198
All our tokens are now representing an user with a profile
2016-06-02 14:13:57 +02:00
Johannes Zellner
bfd66cf309
Remove unused token PREFIX_APP
2016-06-02 14:07:41 +02:00
Johannes Zellner
c2f7d61e34
Remove unused token TYPE_APP
2016-06-02 14:07:19 +02:00
Johannes Zellner
d5d5e356ae
Add error handling for invalid usernames
2016-06-02 13:52:44 +02:00
Johannes Zellner
531752cd43
Use placeholder for description in username and displayName fields
2016-06-02 13:52:33 +02:00
Johannes Zellner
9eac56578c
Allow admins to set the username and displayName optionally on user creation
2016-06-02 13:32:45 +02:00
Johannes Zellner
d06398dbfd
Move webdav nginx fixes into app endpoint
...
Not sure if this will now still work with oauth proxy though.
2016-06-02 09:49:01 +02:00
Girish Ramakrishnan
60ce6b69ee
profile updates must be POST
2016-06-02 00:31:41 -07:00
Girish Ramakrishnan
4fcc7fe99f
updateUser is POST
2016-06-02 00:27:06 -07:00
Girish Ramakrishnan
82cd215ffa
merge bad fields and pass error.message correctly in REST responses
2016-06-02 00:12:21 -07:00
Girish Ramakrishnan
1dcea84068
fix typo
2016-06-01 23:43:21 -07:00
Girish Ramakrishnan
4107252bfe
developer mode is true by default
2016-06-01 23:13:12 -07:00
Girish Ramakrishnan
9cc6cb56f7
fix error message
2016-06-01 19:38:42 -07:00
Girish Ramakrishnan
48b99a4203
enable developer mode by default
...
also emphasize on the api aspect
2016-06-01 18:57:15 -07:00
Girish Ramakrishnan
824767adbb
enabled -> isEnabled
2016-06-01 18:21:02 -07:00
Girish Ramakrishnan
3d84880d92
keep limits in sync with the nginx config
2016-06-01 18:09:23 -07:00
Girish Ramakrishnan
dfa08469d6
set timeouts explicitly
2016-06-01 17:33:28 -07:00
Girish Ramakrishnan
d798073d95
fix comment of default_server
2016-06-01 17:28:15 -07:00
Girish Ramakrishnan
41632b8c11
fix favicon of naked domain
2016-06-01 17:27:39 -07:00
Girish Ramakrishnan
6ccc46717e
remove unused middleware
2016-06-01 16:59:51 -07:00
Girish Ramakrishnan
2495caf2eb
remove unused redis module
2016-06-01 16:55:58 -07:00
Girish Ramakrishnan
ae9c104a8b
remove unused bytes module
2016-06-01 16:54:25 -07:00
Girish Ramakrishnan
683f371778
remove serve-favicon
...
favicon is served up as /api/v1/cloudron/avatar
2016-06-01 16:52:28 -07:00
Girish Ramakrishnan
eb29bdd575
document keepalive_timeout
2016-06-01 16:51:52 -07:00
Girish Ramakrishnan
b13de298bf
Add some REST api tests
2016-06-01 16:33:18 -07:00
Johannes Zellner
47978436c2
Set Destination header for webdav in nginx proxy
2016-06-01 18:49:50 +02:00
Johannes Zellner
71b5cc4702
Fix invite mail wording
2016-06-01 18:45:31 +02:00
Girish Ramakrishnan
5a9e32d41a
hide aliases field if no username is set
2016-06-01 06:33:29 -07:00
Girish Ramakrishnan
b03e4db8d5
check for null username
2016-05-31 21:38:51 -07:00
Girish Ramakrishnan
663ff2410a
user.update must become a post route
2016-05-31 11:51:56 -07:00
Girish Ramakrishnan
f763759008
return empty groupIds
2016-05-31 11:49:59 -07:00
Girish Ramakrishnan
69aa11d6c6
send pretty json
2016-05-31 11:14:59 -07:00
Girish Ramakrishnan
65041743c5
update to connect-lastmile@0.1.0
2016-05-31 10:48:37 -07:00
Girish Ramakrishnan
76214d3d7a
no variable named infra_version
2016-05-30 19:45:59 -07:00
Girish Ramakrishnan
be83a967fc
node require will not work without json extension
2016-05-30 17:03:56 -07:00
Girish Ramakrishnan
119e095710
actually change ownership
2016-05-30 15:51:52 -07:00
Girish Ramakrishnan
5df3a41988
INFRA_VERSION may not exist
2016-05-30 14:48:41 -07:00
Girish Ramakrishnan
a34b611e20
make INFRA_VERSION writable by yellowtent user
2016-05-30 12:52:39 -07:00
Girish Ramakrishnan
75c1731443
do not add app mailboxes to database
...
a) we don't allow .app pattern in database for aliases and mailboxes
b) the addons already know about app names separately
2016-05-30 01:38:43 -07:00
Girish Ramakrishnan
9e36b7abf4
load addon vars for existing infra case
2016-05-30 01:06:41 -07:00
Girish Ramakrishnan
b37226d4d1
fix ui issues
2016-05-30 00:07:58 -07:00
Girish Ramakrishnan
311efe5d10
test: add test for getting aliases
2016-05-29 23:23:03 -07:00
Girish Ramakrishnan
ebdd6d8a31
add missing require
2016-05-29 23:15:55 -07:00
Girish Ramakrishnan
3ee9f70113
return alias info in mailbox response
2016-05-29 23:14:24 -07:00
Girish Ramakrishnan
adfc069e16
allow user alias to be set for custom domains
2016-05-29 23:02:01 -07:00
Girish Ramakrishnan
31fd0d711a
add setAliases
2016-05-29 22:45:48 -07:00
Girish Ramakrishnan
a6a852cfae
remove bogus debug
2016-05-29 22:01:21 -07:00
Girish Ramakrishnan
e9b3e22e86
check version of existing infra
2016-05-29 21:58:04 -07:00
Girish Ramakrishnan
564d61bcf5
fix typo
2016-05-29 21:31:49 -07:00
Girish Ramakrishnan
5582ac7402
add some debugs
2016-05-29 21:28:55 -07:00
Girish Ramakrishnan
a05b6ad78d
delete mailbox on user delete
2016-05-29 21:02:51 -07:00
Girish Ramakrishnan
ec71390d0b
autocreate mailbox when username is available
2016-05-29 19:14:01 -07:00
Girish Ramakrishnan
68a3862ee5
add create and remove mailbox
2016-05-29 18:56:40 -07:00
Girish Ramakrishnan
a9f70d8363
add mailbox search endpoint
2016-05-29 18:24:54 -07:00
Girish Ramakrishnan
e91539d79a
add a todo
2016-05-29 18:08:16 -07:00
Girish Ramakrishnan
5546bfbf0e
add mailbox ldap auth point
2016-05-29 17:25:23 -07:00
Girish Ramakrishnan
803d47b426
refactor authenticate path into a middleware
2016-05-29 17:16:52 -07:00
Girish Ramakrishnan
e4c0192243
rename to appUserBind since it is tailored for apps
2016-05-29 17:07:48 -07:00
Girish Ramakrishnan
d5b5289e0c
Add mailbox importer for existing users and apps
...
this should prevent conflicts of mailboxes from the get-go.
2016-05-28 02:07:43 -07:00
Girish Ramakrishnan
2909aad72a
use async.series
2016-05-28 01:59:48 -07:00
Girish Ramakrishnan
cafbb31e78
push aliases to mail container on startup
2016-05-28 01:53:25 -07:00
Girish Ramakrishnan
080128539c
set/unset aliases on the mail container
2016-05-28 01:33:20 -07:00
Girish Ramakrishnan
cf93a99a4e
add a note about mailboxes
2016-05-27 22:28:56 -07:00
Girish Ramakrishnan
ce927bfa22
alias
...
also remove id since it's not useful for mailbox case (not like
mailbox can be renamed and we need a fixed it)
2016-05-27 22:20:08 -07:00
Girish Ramakrishnan
6993a9c7e7
add more mailbox route test
2016-05-27 18:23:14 -07:00
Girish Ramakrishnan
84d04cce16
initial mailboxes route
2016-05-27 18:17:57 -07:00
Girish Ramakrishnan
f735fd8172
add mailboxes tests
2016-05-27 17:43:25 -07:00
Girish Ramakrishnan
53e28db1d6
add note on accessRestriction
2016-05-27 11:10:36 -07:00
Girish Ramakrishnan
77457d1ea9
initial mailbox db and model code
2016-05-27 10:36:47 -07:00
Girish Ramakrishnan
161b7cf76b
add mailboxes table
2016-05-26 21:08:20 -07:00
Girish Ramakrishnan
01b6defd24
mount mail container /run into data
2016-05-26 15:18:10 -07:00
Girish Ramakrishnan
badc524ff2
'-' has special meaning haraka
...
so do '.app' instead
2016-05-26 10:58:30 -07:00
Girish Ramakrishnan
b3f53099f0
allow only alpha numerals in username
2016-05-25 21:36:20 -07:00
Girish Ramakrishnan
a28560cdc0
0.14.2 changes
2016-05-24 20:17:20 -07:00
Girish Ramakrishnan
4afdf50736
finally finally finally the tests are working
2016-05-24 20:04:37 -07:00
Girish Ramakrishnan
078e36f07f
turns out we cannot use sudo since it asks for password
2016-05-24 19:59:47 -07:00
Girish Ramakrishnan
3b8e15a61c
check for node in path
2016-05-24 18:32:15 -07:00
Girish Ramakrishnan
67682c5d27
check for test image
2016-05-24 17:44:19 -07:00
Girish Ramakrishnan
48e3b8ebf9
provide a dummy config for tests
2016-05-24 17:36:54 -07:00
Girish Ramakrishnan
2072dedf66
bump mail addon version
2016-05-24 16:46:54 -07:00
Girish Ramakrishnan
51f43ecc27
use infra_version.js in checkInstall
2016-05-24 16:46:27 -07:00
Girish Ramakrishnan
2347a7ced2
admin email is a platform property
2016-05-24 16:36:56 -07:00
Girish Ramakrishnan
b2cadaf95c
load vars files after the platform is created
2016-05-24 16:28:59 -07:00
Girish Ramakrishnan
957f787701
setup mail addon root credentials
2016-05-24 16:18:21 -07:00
Girish Ramakrishnan
ad48067bb2
setup_infra now uses infra_version.js
...
INFRA_VERSION is now removed. Note that DATA_DIR/INFRA_VERSION
still exists.
2016-05-24 16:16:03 -07:00
Girish Ramakrishnan
12b6c46558
use infra_version.js in splashpage
2016-05-24 13:31:45 -07:00
Girish Ramakrishnan
b4ba17c599
use the constant
2016-05-24 13:23:41 -07:00
Girish Ramakrishnan
7fb28662c1
remove old images in platform.js
2016-05-24 13:23:41 -07:00
Girish Ramakrishnan
4845db538a
use infra_version.js in platform.js
2016-05-24 13:23:41 -07:00
Girish Ramakrishnan
8429985253
use infra_version.js in addons.js
2016-05-24 13:23:41 -07:00
Girish Ramakrishnan
aff9ff47bc
use infra_version.js in baseimage script
2016-05-24 13:23:38 -07:00
Girish Ramakrishnan
9b3077eca3
add infra_version.js
2016-05-24 13:02:38 -07:00
Girish Ramakrishnan
39396cb3ab
call callback if provided
2016-05-24 11:39:05 -07:00
Girish Ramakrishnan
364f0ead51
debug out the cmd
2016-05-24 11:26:11 -07:00
Girish Ramakrishnan
5ac1d5575c
platform.js: minor refactor
2016-05-24 10:58:18 -07:00
Girish Ramakrishnan
e5a030baff
move platform cleanup bits to javascript
2016-05-24 10:52:55 -07:00
Girish Ramakrishnan
a100837e69
Add helpers to restore/reconfigure all apps
2016-05-24 10:44:45 -07:00
Girish Ramakrishnan
ffacf17a42
add paths.INFRA_VERSION_FILE
2016-05-24 10:26:08 -07:00
Girish Ramakrishnan
f5d37b6443
add ini module
2016-05-24 10:25:33 -07:00
Girish Ramakrishnan
d71d09c1ba
Add shell.execSync
2016-05-24 10:22:39 -07:00
Girish Ramakrishnan
c1a2444dfa
move container creation to platform.js
2016-05-24 09:40:26 -07:00
Girish Ramakrishnan
ef40aae3ba
set adminEmail to no-reply@localhost for tests
2016-05-24 00:54:38 -07:00
Girish Ramakrishnan
9570086c87
add config.smtpPort
2016-05-24 00:53:42 -07:00
Girish Ramakrishnan
57a823a698
make tests work
2016-05-24 00:44:01 -07:00
Girish Ramakrishnan
ec0ee07b17
test: email works now
2016-05-23 23:17:38 -07:00
Girish Ramakrishnan
3d7545133e
wait 30 secs in the beginning
2016-05-23 23:16:02 -07:00
Girish Ramakrishnan
bcc752469a
remove containers after the test
2016-05-23 22:47:40 -07:00
Girish Ramakrishnan
da85f4c096
stop ldap server in test
2016-05-23 21:59:06 -07:00
Girish Ramakrishnan
3b740a5651
make tests work
2016-05-23 20:41:00 -07:00
Girish Ramakrishnan
7eb202f19a
test: use the test-app instead of duplicating the checks in the tests
2016-05-23 20:17:11 -07:00
Girish Ramakrishnan
8dbd4c8527
use 1024 bit keys
...
Stacked error: error:04075070:rsa routines:RSA_sign:digest too big for rsa key
2016-05-23 19:31:57 -07:00
Girish Ramakrishnan
88f2ce554d
bump to mail 0.13.1 with the auth fix
2016-05-23 18:57:59 -07:00
Girish Ramakrishnan
57888659a6
Update test app version
2016-05-23 18:31:12 -07:00
Girish Ramakrishnan
ebdefa7f18
test: oauth addon
2016-05-23 17:34:25 -07:00
Girish Ramakrishnan
569150f602
tests: create a self-signed cert
2016-05-23 16:40:18 -07:00
Girish Ramakrishnan
6ccb806628
make apps-test pass
2016-05-23 16:31:02 -07:00
Girish Ramakrishnan
ae807b28b6
test: let server start the infra
...
otherwise, deps like dkim keys need to be setup in tests as well
2016-05-23 15:53:51 -07:00
Girish Ramakrishnan
00726b01e2
pass -no-run-if-empty instead
2016-05-23 15:50:36 -07:00
Girish Ramakrishnan
f5b777ab33
add route tests for username
2016-05-23 15:00:21 -07:00
Girish Ramakrishnan
d84e584222
add some username tests
2016-05-23 14:56:09 -07:00
Girish Ramakrishnan
31e452e1cc
test: mixed case reserved name
2016-05-23 14:52:29 -07:00
Girish Ramakrishnan
e015b9bd7a
0.14.1 changes
2016-05-23 12:29:49 -07:00
Girish Ramakrishnan
10e0cbcebc
do not set allowHalfOpen (otherwise we have to end socket ourself)
2016-05-23 10:50:04 -07:00
Girish Ramakrishnan
2768c3a336
acme: configure prod based on caas or acme
2016-05-23 09:48:17 -07:00
Girish Ramakrishnan
37512c4cac
Wrap the stdin stream to indicate EOF
...
The docker exec protocol supports half-closing to signal that the stdin
is finished. The CLI tool tried to do this by closing it's half of the
socket when the stdin finished. Unfortunately, this does not work because
nginx immediately terminates a half-close :/ Node itself has no problem.
http://mailman.nginx.org/pipermail/nginx/2008-September/007388.html
seems to support the hypothesis. Basically, for HTTP and websockets
there is no notion of half-close.
Websocket protocol itself has no half-close as well:
http://www.lenholgate.com/blog/2011/07/websockets---i-miss-the-tcp-half-close.html
http://doc.akka.io/docs/akka/2.4.5/scala/http/client-side/websocket-support.html
The fix is to implement our own protocol that wrap stdin. We put a length
header for every payload. When we hit EOF, the length is set to 0. The server
sees this 0 length header and closes the exec container socket.
2016-05-22 22:27:49 -07:00
Girish Ramakrishnan
0aaaa866e4
Add a whole bunch of magic for docker.exec to work
2016-05-22 00:27:32 -07:00
Girish Ramakrishnan
53cb7fe687
debug out cmd
2016-05-19 15:54:35 -07:00
Girish Ramakrishnan
da42f2f00c
fix boolean logic
2016-05-19 15:54:35 -07:00
Girish Ramakrishnan
27d2daae93
leave a note in nginx config
2016-05-19 12:27:54 -07:00
Girish Ramakrishnan
42cc8249f8
reserve usernames with -app in them
2016-05-18 21:45:02 -07:00
Girish Ramakrishnan
de055492ef
set username restriction to 2 chars
2016-05-18 11:05:45 -07:00
Girish Ramakrishnan
efa3ccaffe
fix crash because of missing error handling
2016-05-18 10:00:32 -07:00
Girish Ramakrishnan
32e238818a
make script more robust
2016-05-17 18:16:18 -07:00
Girish Ramakrishnan
2c1083d58b
log error if the curl parsing fails
2016-05-17 17:15:10 -07:00
Girish Ramakrishnan
517b967fe9
enable sieve
2016-05-17 14:04:57 -07:00
Girish Ramakrishnan
3c4ca8e9c8
reserve more usernames
2016-05-17 12:47:10 -07:00
Girish Ramakrishnan
4ec043836b
0.14.0 changes
2016-05-17 09:36:28 -07:00
Girish Ramakrishnan
7ec93b733b
setup restore paths for recvmail and email addon
2016-05-17 09:27:59 -07:00
Girish Ramakrishnan
a81262afb5
remove unused var
2016-05-17 08:47:57 -07:00
Girish Ramakrishnan
266603bb19
Do not barf on rmi
2016-05-16 16:56:17 -07:00
Girish Ramakrishnan
6dcecaaf55
log the ldap source
2016-05-16 14:31:57 -07:00
Girish Ramakrishnan
099eb2bca4
use port 2525
2016-05-16 12:52:36 -07:00
Girish Ramakrishnan
b92ed8d079
cn can also be the cloudron email
...
cn can be:
1. username
2. username@fqdn
3. user@personalemail.com
2016-05-16 12:21:15 -07:00
Girish Ramakrishnan
0838ce4ef8
fix casing
2016-05-16 12:13:23 -07:00
Girish Ramakrishnan
cc8767274a
Bind 587 with 2525 as well
...
MSA (587) and MTA (25) are the same protocol. Only difference is
that 587 does relaying with AUTH. Haraka has been configured to
make this distinction.
2016-05-16 08:32:30 -07:00
Girish Ramakrishnan
dfaed79e31
fix mail container name
2016-05-16 08:18:33 -07:00
Girish Ramakrishnan
9dc1a95992
SENDIMAGE -> IMAGE
2016-05-15 21:51:04 -07:00
Girish Ramakrishnan
5be05529c2
remove unused ldap ou
2016-05-15 21:25:56 -07:00
Girish Ramakrishnan
6ff7786f04
use the send addon service api
2016-05-15 21:23:44 -07:00
Girish Ramakrishnan
a833b65ef3
add mail container link once
2016-05-15 21:18:43 -07:00
Girish Ramakrishnan
83a252bd20
there is only mail container now
2016-05-15 21:15:53 -07:00
Girish Ramakrishnan
7ef3805dbc
docker data in test dir requires sudo
2016-05-13 22:38:36 -07:00
Girish Ramakrishnan
e5d906a065
create fake cert/key for tests to pass
2016-05-13 22:35:13 -07:00
Girish Ramakrishnan
b5e4e9fed6
bump postgresql
2016-05-13 22:13:58 -07:00
Girish Ramakrishnan
3ccb72f891
tests finally work
2016-05-13 22:05:05 -07:00
Girish Ramakrishnan
45cd4ba349
fix name
2016-05-13 22:03:40 -07:00
Girish Ramakrishnan
5b9b21c469
create recvmail link
2016-05-13 22:03:34 -07:00
Girish Ramakrishnan
ed55ad1c6f
change image name
2016-05-13 21:34:04 -07:00
Girish Ramakrishnan
560f460a32
rename to sendmail
2016-05-13 20:48:31 -07:00
Girish Ramakrishnan
aa116ce58c
fix tests
2016-05-13 20:21:09 -07:00
Girish Ramakrishnan
3f0e2024e4
pass db name and password for tests
2016-05-13 19:35:20 -07:00
Girish Ramakrishnan
d9c5b2b642
setup and teardown recvmail addon
2016-05-13 18:58:48 -07:00
Girish Ramakrishnan
5322ed054d
reserve 4190 for sieve
2016-05-13 18:48:05 -07:00
Girish Ramakrishnan
39c4954371
remove isIncomingMailEnabled. always enable for now
...
also, custom domain === we will take over domain completely (setup
mx and all)
2016-05-13 18:44:08 -07:00
Girish Ramakrishnan
78ad49bd74
hack for settings test
2016-05-13 18:27:00 -07:00
Girish Ramakrishnan
f56c960b92
use latest manifestformat (for recvmail, email)
2016-05-13 17:59:11 -07:00
Girish Ramakrishnan
8e077660c4
start_addons is redundant
2016-05-13 17:57:56 -07:00
Girish Ramakrishnan
1b8b4900a2
parametrize data_dir for tests
2016-05-13 17:57:56 -07:00
Girish Ramakrishnan
27ddcb9758
use the internal hostnames for email addon
...
The public ones are for the user to configure their MUA. This
things can have ssl disabled safely as well.
2016-05-13 08:28:13 -07:00
Girish Ramakrishnan
fdb951c9e5
set MAIL_DOMAIN in email addon as well
2016-05-12 23:34:35 -07:00
Girish Ramakrishnan
0f2037513b
remove recvmail bind
2016-05-12 21:48:42 -07:00
Girish Ramakrishnan
9da4e038bd
all lower case
2016-05-12 18:54:13 -07:00
Girish Ramakrishnan
ae3e0177bb
make script more robust
2016-05-12 18:16:26 -07:00
Girish Ramakrishnan
0751974624
Add a hack to test addon patching
2016-05-12 16:41:58 -07:00
Girish Ramakrishnan
b8242c82d6
create bind point for recvmail
2016-05-12 14:33:02 -07:00
Girish Ramakrishnan
442c02fa1b
set mailAlternateAddress to username@fqdn
...
This is mostly to keep haraka's rcpt_to.ldap happy. That plugin
could do with some love.
2016-05-12 14:32:15 -07:00
Girish Ramakrishnan
d5306052bb
refactor code for readability
2016-05-12 13:36:53 -07:00
Girish Ramakrishnan
8543dbe3be
create a new ou for addons
2016-05-12 13:20:57 -07:00
Girish Ramakrishnan
bf42b735d1
fix the smtp port
2016-05-12 09:11:29 -07:00
Girish Ramakrishnan
a2ba3989d0
use manifestformat 2.4.0
2016-05-12 08:57:12 -07:00
Girish Ramakrishnan
6f36d79358
implement email addon
2016-05-12 08:54:59 -07:00
Girish Ramakrishnan
1da24564b3
reserve postman subdomain
2016-05-11 15:04:22 -07:00
Girish Ramakrishnan
da61d5c0f1
add ou=recvmail for dovecot
2016-05-11 14:26:34 -07:00
Girish Ramakrishnan
79da7b31c7
use latest base image
2016-05-11 13:14:11 -07:00
Girish Ramakrishnan
631b238b63
use MAIL_LOCATION for mx record
2016-05-11 09:59:12 -07:00
Girish Ramakrishnan
ff5ca617b1
use ADMIN_LOCATION
2016-05-11 09:58:31 -07:00
Girish Ramakrishnan
e16125c67e
set MAIL_DOMAIN and MAIL_SERVER_NAME
2016-05-11 09:49:20 -07:00
Girish Ramakrishnan
646ba096c3
start recvmail addon in setup_infra
2016-05-11 08:55:51 -07:00
Girish Ramakrishnan
8be3b4c281
add mx records
2016-05-11 08:50:33 -07:00
Girish Ramakrishnan
5afff5eecc
open 25 (inbound smtp) and 587 (inbound submission)
2016-05-11 08:48:50 -07:00
Girish Ramakrishnan
84206738e1
open port 993 (imap)
2016-05-11 08:47:59 -07:00
Girish Ramakrishnan
8b2e4ce700
do another infra bump for existing cloudrons
2016-05-10 16:53:13 -07:00
Girish Ramakrishnan
776f184dbc
wait randomly instead
2016-05-10 16:51:20 -07:00
Girish Ramakrishnan
a54466f8c2
Fix apptask error because of multiple collectd restarts
...
Everyone gets in a rush to restart collectd and apptask update/restore
fails during infra updates
2016-05-10 09:52:55 -07:00
Girish Ramakrishnan
f36641b443
better error message
2016-05-10 09:50:57 -07:00
Girish Ramakrishnan
36eb107b83
0.13.4 changes
2016-05-10 09:16:16 -07:00
Girish Ramakrishnan
fa16ae9a0c
Use mail container 0.12.0 that contains the restart fix
2016-05-10 09:05:06 -07:00
Girish Ramakrishnan
517b36b3f0
fix typo
2016-05-09 23:58:35 -07:00
Girish Ramakrishnan
83a28afc8f
addons are started by box code now
2016-05-09 23:56:02 -07:00
Girish Ramakrishnan
e76c7de259
bump test app version
2016-05-09 23:40:59 -07:00
Girish Ramakrishnan
fcda4a771c
play around with some text
2016-05-09 18:47:11 -07:00
Girish Ramakrishnan
76d8f16e22
0.13.3 changes
2016-05-08 01:17:03 -07:00
Girish Ramakrishnan
1b3cd1f373
remove tls since server does not offer it anymore
2016-05-08 01:15:24 -07:00
Girish Ramakrishnan
62b020e96d
add note
2016-05-07 02:34:52 -07:00
Girish Ramakrishnan
bc78f4a6d8
fix user to match adminEmail
2016-05-07 01:32:14 -07:00
Girish Ramakrishnan
a8e458e935
Load certs into etc
2016-05-06 21:46:22 -07:00
Johannes Zellner
e4747ef50c
Rework the tutorial
2016-05-06 21:32:34 +02:00
Johannes Zellner
0d6637de27
Avoid circular dependencies with apps and certificates
2016-05-06 18:44:37 +02:00
Johannes Zellner
28e513a434
Fix eventlog tests
2016-05-06 18:05:28 +02:00
Girish Ramakrishnan
e73174685b
add note on settings route
2016-05-06 08:42:27 -07:00
Johannes Zellner
3af95508f5
eventlog getAllPaged is now getByQueryPaged
2016-05-06 17:27:52 +02:00
Johannes Zellner
4fa8ab596b
Show busy state in eventlogs
2016-05-06 17:23:39 +02:00
Johannes Zellner
54c9bb7409
Add filter bar for event log view
2016-05-06 17:18:47 +02:00
Johannes Zellner
4c7dc5056d
Add more query options for eventlog api
2016-05-06 16:49:17 +02:00
Johannes Zellner
e986a67d39
Fixup all the unit tests
2016-05-06 15:16:22 +02:00
Johannes Zellner
da8de173a6
Remove appdb.getBySubdomain()
2016-05-06 14:52:33 +02:00
Johannes Zellner
cbc906f8d1
Remove apps.getBySubdomain()
2016-05-06 14:52:06 +02:00
Johannes Zellner
c7958f8e1d
Remove unused /api/v1/subdomains/:subdomain
2016-05-06 14:51:02 +02:00
Johannes Zellner
b88ee8143a
Rename welcome -> tutorial
2016-05-06 14:41:20 +02:00
Johannes Zellner
e413f7ba9b
Handle tutorial walkthrough
2016-05-06 14:38:17 +02:00
Johannes Zellner
7e1055ae44
Show tutorial for admins
2016-05-06 14:23:21 +02:00
Johannes Zellner
c61ce40362
Add /api/v1/profile/tutorial route tests
2016-05-06 14:06:54 +02:00
Johannes Zellner
e48156dceb
postprocess showTutorial to ensure we deal with a boolean
2016-05-06 14:05:47 +02:00
Johannes Zellner
f3811e3df9
Remove all unused vars in profile test
2016-05-06 14:03:24 +02:00
Johannes Zellner
0d40b1b80d
Fix the test wording in profile password change tests
2016-05-06 14:02:21 +02:00
Johannes Zellner
8b92c8f7ae
Remove unused checkMails() in profile tests
2016-05-06 13:57:46 +02:00
Johannes Zellner
d41eb81b3d
Add new profile/ route to set the showTutorial field
2016-05-06 13:56:40 +02:00
Johannes Zellner
3adf91afed
Add setShowTutorial() api to users.js
2016-05-06 13:56:26 +02:00
Johannes Zellner
18f05de8ae
use users.showTutorial field in userdb
2016-05-06 13:56:05 +02:00
Johannes Zellner
b0f4396389
Add showTutorial field to users table
2016-05-06 13:55:03 +02:00
Johannes Zellner
bf99475dbd
Introduce basic welcome tutorial flow
2016-05-06 13:06:12 +02:00
Girish Ramakrishnan
d50fa70f47
pass -out
2016-05-05 21:26:13 -07:00
Girish Ramakrishnan
0e655cadb0
generate dkim keys before dns setup
...
Two things require DKIM keys
1. the mail addon
2. the DNS TXT record
2016-05-05 21:15:10 -07:00
Girish Ramakrishnan
496e1c3dc1
fix path to INFRA_VERSION
2016-05-05 18:37:17 -07:00
Girish Ramakrishnan
325252699e
set MAIL_FROM more smartly
2016-05-05 18:33:22 -07:00
Girish Ramakrishnan
2d43e22285
fix typo
2016-05-05 15:26:32 -07:00
Girish Ramakrishnan
9e673c3890
supply a bogus username/password
2016-05-05 15:24:52 -07:00
Girish Ramakrishnan
c3c18e8a4b
reserve more ports
2016-05-05 15:00:07 -07:00
Girish Ramakrishnan
cb1bd58cb9
do not export submission port just yet
2016-05-05 14:53:07 -07:00
Girish Ramakrishnan
0bdff14c9f
r -> ro
2016-05-05 13:54:57 -07:00
Girish Ramakrishnan
c4ae9526af
look for fallback cert in nginx cert dir
2016-05-05 13:52:08 -07:00
Girish Ramakrishnan
8d79ac9ae0
provide tls cert and key to mail server
...
haraka requires tls certs for:
1. supporting AUTH
2. port 587 support (MSA)
currently, we just reuse the cert for the admin domain. Otherwise,
we have to setup dns etc to get a new cert. While doable, its' not
necessary right now.
2016-05-05 13:18:17 -07:00
Girish Ramakrishnan
7d4ed5bafc
Revert "x"
...
This reverts commit a1554b9cc1642037e9fbd0d261722c908f499aab.
committed by mistake
2016-05-05 12:57:04 -07:00
Johannes Zellner
85db8f398b
Ensure we require an admin for settings routes
...
The cloudron name and avatar already have public routes.
2016-05-05 12:48:21 +02:00
Girish Ramakrishnan
636b71ce6f
Add MAIL_FROM env
2016-05-05 00:28:08 -07:00
Girish Ramakrishnan
b46008f0b1
add sendmail ou bind
...
this will be used by haraka to authenticate the apps
2016-05-05 00:26:43 -07:00
Girish Ramakrishnan
9d9bd42cd2
x
2016-05-05 00:09:16 -07:00
Girish Ramakrishnan
0f6a2a42f2
use latest mysql image
2016-05-04 23:09:30 -07:00
Girish Ramakrishnan
fc8bf82993
Add getters for fallback and admin cert
2016-05-04 17:37:21 -07:00
Girish Ramakrishnan
e56192913d
reserved smtp and imap locations
2016-05-04 15:54:21 -07:00
Girish Ramakrishnan
2d08ce441f
rename arg_fqdn to fqdn
2016-05-04 15:54:21 -07:00
Girish Ramakrishnan
87497c2047
pass fqdn as arg
2016-05-04 15:54:21 -07:00
Girish Ramakrishnan
32a0bf6fd2
add --check arg to setup_infra.sh
2016-05-04 15:54:21 -07:00
Girish Ramakrishnan
291e625785
skip infra setup for tests (the test does it itself)
2016-05-04 15:54:21 -07:00
Girish Ramakrishnan
6bcfd33e10
boot2docker is dead
2016-05-04 15:54:21 -07:00
Girish Ramakrishnan
b4c15b1719
Let the box code initialize the infrastructure
...
This is done because:
1. The box code can install certs for addons (like mail addon) when
required.
2. The box code initialize/teardown addons on demand. This is not planned
currently.
2016-05-04 15:54:21 -07:00
Girish Ramakrishnan
920626192c
fix error message
2016-05-04 09:28:50 -07:00
Johannes Zellner
778371b818
Only send out mails if the admin group has changed
2016-05-04 13:55:14 +02:00
Girish Ramakrishnan
d2a1cea1e8
0.13.2 changes
2016-05-03 23:48:45 -07:00
Girish Ramakrishnan
5683cefe89
provide auditSource when autoupdating app
2016-05-03 23:36:27 -07:00
Girish Ramakrishnan
126d64ffa8
move backup event in backupBoxAndApps
...
the updater uses this code route
2016-05-03 18:36:52 -07:00
Girish Ramakrishnan
7262eb208f
add route to get the timezone
2016-05-03 12:10:21 -07:00
Girish Ramakrishnan
f57f8f5e58
fix typo
2016-05-03 12:09:58 -07:00
Girish Ramakrishnan
00ad1308aa
handle empty time_zone
2016-05-03 12:09:22 -07:00
Girish Ramakrishnan
2cc37a9c31
0.13.1 changes
2016-05-03 11:50:52 -07:00
Girish Ramakrishnan
13b0093f20
telize has been discontinued. use freegeoip
2016-05-03 11:50:31 -07:00
Girish Ramakrishnan
5617baea50
eventlog tests
2016-05-02 14:54:25 -07:00
Girish Ramakrishnan
da79e4f229
only admin can view activity logs
2016-05-02 14:54:20 -07:00
Girish Ramakrishnan
6c1bd522e6
add pagination
2016-05-02 11:50:15 -07:00
Girish Ramakrishnan
7fca9decc1
fixes to eventlog
2016-05-02 11:07:55 -07:00
Girish Ramakrishnan
7cf08b6a4d
add start event
...
this signals that an update worked
2016-05-02 10:01:23 -07:00
Girish Ramakrishnan
ffedbdfa13
various minor fixes to eventlog
2016-05-02 10:01:23 -07:00
Johannes Zellner
43e207a301
Merge branch 'v0.12.7-hotfix'
2016-05-02 17:34:56 +02:00
Johannes Zellner
bea6019dc4
Changes for 0.12.7
2016-05-02 14:20:59 +02:00
Johannes Zellner
9042e9e1a9
Fix usage of the password change route in webadmin
2016-05-02 14:14:44 +02:00
Johannes Zellner
b855dee4cb
Fix crash by providing required eventsource
2016-05-02 13:43:12 +02:00
Girish Ramakrishnan
b322f6805f
move authType into source
2016-05-01 21:53:44 -07:00
Girish Ramakrishnan
ccc119ddec
add appLocation to user login
2016-05-01 21:47:35 -07:00
Girish Ramakrishnan
994cbaa22a
add event log in model code
2016-05-01 21:38:20 -07:00
Girish Ramakrishnan
d7a34bbf68
remove profile action
2016-05-01 20:14:21 -07:00
Girish Ramakrishnan
1f31fe6f8f
make user.remove and user.update add eventlog
2016-05-01 20:11:11 -07:00
Girish Ramakrishnan
37bdd2672b
make user.create take auditSource
2016-05-01 20:01:34 -07:00
Girish Ramakrishnan
63702f836a
move developer eventlogs to model code
2016-05-01 13:46:33 -07:00
Girish Ramakrishnan
5898428a6c
use req.connection.remoteAddress
2016-05-01 13:29:11 -07:00
Girish Ramakrishnan
f4a6c64956
make cloudron.activate take an auditSource
2016-05-01 13:27:57 -07:00
Girish Ramakrishnan
f9d4d3014d
remove reboot (user cannot initiate anyway)
2016-05-01 13:23:31 -07:00
Girish Ramakrishnan
8254337552
make cloudron.updateToLatest take an auditSource
2016-05-01 13:17:35 -07:00
Girish Ramakrishnan
d811115f21
update schema.sql
2016-05-01 13:17:27 -07:00
Girish Ramakrishnan
fec388b648
move backup eventlog to model
2016-05-01 13:17:23 -07:00
Girish Ramakrishnan
a969e323a6
what if cron was a username
2016-05-01 11:48:29 -07:00
Girish Ramakrishnan
09584ac29c
fix failing test
2016-04-30 23:26:45 -07:00
Girish Ramakrishnan
7967610f3f
add user login to event log
2016-04-30 23:18:14 -07:00
Girish Ramakrishnan
727332fe66
save the userId as well
2016-04-30 23:04:54 -07:00
Girish Ramakrishnan
09595d1c43
make tests pass
2016-04-30 22:35:46 -07:00
Girish Ramakrishnan
c4ad6c803f
add certificate renew event
2016-04-30 22:27:33 -07:00
Girish Ramakrishnan
fd1a00d280
better text for action
2016-04-30 20:25:20 -07:00
Girish Ramakrishnan
5c2a650681
add activity view
2016-04-30 20:25:20 -07:00
Girish Ramakrishnan
43051cea3b
add app update event
2016-04-30 20:25:20 -07:00
Girish Ramakrishnan
3d50a251ee
store email in USER_ADD event
2016-04-30 20:25:20 -07:00
Girish Ramakrishnan
219df8babd
pick up correct ip
2016-04-30 19:08:24 -07:00
Girish Ramakrishnan
d3d9706a70
make response plural
2016-04-30 18:57:43 -07:00
Girish Ramakrishnan
8a3ad6c964
store the activation username
2016-04-30 14:32:35 -07:00
Girish Ramakrishnan
90719cd4d9
do not store entire manifest
2016-04-30 14:28:59 -07:00
Girish Ramakrishnan
30445ddab9
more changes
2016-04-30 14:14:02 -07:00
Girish Ramakrishnan
157fbc89b8
add eventlog route
2016-04-30 14:08:44 -07:00
Girish Ramakrishnan
71219c6af7
add eventlog hooks
2016-04-30 14:05:19 -07:00
Girish Ramakrishnan
934abafbd4
make actions seem like commands
2016-04-30 13:34:06 -07:00
Girish Ramakrishnan
bc6e896507
add eventlog test
2016-04-30 13:02:57 -07:00
Girish Ramakrishnan
ca8731c282
add source to events table
2016-04-30 12:56:23 -07:00
Girish Ramakrishnan
c511019d79
remove jslint hint
2016-04-30 11:53:46 -07:00
Girish Ramakrishnan
992c4ee847
add some event enums
2016-04-30 11:49:51 -07:00
Girish Ramakrishnan
8c427553ba
add eventlogdb tests
2016-04-30 10:16:27 -07:00
Girish Ramakrishnan
c1df22f079
use JSON type (nice for querying)
2016-04-30 10:15:33 -07:00
Girish Ramakrishnan
7673ecde2f
Add eventlog model file
2016-04-29 23:58:29 -07:00
Girish Ramakrishnan
a9d0cf66fd
Add eventlogdb
2016-04-29 23:58:24 -07:00
Girish Ramakrishnan
db89784af8
add eventlog table
2016-04-29 23:58:20 -07:00
Girish Ramakrishnan
4143f903ad
0.13.0 changes
2016-04-29 20:50:55 -07:00
Girish Ramakrishnan
12820db4a5
fix typo in mysql config
2016-04-29 20:20:52 -07:00
Girish Ramakrishnan
8837cc5a3c
update nginx version
2016-04-29 19:38:06 -07:00
Girish Ramakrishnan
f2545e3def
bump systemd to 229
2016-04-29 19:18:31 -07:00
Girish Ramakrishnan
7a72bf3f78
select mysql 5.7
2016-04-29 19:12:20 -07:00
Girish Ramakrishnan
87351f04ef
use 16.04
...
among other things this will bump the mysql version bringing us
json type
2016-04-29 19:11:00 -07:00
Girish Ramakrishnan
4a04e0b52f
use recommendation from raymii.org
2016-04-28 09:59:03 -07:00
Girish Ramakrishnan
5945bce00e
add misssing arg
2016-04-26 16:21:26 -07:00
Girish Ramakrishnan
d2a3925e04
add altDomain to install route
2016-04-26 14:45:58 -07:00
Girish Ramakrishnan
9c9f82e2c5
fix usage of waitForDns
2016-04-26 11:09:14 -07:00
Girish Ramakrishnan
8fd3ff0ccc
0.12.6 changes
2016-04-26 09:53:33 -07:00
Girish Ramakrishnan
dec2fdb6bb
merge altDomain into location field
2016-04-25 21:22:09 -07:00
Girish Ramakrishnan
c581d2a52c
stash altDomain in oldConfig
2016-04-25 21:22:08 -07:00
Girish Ramakrishnan
e6e748e30d
fix cname answer
2016-04-25 16:16:14 -07:00
Girish Ramakrishnan
36fddacf5c
add more debugs
2016-04-25 16:06:50 -07:00
Girish Ramakrishnan
183c1608a6
it is fine for one or more ns to be dead
2016-04-25 15:58:42 -07:00
Girish Ramakrishnan
51c8f65e8d
wait for altDomain on install as well
...
restore calls install when there is no lastBackupId
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
0da6e9a5b9
fix casing
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
31c7a17684
Infinity does not work
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
a1e2cd438e
return altDomain in response
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
6b0e00e28b
use app.fqdn
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
19948851e0
return altDomain as the app.fqdn if present
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
bfe4f75881
display altDomain as the title of the app
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
7f13594f01
fix two typos
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
4fafac035e
remove options in waitForDns
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
ca41e6acfd
remove attempt module
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
9893dd6640
make waitfordns get the zone itself
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
8f7e4c2053
Make waitForDns wait for cname
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
d037b13401
wait for alt domain dns
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
83c955d25b
add a label for alt domain
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
0bb6d969a4
inject altDomain in the APP_ORIGIN and APP_DOMAIN env vars
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
6062a5bdd2
move exports to top because sysinfo backend source the error class
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
70ab492efa
remove jslint header
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
aab035f7b9
use the acme backend when using altDomain
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
0e825272ae
ensureCertificate now takes app object
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
46fee9e431
use config.adminFqdn instead
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
0789c96992
altDomain ui
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
a4adc581fa
make nginx.configure/unconfigure use altDomain
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
500fb452e7
use altDomain when present to configure certs and nginx
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
e11b762ea1
use vhost instead
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
f5d1726352
remove jslint header
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
3d5aa9fd23
pass altDomain in configure route
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
ef12740060
add altDomain to appdb fields
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
415902d68e
add altDomain to apps table
2016-04-25 10:52:12 -07:00
Girish Ramakrishnan
0ef0e010a3
use defines for role names
2016-04-25 10:30:56 -07:00
Girish Ramakrishnan
2d27da89d2
validate individual scopes
2016-04-25 10:26:47 -07:00
Girish Ramakrishnan
9d8def8349
update bytes ejs-cli dockerode morgan superagent ursa validator x509
2016-04-22 22:26:32 -07:00
Girish Ramakrishnan
2533111bfa
more 0.12.5 changes
2016-04-20 19:41:45 -07:00
Girish Ramakrishnan
20d6da8230
add debugs
2016-04-20 19:40:58 -07:00
Girish Ramakrishnan
f159cacfbb
Use same timestamp for archive and config
...
This fixes a very curious case:
1. App has backup.
2. App dies.
3. Box backs up. This make it reuse the backup. But it generates wrong config file timestamp.
4. Box cannot update anymore. This is because the backup of app fails - it tries to reuse
the backup and that fails with AccessDenied because the timestamp above is wrong!
2016-04-20 19:37:00 -07:00
Girish Ramakrishnan
5e9ea98b66
ignore apps in errored state
2016-04-20 19:05:49 -07:00
Girish Ramakrishnan
d87b7dcb75
fix typo
2016-04-20 12:56:35 -07:00
Girish Ramakrishnan
6eea2fef9a
retry fetching icon
...
e2e randomly fails with EAI_AGAIN
2016-04-20 00:40:22 -07:00
Girish Ramakrishnan
34fd5f14a5
0.12.5 changes
2016-04-19 21:52:24 -07:00
Girish Ramakrishnan
a4e73e747c
fix crash mail subject
2016-04-19 19:12:47 -07:00
Girish Ramakrishnan
eadff099eb
send logs when apptask fails
2016-04-19 18:40:46 -07:00
Girish Ramakrishnan
15653cb3f8
rename to logcollector
2016-04-19 18:13:05 -07:00
Girish Ramakrishnan
2f8dc35c5d
rename to sendFailureLogs
2016-04-19 18:06:11 -07:00
Girish Ramakrishnan
a97720d204
rename to failure_notification
2016-04-19 18:04:45 -07:00
Girish Ramakrishnan
73898505b0
remove jslint header
2016-04-19 16:59:12 -07:00
Girish Ramakrishnan
88b4b6a38b
use the crashnotifier module
2016-04-19 16:47:21 -07:00
Girish Ramakrishnan
3da82e3a63
rename to crashnotifierservice
2016-04-19 16:45:05 -07:00
Girish Ramakrishnan
dad1585704
send crash notification on apptask crash
2016-04-19 16:43:58 -07:00
Girish Ramakrishnan
e81dbdb36c
add crashnotifier module
2016-04-19 16:42:05 -07:00
Girish Ramakrishnan
ee2478e500
collect last 300 lines
2016-04-19 16:39:28 -07:00
Girish Ramakrishnan
0f7a6964a4
0.12.4 changes
2016-04-19 16:24:37 -07:00
Girish Ramakrishnan
5fa974ffe6
wait for 30 seconds in taskmanager instead
...
problem: because the apps are not inserted into appdb, the cloudron starts out
with an empty view. apps appear suddenly after 30 seconds.
besides, it makes more sense because 30 secs is not really tied to first run
2016-04-19 13:56:41 -07:00
Girish Ramakrishnan
e1b7198a29
reverse setTimeout args
2016-04-19 12:28:36 -07:00
Girish Ramakrishnan
37d6354627
wait for 30 seconds for the addons to start up
...
The platform sometimes takes time to start up (especially in 1GB droplet).
This means that apps like wordpress begin auto installing and they fail
since mysql has not started yet.
2016-04-19 12:15:25 -07:00
Girish Ramakrishnan
6ab3e04fc1
0.12.3 changes
2016-04-19 12:11:59 -07:00
Girish Ramakrishnan
b1987868be
Set sn attribute only if non-empty
...
sn and givenName have as their superior the name attribute, which is of DirectoryString syntax,
that is, the syntax is 1.3.6.1.4.1.1466.115.121.1.15. Attributes which are of syntax
DirectoryString are not allowed to be null, that is, a DirectoryString is required to have
at least one character.
http://stackoverflow.com/questions/15027094/how-to-filter-null-or-empty-attributes-from-an-active-directory-query
This fixes a crash in paperwork which relies on this.
2016-04-19 12:03:03 -07:00
Girish Ramakrishnan
72eb3007c4
tmp -> obj
2016-04-19 12:00:34 -07:00
Girish Ramakrishnan
6c1da45ad1
skip the not automated part
2016-04-19 10:49:46 -07:00
Girish Ramakrishnan
b9857cdb65
use async.retry
2016-04-18 22:06:49 -07:00
Girish Ramakrishnan
d5c251115c
typo
2016-04-18 18:57:29 -07:00
Girish Ramakrishnan
64c66e248b
add mongodb test
2016-04-18 18:12:56 -07:00
Girish Ramakrishnan
bb53c4f331
fix setup of mongodb
2016-04-18 18:05:23 -07:00
Girish Ramakrishnan
3215d4a3c9
move the exports to the top
2016-04-18 16:30:58 -07:00
Girish Ramakrishnan
68c4d77494
0.12.2 changes
2016-04-18 15:24:33 -07:00
Girish Ramakrishnan
44bf299e10
Merge remote-tracking branch 'origin/users'
2016-04-18 15:19:38 -07:00
Girish Ramakrishnan
6b1e14b464
add option to buffer stdout
2016-04-18 15:02:31 -07:00
Girish Ramakrishnan
8dcde84c3c
remove memorystream
2016-04-18 14:56:47 -07:00
Girish Ramakrishnan
a0deedb958
fixup backup and restore to use docker.execContainer
2016-04-18 14:56:01 -07:00
Girish Ramakrishnan
a2096bec18
use options.stdout to pass back result
2016-04-18 12:22:42 -07:00
Girish Ramakrishnan
4f82bcec43
make execContainer take options arg
2016-04-18 11:42:34 -07:00
Girish Ramakrishnan
491356ce8d
fix teardownMongoDb
2016-04-18 11:29:11 -07:00
Girish Ramakrishnan
6c99105a7e
Make teardown commands use docker.execContainer
2016-04-18 11:25:16 -07:00
Girish Ramakrishnan
71f847776b
fix up all the seutp code to use docker.execContainer
2016-04-18 11:15:21 -07:00
Girish Ramakrishnan
87c5371603
use docker exec instead of dockerode exec in mysql
...
this way we can check the exit code of the exec process.
preivously, we were only wait for the stream to end.
2016-04-18 11:06:09 -07:00
Girish Ramakrishnan
01d676628d
rename docker variable
2016-04-18 10:37:33 -07:00
Girish Ramakrishnan
60badce935
add docker.execContainer
2016-04-18 10:32:22 -07:00
Johannes Zellner
182ae6bf1f
Add some description to the upgrade dialog
2016-04-18 17:21:26 +02:00
Johannes Zellner
c62ef9e156
Implement upgrade request dialog
...
This is currently merely a placeholder for some real upgrade ui
2016-04-18 17:21:26 +02:00
Johannes Zellner
96383a1fae
Support upgrade_request feedback type
2016-04-18 17:11:36 +02:00
Johannes Zellner
5e9542ee76
Offer upgrade on install if resources are low
2016-04-18 16:16:44 +02:00
Johannes Zellner
cc28d49df4
That api already returns the user array
2016-04-18 15:13:22 +02:00
Johannes Zellner
18f3733d6e
Simplify the password change logic
...
We now can use verifyPassword and this makes
user.changePassword() route obsolete
2016-04-17 19:17:03 +02:00
Johannes Zellner
87dcf42c7e
Remove redundant client api listUsers()
2016-04-17 18:42:56 +02:00
Johannes Zellner
32d8627045
Password change api is now in /profile
2016-04-17 18:41:13 +02:00
Johannes Zellner
6a607f9565
Adjust user route tests
2016-04-17 18:39:00 +02:00
Johannes Zellner
c623770b44
Group /users routes better
2016-04-17 18:38:49 +02:00
Johannes Zellner
69f3620b22
remove unused user route functions
2016-04-17 18:27:11 +02:00
Johannes Zellner
21110bb2e0
Enable profile password change tests
2016-04-17 17:51:37 +02:00
Johannes Zellner
fabe55622e
Fix the first bunch of profile tests
2016-04-17 16:49:09 +02:00
Johannes Zellner
73e079cc6c
Add initial profile route tests
2016-04-17 16:42:45 +02:00
Johannes Zellner
a7d22a1972
Add specific user profile routes
2016-04-17 16:22:39 +02:00
Girish Ramakrishnan
5c1970b37f
Fix crash where portBindings is set to undefined
2016-04-15 21:27:42 -07:00
Girish Ramakrishnan
db065bd0fc
0.12.1 changes
2016-04-15 18:28:02 -07:00
Girish Ramakrishnan
db6d8deec4
fix another typo
2016-04-15 18:25:46 -07:00
Girish Ramakrishnan
414b21f29a
add sysadmin route test
2016-04-15 12:33:54 -07:00
Girish Ramakrishnan
c4c7668b5a
Use new env vars
2016-04-15 11:57:51 -07:00
Girish Ramakrishnan
b9fa87cca2
cloudron.backup -> backups.backup
2016-04-15 11:57:51 -07:00
Girish Ramakrishnan
218c9099fd
more CHANGES
2016-04-15 11:09:25 -07:00
Girish Ramakrishnan
916d97f7bd
reserve the no-reply mailbox
2016-04-15 11:09:25 -07:00
Johannes Zellner
109f777c00
Fix focus in setup wizard
2016-04-15 14:49:10 +02:00
Johannes Zellner
4bf3a78227
Add display name input in setup wizard
2016-04-15 12:18:41 +02:00
Girish Ramakrishnan
c03e69232e
Remove admin name (already set in cloudron.conf now)
2016-04-14 20:39:05 -07:00
Girish Ramakrishnan
91a016ee91
Change the admin email to no-reply
2016-04-14 19:56:54 -07:00
Girish Ramakrishnan
8256f97e9d
use latest mail image
2016-04-14 19:37:34 -07:00
Girish Ramakrishnan
d095899aef
add note that admin@fqdn is reserved as well
2016-04-14 13:34:41 -07:00
Johannes Zellner
6293c0aede
Add test for reserved username 'admin'
2016-04-14 16:30:31 +02:00
Johannes Zellner
101ce62ef3
Move username and email lowercasing to where it belongs
...
Fixes #592
2016-04-14 16:25:48 +02:00
Girish Ramakrishnan
9f443e2d07
should ideally use shutdown commands at some point (for mongodb)
2016-04-13 20:53:07 -07:00
Girish Ramakrishnan
0a30585a05
bump mongodb (handles mongod crash recovery)
2016-04-13 20:35:20 -07:00
Girish Ramakrishnan
ed78bd05c8
reserve the "admin" username
2016-04-13 16:50:20 -07:00
Girish Ramakrishnan
c24d7e7b3c
do not crash on duplicate email
2016-04-13 14:47:35 -07:00
Girish Ramakrishnan
389d2be82d
CLI is not a mode
2016-04-13 11:11:04 -07:00
Girish Ramakrishnan
38b85e6006
set givenName and sn in ldap response
2016-04-13 10:52:25 -07:00
Johannes Zellner
de2cde7333
Test oauth with mixed case username and email
2016-04-13 12:48:02 +02:00
Johannes Zellner
08410569c0
Actually fix the correct thing in the janitor tests
2016-04-13 12:43:18 +02:00
Johannes Zellner
be3b08a7b4
Test case-insensitive developer login
2016-04-13 12:39:50 +02:00
Johannes Zellner
2724cfd0ad
Test simpleauth with uppercase username input
2016-04-13 12:30:55 +02:00
Johannes Zellner
d7c8cf5e0e
Ensure ldap filter values are treated lowercase only
2016-04-13 12:28:44 +02:00
Johannes Zellner
11f89da3a0
Ensure username and email are treated lower case in the database layer
2016-04-13 12:15:49 +02:00
Johannes Zellner
a803af2300
Revert "add get route for user"
...
This route is already there, the reason is, that the users api works off
the :userId but the profile api works off the req.user coming from the used
access token.
This reverts commit dbef4d71be5a68239133ab9b6e0fc1fd88ee27cd.
2016-04-13 11:36:49 +02:00
Johannes Zellner
6991402a8c
Fix typo
2016-04-13 11:33:01 +02:00
Johannes Zellner
259798a8f2
Ensure auth code expiration is calculated at the right time
2016-04-13 11:32:30 +02:00
Johannes Zellner
d83395ecfb
Also test grant type token access tokens
2016-04-13 11:28:10 +02:00
Johannes Zellner
6d3dd452be
Test that oauth tokens are actually usable after issuing
2016-04-13 11:03:35 +02:00
Johannes Zellner
40bee79e3d
Fix oversight to store userId as user.username for auth codes
2016-04-13 10:45:11 +02:00
Girish Ramakrishnan
95de25560b
add profile scope to developer tokens
2016-04-12 19:08:56 -07:00
Girish Ramakrishnan
79eee94a5e
Fix setup link path
2016-04-12 18:40:00 -07:00
Girish Ramakrishnan
82651a33c7
typo
2016-04-12 18:16:52 -07:00
Girish Ramakrishnan
212a0ffcd9
add get route for user
2016-04-12 18:13:37 -07:00
Girish Ramakrishnan
115ed12c36
check that app patch releases does not send email
2016-04-12 13:49:49 -07:00
Girish Ramakrishnan
53268b67dc
test: it does not send mail for box patch releases
2016-04-12 13:45:11 -07:00
Girish Ramakrishnan
40dd12ba68
verify emails are sent in updatechecker test
2016-04-12 13:24:23 -07:00
Girish Ramakrishnan
7a111e29ad
test updatechecker emails
2016-04-12 13:15:40 -07:00
Girish Ramakrishnan
065c65317d
create owner in app update checker test
2016-04-12 13:13:16 -07:00
Girish Ramakrishnan
91a5d711f4
test: create owner
2016-04-12 13:12:17 -07:00
Girish Ramakrishnan
9071ea6c5e
test: fix prerelease version
2016-04-12 13:01:42 -07:00
Girish Ramakrishnan
34521735da
skip email notification for patch releases
2016-04-12 12:30:13 -07:00
Girish Ramakrishnan
b7f6dfb197
remove verbose from tar
2016-04-10 22:49:39 -07:00
Girish Ramakrishnan
fa330b4652
remove redundant debug
2016-04-10 22:44:43 -07:00
Girish Ramakrishnan
3bdbcff811
add debug
2016-04-10 22:34:55 -07:00
Girish Ramakrishnan
ea3bd6d71d
remove trailing comma
2016-04-10 22:29:09 -07:00
Girish Ramakrishnan
d5cc96b1ff
clean up backups code
2016-04-10 22:24:01 -07:00
Girish Ramakrishnan
4ed368cdd8
remove getBackupUrl
2016-04-10 22:12:06 -07:00
Girish Ramakrishnan
5229222014
getBackupCredentials is never used
2016-04-10 22:09:29 -07:00
Girish Ramakrishnan
9b0aa331e1
remove unused function
2016-04-10 22:08:11 -07:00
Girish Ramakrishnan
70cc073b1c
only add to backupdb when the backup succeeded
2016-04-10 21:55:08 -07:00
Girish Ramakrishnan
29502fd8af
remove unused exports
2016-04-10 21:52:01 -07:00
Girish Ramakrishnan
8d75fcfe67
typo
2016-04-10 21:46:01 -07:00
Girish Ramakrishnan
b2668579d6
pass appid to backup script
2016-04-10 21:41:53 -07:00
Girish Ramakrishnan
ba663faa64
fix debug
2016-04-10 21:39:45 -07:00
Girish Ramakrishnan
8db76f6b70
backup swap is not required anymore
2016-04-10 20:55:59 -07:00
Girish Ramakrishnan
322e9faee7
rework backup code
...
move all the backup code into backups.js
2016-04-10 20:41:08 -07:00
Girish Ramakrishnan
af9d489395
backup apps use aws-cli
2016-04-10 18:47:25 -07:00
Girish Ramakrishnan
4565291c1c
use aws-cli to upload box backups
2016-04-10 18:22:05 -07:00
Girish Ramakrishnan
be127ec313
fix failing test
2016-04-10 17:15:23 -07:00
Girish Ramakrishnan
8b3a44b33c
Add getBackupCredentials to backups API
2016-04-10 11:01:59 -07:00
Girish Ramakrishnan
08b5d7003d
expose getBackupCredentials from storage api
2016-04-10 10:55:59 -07:00
Girish Ramakrishnan
60cc4c988f
bump mysql addon
2016-04-09 02:34:54 -07:00
Girish Ramakrishnan
68219748ec
oops, bump postgresql
2016-04-09 01:07:46 -07:00
Girish Ramakrishnan
cfb56d7eee
install aws-cli tool (for backups)
2016-04-08 23:58:07 -07:00
Girish Ramakrishnan
4690616230
Add 0.12.0 changes proactively
2016-04-08 23:57:05 -07:00
Girish Ramakrishnan
96d625b866
bump the postgresql addon (required for gitlab)
2016-04-08 23:46:39 -07:00
Johannes Zellner
2e281f8554
Only directly callback if the config is not empty
...
apiServerOrigin is always set if the config was set
2016-04-08 17:29:14 +02:00
Johannes Zellner
5da5d86bc8
Pass billing through from the appstore to the cloudron config
2016-04-08 17:27:22 +02:00
Johannes Zellner
103c0bd688
Add initial upgrade button version
...
This is currently always hidden
2016-04-08 13:57:24 +02:00
Girish Ramakrishnan
275d8c2121
fix user create response
2016-04-06 10:20:32 -07:00
Girish Ramakrishnan
4c964bcaf8
set userid correctly in tokendb
2016-04-06 10:11:48 -07:00
Girish Ramakrishnan
e6c2c77f03
set username for predictability
2016-04-06 09:18:00 -07:00
Girish Ramakrishnan
819095b465
order for predictable tests
2016-04-06 09:08:59 -07:00
Girish Ramakrishnan
1453fd3c54
order by username to make tests deterministic
2016-04-06 08:46:42 -07:00
Johannes Zellner
867278a0b6
Use verifyWithUsername() instead of verify() in simpleauth
2016-04-06 08:57:55 +02:00
Girish Ramakrishnan
382fca3cf2
minor rewording in password reset
2016-04-05 23:08:57 -07:00
Girish Ramakrishnan
f210501e12
create -> set
2016-04-05 23:06:17 -07:00
Girish Ramakrishnan
499921e3af
more changes
2016-04-05 18:45:34 -07:00
Girish Ramakrishnan
db19df9395
Bump infra version to force app reconfigure
...
Required for collectd profiles to be regenerated
2016-04-05 17:36:30 -07:00
Girish Ramakrishnan
6e2067bfe7
fix memory.stat path
2016-04-05 17:24:54 -07:00
Girish Ramakrishnan
8eb1b374ef
cgroups are not in system.slice anymore
2016-04-05 17:12:50 -07:00
Girish Ramakrishnan
1734555974
handle case where box is not activated
2016-04-05 12:23:27 -07:00
Girish Ramakrishnan
7136de4d08
add debugs
2016-04-05 12:07:37 -07:00
Girish Ramakrishnan
21e8bc1ce5
javascript much
2016-04-05 12:06:15 -07:00
Girish Ramakrishnan
13020be6e6
default app bundle to null, if absent
2016-04-05 12:00:33 -07:00
Girish Ramakrishnan
3b922ff8b2
Some 0.11.2 changes
2016-04-05 11:07:32 -07:00
Girish Ramakrishnan
69402d0079
check activation state for existing cloudrons without a first run file
2016-04-05 10:56:27 -07:00
Johannes Zellner
99850f1161
Support ldap DNs with userId, username and email
2016-04-05 16:32:12 +02:00
Johannes Zellner
b205212bf2
Explicitly verifyWithUsername() and offer a verify() userId based
2016-04-05 16:27:04 +02:00
Johannes Zellner
baf586b028
Add missing 'else'
2016-04-05 16:25:05 +02:00
Johannes Zellner
94faa3575c
Ensure we lowercase all emails
...
This ensures the uniqueness of that field
2016-04-05 11:15:50 +02:00
Johannes Zellner
544c1474d1
Allow multiple empty usernames in the db
2016-04-05 10:54:09 +02:00
Johannes Zellner
bb25279878
Fixup some bugs in the user handling ui
2016-04-05 10:11:04 +02:00
Johannes Zellner
4939f526d5
Fixup the user.js tests
2016-04-05 09:28:41 +02:00
Johannes Zellner
68af03f401
Fixup ldap tests
2016-04-05 09:28:41 +02:00
Johannes Zellner
f744fee708
password change route also now takes the userId
2016-04-05 09:28:41 +02:00
Johannes Zellner
c7ceb29845
Remove unused setAdmin() from webclient
2016-04-05 09:28:41 +02:00
Johannes Zellner
56d9d5913d
Fixup the user route tests
2016-04-05 09:28:41 +02:00
Johannes Zellner
f7887228d3
Fix oauth session view tests and simpleauth tests
2016-04-05 09:28:41 +02:00
Johannes Zellner
73ed0384ea
Fixup group rest api tests
2016-04-05 09:28:41 +02:00
Johannes Zellner
3051d4c22a
This is actually a callback, doh
2016-04-05 09:28:41 +02:00
Johannes Zellner
b32a0bcfad
Do not allow empty username on createOwner()
2016-04-05 09:28:41 +02:00
Johannes Zellner
61c79aab23
Add asserts for user.createOwner()
2016-04-05 09:28:41 +02:00
Johannes Zellner
9740ffd504
Remove displayName setting in user edit view
2016-04-05 09:28:41 +02:00
Johannes Zellner
435ec2365b
fix sendError() args
2016-04-05 09:28:41 +02:00
Johannes Zellner
ff3562b0e8
Show error page for invalid reset tokens
2016-04-05 09:28:41 +02:00
Johannes Zellner
3be5511e33
Ensure we pass the resetToken on error
2016-04-05 09:28:41 +02:00
Johannes Zellner
c8604e95ab
Prevent password reset for not activated user
2016-04-05 09:28:41 +02:00
Johannes Zellner
bbaf4c77fd
This is ejs not angular
2016-04-05 09:28:41 +02:00
Johannes Zellner
1c9fc3f3dc
Make account setup view prettier
2016-04-05 09:28:41 +02:00
Johannes Zellner
577959f281
Ensure browser autofill is disabled
2016-04-05 09:28:41 +02:00
Johannes Zellner
8af01f2955
Give basic form feedback for account creation
2016-04-05 09:28:41 +02:00
Johannes Zellner
c73213b2f2
Handle username conflict in account setup
2016-04-05 09:28:41 +02:00
Johannes Zellner
36f3f4b8f4
Remove superflous '
2016-04-05 09:28:41 +02:00
Johannes Zellner
31bd5cdee3
Fix typo, userdb.del() wants an id
2016-04-05 09:28:41 +02:00
Johannes Zellner
fd0326efb1
Allow to use username or password for user deletion form
2016-04-05 09:28:41 +02:00
Johannes Zellner
65c6806109
Send full user information on deletion, not just the uuid
2016-04-05 09:28:41 +02:00
Johannes Zellner
1b7406784e
Fix the user invitation to use userId
2016-04-05 09:28:41 +02:00
Johannes Zellner
8cbf83058f
Adjust the welcome mail
2016-04-05 09:27:32 +02:00
Johannes Zellner
e058e22cae
Fixup the client tests with userid change
2016-04-05 09:27:32 +02:00
Johannes Zellner
c84674529b
Calm down the app polling a bit
2016-04-05 09:27:32 +02:00
Johannes Zellner
a0098a8883
Adjust email templates, as we do not have a username set now
2016-04-05 09:27:32 +02:00
Johannes Zellner
f6547c9b71
Ensure we render a useful string for access restriction users
2016-04-05 09:27:32 +02:00
Johannes Zellner
6dc17183ee
Do not use google font cdn
2016-04-05 09:27:32 +02:00
Johannes Zellner
bba3dd5ec0
Fetch users and groups in apps view
2016-04-05 09:27:32 +02:00
Johannes Zellner
9eec6c2e9d
Add an extra postprocess in client.js
2016-04-05 09:27:32 +02:00
Johannes Zellner
c235b82660
Fallback to email if username is not set for single user apps
2016-04-05 09:27:32 +02:00
Johannes Zellner
67ac0fcd5a
Add missing ajax-loader.gif for slick carousel
2016-04-05 09:27:32 +02:00
Johannes Zellner
87ca147e65
Show user and email in user selection for app permission
2016-04-05 09:27:32 +02:00
Johannes Zellner
0cf2bfb792
Use user.id for session serialization
2016-04-05 09:27:32 +02:00
Johannes Zellner
a112e614e6
Actually query by username instead of just delegate to get() in getByUsername()
2016-04-05 09:27:32 +02:00
Johannes Zellner
0b1dcd2940
Use userdb.getByUsername() instead of get()
2016-04-05 09:27:32 +02:00
Johannes Zellner
951934f275
Remove unused require
2016-04-05 09:27:32 +02:00
Johannes Zellner
78518ff5f6
Hide username and displayName when adding an account
2016-04-05 09:27:32 +02:00
Johannes Zellner
b8d0c01187
fix typo
2016-04-05 09:27:32 +02:00
Johannes Zellner
572e5c4938
Adjust the user add form to not require a username
2016-04-05 09:27:32 +02:00
Johannes Zellner
e4fabd20c1
Do not require a username to be present when creating a user
2016-04-05 09:27:32 +02:00
Johannes Zellner
726d154890
Make user id a uuid.v4() and allow empty usernames
2016-04-05 09:27:32 +02:00
Johannes Zellner
7a5ac1a2f5
Add POST account/setup to distinguish between setup and password reset
2016-04-05 09:27:32 +02:00
Johannes Zellner
c90a8041e2
Move password/setup.html -> account/setup.html
2016-04-05 09:27:32 +02:00
Johannes Zellner
18b91b5fa0
Rename password setup to account setup
2016-04-05 09:27:32 +02:00
Johannes Zellner
f058c266d2
Add username and display name form fields on account setup
2016-04-05 09:27:32 +02:00
Johannes Zellner
e0114c87ac
Also update the user record when username and email is sent
2016-04-05 09:27:32 +02:00
Johannes Zellner
c98275000b
Optionally support username and email in password setter route
2016-04-05 09:27:32 +02:00
Girish Ramakrishnan
553509c462
implement installation of app bundle
2016-04-04 23:03:13 -07:00
Girish Ramakrishnan
306bef96b4
remove dead DNS_IN_SYNC
2016-04-04 22:14:05 -07:00
Girish Ramakrishnan
497eaea65e
bump expiry to 60 mins
2016-04-04 16:02:13 -07:00
Girish Ramakrishnan
8aacc503a6
Revert "getRestoreUrl now uses caas restore api"
...
This reverts commit f9fc9325a8995dc0a9cb1dfcf22fb27eca697a89.
For now, we can simply assume that caas is s3 based.
2016-04-04 15:57:32 -07:00
Girish Ramakrishnan
ec160fe45f
make getBackupUrl return id as well
2016-04-04 12:45:09 -07:00
Girish Ramakrishnan
82c74e6787
add backupdb tests
2016-04-04 12:41:17 -07:00
Girish Ramakrishnan
bbff195863
rename filename to id
2016-04-04 12:20:56 -07:00
Girish Ramakrishnan
e528dbcfc0
creationTime is redundant
2016-04-04 12:13:54 -07:00
Girish Ramakrishnan
0467e80c71
remove unused require
2016-04-04 12:13:25 -07:00
Girish Ramakrishnan
c9ef0056e0
rename getSignedUploadUrl to getBackupUrl
2016-04-04 12:01:47 -07:00
Girish Ramakrishnan
efb228cf5e
getRestoreUrl now uses caas restore api
2016-04-04 11:57:29 -07:00
Girish Ramakrishnan
af700827c5
info is not passed anymore
2016-04-04 11:44:24 -07:00
Girish Ramakrishnan
3135783fe3
rename getSignedDownloadUrl to getRestoreUrl
2016-04-04 11:43:56 -07:00
Girish Ramakrishnan
496f530b9f
sessionToken is required in credentials (when signing)
2016-04-04 11:23:38 -07:00
Girish Ramakrishnan
f44c2707f0
install swaks in base image
2016-04-04 09:50:19 -07:00
Johannes Zellner
9fbbddc3eb
Show setupLink properly
2016-04-04 18:41:51 +02:00
Johannes Zellner
5afb16aa98
Show dialog with setupLink on invite
2016-04-04 18:41:51 +02:00
Johannes Zellner
8f2b0bae5e
Receive the resetToken in the webadmin
2016-04-04 18:41:51 +02:00
Johannes Zellner
fcfd1dceac
Deliver the resetToken when an invite was sent
2016-04-04 18:41:51 +02:00
Girish Ramakrishnan
d839f0b762
remove redundant session token
2016-04-03 23:23:23 -07:00
Girish Ramakrishnan
16a65fb185
drop configJson
...
The initial idea was to store exactly where the backups are stored.
But this only causes problems for migrations where the bucket might
change and clones where the prefix (box.id) changes.
Thus, it's best to leave the url creation to the caas side. (That
has to be done in another change)
2016-04-03 22:55:08 -07:00
Girish Ramakrishnan
aaeb355183
add version 0.11.1 changes
2016-04-03 11:34:47 -07:00
Girish Ramakrishnan
c236072c4c
add comment
2016-04-02 18:04:58 -07:00
Girish Ramakrishnan
5d92cff638
backup config.json first because tarball takes lot of time and leads to token expiration
2016-04-02 18:01:49 -07:00
Girish Ramakrishnan
1b539b8d22
upload as binary
2016-04-02 17:58:10 -07:00
Girish Ramakrishnan
a21a913f34
delete snapshot on failure path
2016-04-02 17:57:15 -07:00
Girish Ramakrishnan
357f6f0552
use same region as what we uploaded to
2016-04-02 13:32:14 -07:00
Girish Ramakrishnan
b16aa4c007
check for region as well
2016-04-02 13:31:12 -07:00
Girish Ramakrishnan
1fed5ee353
0.11.0 changes
2016-04-01 23:38:35 -07:00
Girish Ramakrishnan
29077abf7c
pass back the changeId
2016-04-01 23:21:10 -07:00
Girish Ramakrishnan
f5c7116573
Add 0.10.4 changelog
2016-04-01 13:59:07 -07:00
Girish Ramakrishnan
42fc2d446c
do not set the session_token header
...
this seems to be part of url now in signature v4
2016-04-01 13:26:25 -07:00
Girish Ramakrishnan
9ef04dc67f
more 0.10.3 changes
2016-03-31 10:48:08 -07:00
Girish Ramakrishnan
3ea2070cdb
pass filename (it is not part of the config!)
2016-03-31 09:53:56 -07:00
Girish Ramakrishnan
fc11484b51
pick region from apiConfig if present
2016-03-31 09:48:38 -07:00
Girish Ramakrishnan
b4ddfa94cc
rename to apiConfig
2016-03-31 09:48:13 -07:00
Girish Ramakrishnan
9e7ae1a4f7
we really need a better linter
2016-03-31 09:38:40 -07:00
Girish Ramakrishnan
d27159275b
pick region as well
2016-03-31 09:34:57 -07:00
Girish Ramakrishnan
6c2ae756f1
fix usage of backupInfo
2016-03-31 09:23:41 -07:00
Girish Ramakrishnan
92e4433dff
make backupdb.get return app backups
2016-03-31 09:12:12 -07:00
Girish Ramakrishnan
c4cbd9f4e4
mailer: check for the correct SPF record
2016-03-31 08:44:31 -07:00
Johannes Zellner
f413afb835
Support email login in simple auth
2016-03-31 16:59:44 +02:00
Johannes Zellner
915c37a72f
Add tests for displayName change
2016-03-31 16:24:28 +02:00
Johannes Zellner
1ddb3a58da
Also send displayName in simpleAuth
2016-03-31 16:24:28 +02:00
Girish Ramakrishnan
a4aa5bbc59
fix linting
2016-03-31 00:51:38 -07:00
Girish Ramakrishnan
39cc5d07d1
use the backupdb config to determine bucket and prefix
2016-03-31 00:50:56 -07:00
Girish Ramakrishnan
f3a05931df
fix typo
2016-03-30 23:43:04 -07:00
Girish Ramakrishnan
df39384056
do not save backup secrets in database
2016-03-30 23:39:48 -07:00
Girish Ramakrishnan
47c5cad239
fix typo
2016-03-30 17:06:50 -07:00
Girish Ramakrishnan
ec380aa41e
each change really needs to be in separate line
2016-03-30 15:34:09 -07:00
Girish Ramakrishnan
7d1a663a87
0.10.3 changes
2016-03-30 15:26:52 -07:00
Girish Ramakrishnan
ba69316c14
add note that filename is reused as id
2016-03-30 15:17:04 -07:00
Girish Ramakrishnan
c097651a88
store backup configuration as part of backups table
2016-03-30 15:04:39 -07:00
Girish Ramakrishnan
22b8154a39
0.11.0 changes
2016-03-30 11:39:50 -07:00
Girish Ramakrishnan
9e8179a235
up link is relative
2016-03-29 14:02:53 -07:00
Girish Ramakrishnan
3fbeb2a1c1
more 0.10.2 changes
2016-03-29 13:24:26 -07:00
Girish Ramakrishnan
2c4cf0a505
Download intermediate cert following the 'up' Link
2016-03-29 12:51:05 -07:00
Girish Ramakrishnan
adab544e99
Version 0.10.2 changes
2016-03-28 10:55:20 -07:00
Girish Ramakrishnan
ae8a371597
add adminFqdn in the spf record
...
For custom domains, we do not set the A record for the naked domain
(because the user might be using it for his own). This means that
a:domain.com will not work.
The solution is to simply use the admin domain.
2016-03-27 23:05:29 -07:00
Girish Ramakrishnan
ead076bd9f
add MAIL_SMTP_PASSWORD
2016-03-25 23:14:09 -07:00
Girish Ramakrishnan
f8c683f451
Disallow updating an app with mismatching manifest id
...
Story so far:
1. App installed from store. appStoreId is set to manifest.id.
2. User installed a custom built app with a custom manifest.id using cloudron install --app <id>. The appStoreId is still set.
3. When we make a new release, it overrides the users install.
The fix (for now) is:
1. Do not allow mismatching ids to start with.
2. When forced, it is allowed but appStoreId is cleared so as to not get any auto updates.
This leaves the user vulnerable to 'cloudron uninstall' simply autoselecting this new app.
For this, they have to simply disable CLI mode for now.
There is also a corner case where:
1. Dev installs from app store
2. Dev compiles from source and updates on top of app store install with --app <id>
3. Dev find out that his installation has auto-updated the next day.
2016-03-25 11:46:25 -07:00
Johannes Zellner
b56bc08e9a
Allow to use email and username for ldap bind
2016-03-24 21:03:04 +01:00
Girish Ramakrishnan
daadbfa23f
fix wording
2016-03-23 12:00:30 -07:00
Girish Ramakrishnan
a215443c56
do not renew apps without any cert
...
autoRenew was mistakenly reconfiguring app without a cert (this
is the common case for apps in non-custom domain)
2016-03-23 08:49:08 -07:00
girish@cloudron.io
4e22c6d5ac
minor nakedomain fixes
2016-03-21 15:07:10 -07:00
girish@cloudron.io
d43810fea9
add comment on why we add naked domain for custom domains
2016-03-21 13:50:26 -07:00
girish@cloudron.io
f5ab63e8ec
naked domain page styling
2016-03-21 13:49:11 -07:00
girish@cloudron.io
b1f172ed17
trim the output string
2016-03-21 08:25:10 -07:00
Girish Ramakrishnan
413f9231b3
fix formatting
2016-03-20 12:12:22 -07:00
Girish Ramakrishnan
11513f9428
send a message for cert renewal status
2016-03-19 20:40:03 -07:00
Girish Ramakrishnan
5042741435
renew cert every 12 hours
2016-03-19 20:30:01 -07:00
Girish Ramakrishnan
75ed9c4a63
Check for key file instead of csr file
...
1) csr file in older backups got corrupt
2) new key results in a new cert request in LE (for rate limits)
2016-03-19 18:49:55 -07:00
Girish Ramakrishnan
8c36f3aab4
add debug for fallback case
2016-03-19 18:37:05 -07:00
Girish Ramakrishnan
7aa5e8720a
0.10.1 changes
2016-03-19 14:17:28 -07:00
Girish Ramakrishnan
14ef71002f
write the DER cert properly into the csr file
2016-03-19 14:07:58 -07:00
Girish Ramakrishnan
ea87841e77
merge fallback cert job into renewal
...
this is becase we need to reconfigure for the case where we got a
renewed cert (but the app was switched to fallback cert at some point)
2016-03-19 13:54:52 -07:00
Girish Ramakrishnan
091e424c0e
Fix description
2016-03-19 13:37:58 -07:00
Girish Ramakrishnan
20629ea078
fix linter errors
2016-03-19 13:22:38 -07:00
Girish Ramakrishnan
b1b6a9ae65
reconfigure admin using configureAdmin
2016-03-19 12:54:11 -07:00
Girish Ramakrishnan
7ddbf7b652
refactor expiry check
2016-03-19 12:50:31 -07:00
Girish Ramakrishnan
3d088aa9c4
fix debug message
2016-03-19 12:31:48 -07:00
Girish Ramakrishnan
f329e0da92
fix typo
2016-03-19 12:14:23 -07:00
Girish Ramakrishnan
a18737882b
run more aggressively in test mode
2016-03-19 12:12:39 -07:00
Girish Ramakrishnan
a58a458950
do not abbrev
2016-03-19 12:11:28 -07:00
Girish Ramakrishnan
44c5f84c56
Fix usage of isExpiringSync
2016-03-19 12:06:13 -07:00
Girish Ramakrishnan
d6b92ee301
remove Job suffix
2016-03-19 10:25:19 -07:00
Girish Ramakrishnan
c769a12c45
set the box version for test for pass
2016-03-19 10:23:12 -07:00
Girish Ramakrishnan
017c32c3dd
fix certificate renewal
...
Do the whole acme flow for certificate renewal. the idea here is
simply reuse the key and the csr. In this case, it does not count
as a new certificate issuance.
https://github.com/diafygi/letsencrypt-nosudo/issues/55
2016-03-19 02:44:05 -07:00
Girish Ramakrishnan
5d54c9e668
check my domain for expiry and falling back
2016-03-18 23:43:56 -07:00
Girish Ramakrishnan
adaaca5ceb
switch expired certs of domains to use fallback cert
...
1) nginx won't reload when using expired certs
2) this is the only way the user can use the app now
2016-03-18 23:26:57 -07:00
Girish Ramakrishnan
4a73e1490e
Refactor code to take hours
2016-03-18 23:00:02 -07:00
Girish Ramakrishnan
f31a7a5061
use fallback certs if renewal fails
2016-03-17 12:20:02 -07:00
Girish Ramakrishnan
3499a4cc6c
move requiresOAuthProxy to nginx
...
we have 3 levels
* routes, cron, apptask
* everything else where everyone calls everyone :-)
* the db layer
2016-03-17 11:38:29 -07:00
girish@cloudron.io
42796b12dc
update safetydance to 0.1.1
2016-03-14 22:50:48 -07:00
girish@cloudron.io
20ac040dde
cert: check expiry correctly
2016-03-14 22:50:06 -07:00
girish@cloudron.io
7f2b3eb835
acme: disable renewal via url fetch for now
...
this does not seem to work.
From cf85854177 :
// RenewCertificate attempts to renew an existing certificate.
// Let's Encrypt may return the same certificate. You should load your
// current x509.Certificate and use the Equal method to compare to the "new"
// certificate. If it's identical, you'll need to run NewCertificate and/or
// start a new certificate flow.
2016-03-14 22:22:57 -07:00
girish@cloudron.io
2b562f76ea
le: handle renewal upto 30 days in advance
2016-03-14 22:18:43 -07:00
Girish Ramakrishnan
b942033512
acme: debug output the domain
2016-03-14 16:21:03 -07:00
Girish Ramakrishnan
fa4a8c2036
add debug for successful renewal
2016-03-14 15:55:51 -07:00
Johannes Zellner
27febbf1e9
The blue cloud is gone
2016-03-11 16:48:56 -08:00
girish@cloudron.io
8da2eb36cc
fix email wording
2016-03-09 18:37:02 -08:00
girish@cloudron.io
cbb34005c6
restoreKey -> filename
2016-03-09 14:23:42 -08:00
girish@cloudron.io
efc1627648
more changes
2016-03-09 09:34:57 -08:00
girish@cloudron.io
f513dcdf3b
Add 0.10.0 changelog
2016-03-09 09:29:17 -08:00
girish@cloudron.io
61a52d8888
dist-upgrade to update more aggressively
2016-03-09 09:29:07 -08:00
Johannes Zellner
4cfc187063
Add sender name to admin email
2016-03-09 07:41:50 +01:00
Johannes Zellner
065af03e5f
Stop docker proxy in ldap tests
2016-03-09 07:34:44 +01:00
Johannes Zellner
c4eeebdfbe
Enable admin change test
2016-03-09 06:18:39 +01:00
Johannes Zellner
b1004de358
Notify admins about newly added admin
2016-03-09 06:16:21 +01:00
Girish Ramakrishnan
fbca0fef38
fix missing assert
2016-03-08 18:51:40 -08:00
Girish Ramakrishnan
d658530e66
fix failing tests
2016-03-08 18:44:51 -08:00
Girish Ramakrishnan
21d4cc9cb2
getAllPaged -> getPaged
2016-03-08 18:10:39 -08:00
Girish Ramakrishnan
e2b7ec3ffd
store filename with tar.gz extension
2016-03-08 16:47:53 -08:00
Girish Ramakrishnan
8014e2eaf8
add route to download backup
2016-03-08 16:28:42 -08:00
girish@cloudron.io
a10ed73af2
get zoneName using tldjs
2016-03-08 09:52:13 -08:00
girish@cloudron.io
8b2903015d
list app backups from db
2016-03-08 08:57:28 -08:00
girish@cloudron.io
d157bf30f3
remove box backups from the database
2016-03-08 08:52:20 -08:00
girish@cloudron.io
7996b32022
add backups to the database
...
ideally, these should be done _after_ the backup is successful and not when
the backup url is generated.
we had a discussion on why need backupdb to start with. Some rationale includes:
1. we can use it as a FK constraint (like make sure you delete backups when you delete app)
2. have labels for backups
3. dependancy relation from box backup to apps
4. s3 reverse sort is little painful and requires us to get all items in bulk and sort in JS
(also requires us to change our backup filename format)
5. any metadata storage requires database
The cons include:
1. s3 and this db go out of sync
2. db entry is useless if s3 file is missing
2016-03-08 08:42:00 -08:00
girish@cloudron.io
4b77703902
export getByAppIdPaged
2016-03-07 17:52:13 -08:00
Girish Ramakrishnan
4dd82d10ad
backup: ensure same timestamp for app data and config
2016-03-07 12:13:54 -08:00
Girish Ramakrishnan
83d05c99d3
mount manually instead of fstab because of race
...
I cannot figure how to make the box-setup.service run before the mounting
of a specific mount point. adding a dep on mount.target locks up the system.
2016-03-07 10:48:09 -08:00
Girish Ramakrishnan
b0acdfb908
use truncate instead of fallocate
2016-03-07 10:44:35 -08:00
Girish Ramakrishnan
b062dab65c
mysql also uses the data partition
2016-03-07 10:38:59 -08:00
Girish Ramakrishnan
eadcdeee1c
not being mounted is the normal case
2016-03-07 10:37:26 -08:00
Girish Ramakrishnan
9de6f9c1c2
add backupdb
...
mostly same code as the appstore side
2016-03-07 09:30:44 -08:00
Girish Ramakrishnan
89f54245f7
Add backups table
2016-03-07 09:27:10 -08:00
Girish Ramakrishnan
5fbd1dae30
bump the mysql memory limit
...
we hit this memory limit often in phabricator backup. this is all
very crude but should suffice for now.
2016-03-05 18:35:28 -08:00
girish@cloudron.io
486ced0946
fix LDAP debug
2016-03-04 17:52:27 -08:00
girish@cloudron.io
d1c1fb8786
fix ldap debug ("ldap" already appears as part of debug)
2016-03-04 17:51:18 -08:00
Johannes Zellner
57ff8b6770
fix feedback test
2016-03-04 22:27:18 +01:00
Johannes Zellner
d12d8f5c0b
Properly extract referrers, which contain queries on their own and are not properly encoded
2016-03-03 15:06:14 +01:00
Johannes Zellner
17deac756b
Also log app manifest id for alive apps
2016-03-03 09:30:46 +01:00
Johannes Zellner
f7bb3bac98
Log app manifest id in healthmonitor
2016-03-03 09:30:46 +01:00
girish@cloudron.io
744c721000
use docker 1.10.2 (untested)
2016-03-01 10:13:44 -08:00
girish@cloudron.io
0500bae221
install aufs tools
...
https://github.com/docker/docker/issues/915
2016-03-01 10:13:04 -08:00
girish@cloudron.io
a7b5b49d96
fix language
2016-02-26 10:14:37 -08:00
Johannes Zellner
93ef1919c2
Hide superuser checkbox for the user himself
2016-02-26 18:08:56 +01:00
girish@cloudron.io
254d6ac92e
handle singular case as well
2016-02-26 08:43:59 -08:00
girish@cloudron.io
3a12265f42
Do not preallocate data volume
...
This is not tested but will get tested in the next upgrade
2016-02-26 08:27:13 -08:00
Johannes Zellner
71eeb47f0f
Hide groups in user listing if the screen is too tiny
2016-02-26 13:10:29 +01:00
Johannes Zellner
5ea5023d97
Better encapsulate the form related functions in install view
2016-02-26 12:50:05 +01:00
Johannes Zellner
1148e21cd4
Add more changes
2016-02-26 12:29:52 +01:00
Johannes Zellner
e9a2b2a7cf
Disable group access control and show info if there are no groups
2016-02-26 11:59:18 +01:00
Johannes Zellner
7a34f40611
Allow to specify accessRestrictions on app install
2016-02-26 11:47:20 +01:00
Johannes Zellner
c630de1003
Fetch groups in appstore.js
2016-02-26 11:24:01 +01:00
Johannes Zellner
74da8f5af8
Add 0.9.3 changes
2016-02-26 11:19:45 +01:00
girish@cloudron.io
b758be5ae2
0.9.2 changes
2016-02-26 11:17:36 +01:00
Johannes Zellner
c585be4eec
Adjust group length error message
2016-02-26 11:07:31 +01:00
Johannes Zellner
3ebc569438
Avoid using superuser in the ui, but describe what it is
2016-02-26 11:03:39 +01:00
Johannes Zellner
5a2cf3cbfe
Move superuser checkbox at the bottom of the form
2016-02-26 11:02:43 +01:00
Johannes Zellner
715c5f9f61
Do not set admin group multiple times
2016-02-26 10:56:33 +01:00
Johannes Zellner
6843fda601
Show group names and make sure we don't break layout right away
2016-02-26 10:53:41 +01:00
Johannes Zellner
a78f3b1db3
Give more space to some views
2016-02-26 10:52:47 +01:00
girish@cloudron.io
1419108a86
umount is for unmounting
2016-02-25 20:13:16 -08:00
girish@cloudron.io
7a8b457ce9
truncate to shrink the file if required
2016-02-25 19:26:46 -08:00
girish@cloudron.io
10967ff8ce
allow 1.2 times RAM
...
This is basically to allow 2 phabricators and another small app with
no warning on a 4gb droplet :-)
2016-02-25 18:34:28 -08:00
girish@cloudron.io
1fdfd3681c
Revert "Display group ids"
...
This reverts commit d80ce25363061f95cb14e223efd4ab9828739eea.
Didn't mean to commit this
2016-02-25 18:11:25 -08:00
girish@cloudron.io
187d4f9ca2
round memory to nearest GB
...
os.totalmem returns some close-to-GB number. Because of this two
apps with 2GB don't install on 4GB.
2016-02-25 17:19:39 -08:00
girish@cloudron.io
6b67e64bf1
Display group ids
2016-02-25 16:33:58 -08:00
girish@cloudron.io
7ae6061d72
Edit -> Save
2016-02-25 15:24:50 -08:00
Johannes Zellner
e96b9c3e3f
Give the user the perception he gets what he pays for
2016-02-26 00:18:47 +01:00
Johannes Zellner
c9ca05a703
Do not offer admin group for access restriction
...
The same can be achieved with a new group and it just
keeps the superuser/admin out of the way here. In any case
admins can always access all apps.
2016-02-26 00:13:09 +01:00
Johannes Zellner
23e5bed247
Fix the group numbering to ignore admin group
2016-02-26 00:02:38 +01:00
Johannes Zellner
bae0d728b3
Only show group count to not break layout and allow quickedit
2016-02-26 00:01:25 +01:00
Johannes Zellner
5cd1c7d714
add hand selector
2016-02-26 00:01:01 +01:00
Johannes Zellner
d430e902bf
Separate superuser checkbox from the other groups in user edit
2016-02-25 23:20:55 +01:00
Johannes Zellner
4fb89de34f
Remove 'this is you'
2016-02-25 22:29:06 +01:00
Johannes Zellner
7cd3bb31e1
Add new support type for failing erroring apps
2016-02-25 21:38:37 +01:00
Girish Ramakrishnan
2857158543
do not set memoryLimit
2016-02-25 11:05:19 -08:00
Johannes Zellner
82a347ea4b
Add tooltips for superusers
2016-02-25 16:07:31 +01:00
Johannes Zellner
b5c7f978a2
Do not show admin group in group listing
2016-02-25 15:54:30 +01:00
Johannes Zellner
625da29fce
Show admins with an icon instead of a group tag
2016-02-25 15:53:36 +01:00
Johannes Zellner
b82b183df6
Show alternative text for non admins, when no apps are available for this user
2016-02-25 15:38:46 +01:00
Johannes Zellner
ce36fadf2b
Fix bug for non admins to view the appstore
2016-02-25 15:34:44 +01:00
Johannes Zellner
2429599733
Change text from installed to your applications
2016-02-25 15:34:33 +01:00
Johannes Zellner
261a0a1728
Add account ui to change displayName
2016-02-25 15:09:52 +01:00
Johannes Zellner
d8def61f67
Encapsulate the business logic in the account controller
2016-02-25 14:58:26 +01:00
Johannes Zellner
2732af24c1
Some code cleanups and bugfixes for the accounts view
2016-02-25 14:46:53 +01:00
Johannes Zellner
3d48da0e8d
Remove unused function in client to change email
2016-02-25 14:34:35 +01:00
Johannes Zellner
d3b8bd1314
Remove password field for user email change
2016-02-25 14:34:16 +01:00
Johannes Zellner
f600ebcf19
Remove password entry from user edit form
2016-02-25 14:15:48 +01:00
Johannes Zellner
160467e199
Do not require password for user profile changes
2016-02-25 14:03:42 +01:00
Johannes Zellner
384c410e7c
Do not require a password for user profile changes
2016-02-25 13:54:44 +01:00
Johannes Zellner
84c4187fa9
Test normal users accessing the user api
2016-02-25 13:53:18 +01:00
Johannes Zellner
4f7fd9177c
Allow user details only for the same user or admins
2016-02-25 13:44:53 +01:00
Johannes Zellner
b5b0ab7475
Require admin rights for user listing
2016-02-25 13:43:15 +01:00
Johannes Zellner
a0d7406b3c
Do not allow normal users to get group listings or details
2016-02-25 13:34:01 +01:00
Johannes Zellner
7165be0513
Warn the user about installing too many apps, but give an override button
2016-02-25 12:41:15 +01:00
Johannes Zellner
9c995277f7
Fixup the apps unit tests
2016-02-25 12:20:18 +01:00
Johannes Zellner
aa693e529b
Only list apps where a user has access to
2016-02-25 12:20:11 +01:00
Johannes Zellner
63013c7297
Just check for .admin flag in the user object
2016-02-25 11:42:25 +01:00
Johannes Zellner
c8db6419d8
Admins are not special cased in apps.js app listing
...
This is done in the route
2016-02-25 11:41:14 +01:00
Johannes Zellner
93c1ddd982
Always amend the admin flag for further use
2016-02-25 11:40:48 +01:00
Johannes Zellner
df102ec374
Add basic getAllByUser() app tests
2016-02-25 11:28:45 +01:00
Johannes Zellner
9688e4c124
Add apps.getAllByUser()
2016-02-25 11:28:29 +01:00
Johannes Zellner
00d277b1c3
Make the error dialog generic not only for app install errors
2016-02-24 18:36:40 +01:00
Johannes Zellner
0fb44bfbc1
Forward the error.message instead of making a new Error object
...
That leads to only Internal Error
2016-02-24 18:12:31 +01:00
Johannes Zellner
c167bd8996
Set error in installationProgress also on uninstallation errors
2016-02-24 17:53:21 +01:00
Johannes Zellner
a3737c3797
Report access denied errors in route53 backend
2016-02-23 17:29:28 +01:00
Johannes Zellner
8fcb0b46a5
add 0.9.1 changes
2016-02-21 14:51:51 +01:00
Johannes Zellner
f5189e0a56
Force the user to set at least one access restriction group
2016-02-19 18:02:51 +01:00
Johannes Zellner
86f14b0149
Thanks JS for being so value focused...
2016-02-19 17:23:09 +01:00
Johannes Zellner
30913006e3
Remove all occurances of oauthProxy in the webadmin
2016-02-19 16:50:25 +01:00
Johannes Zellner
81bd4f2ea5
Remove console.log()
2016-02-19 16:29:40 +01:00
Johannes Zellner
351ddcb218
Fixup the unit tests
2016-02-19 16:29:29 +01:00
Johannes Zellner
dd18f9741a
Dynamically detect oauth proxy needs in apptask
2016-02-19 16:18:47 +01:00
Johannes Zellner
cdce6e605d
Adjust to new apps api
2016-02-19 16:14:02 +01:00
Johannes Zellner
d4480ec407
Remove oauthProxy usage in the database wrapper
2016-02-19 16:12:58 +01:00
Johannes Zellner
85c92ab0b4
Remove oauthProxy from the apps.js api
2016-02-19 16:07:49 +01:00
Johannes Zellner
230c24d6c6
Adjust the route unit tests, to remove oauthProxy
2016-02-19 16:01:08 +01:00
Johannes Zellner
07c935dfec
Remove oauthProxy from client side api wrapper
2016-02-19 16:00:48 +01:00
Johannes Zellner
eab3bda8e1
Remove oauthProxy from the apps rest routes
2016-02-19 15:54:01 +01:00
Johannes Zellner
f731c1ed0b
Dynamically detect if an oauth proxy should be used for an app
2016-02-19 15:44:15 +01:00
Johannes Zellner
edec3601f4
Do not rely on oauthProxy property of app object in nginx configuration code
2016-02-19 15:43:39 +01:00
Johannes Zellner
9e87fd0440
Add apps.requiresOAuthProxy()
2016-02-19 15:03:36 +01:00
Johannes Zellner
8cb304e1c9
Ensure app ordering by location
2016-02-19 13:36:39 +01:00
Johannes Zellner
a24335d68b
Remove oauth proxy setting ui
2016-02-19 12:04:05 +01:00
Johannes Zellner
78d1ed7aa5
Special case the admin button in apps access control UI
2016-02-18 18:26:24 +01:00
Johannes Zellner
deb30e440a
Disable ejs debug flag
2016-02-18 18:00:23 +01:00
Johannes Zellner
86ef9074b1
Add access restriction tests for ldap auth
2016-02-18 17:40:53 +01:00
Johannes Zellner
1a13128ae1
Ensure accessRestriction is either an object or an empty string
2016-02-18 17:28:00 +01:00
Johannes Zellner
b41642552d
The ldap property is part of req.connection
2016-02-18 16:40:30 +01:00
Johannes Zellner
f5570c2e63
Enable the apps group access control ui
2016-02-18 16:14:45 +01:00
Johannes Zellner
b0d11ddcab
Adhere to access control on ldap user bind
2016-02-18 16:04:53 +01:00
Johannes Zellner
804464c304
Add apps.getByIpAddress()
2016-02-18 15:43:46 +01:00
Johannes Zellner
ecf7f442ba
Add docker.getContainerIdByIp()
2016-02-18 15:39:27 +01:00
Johannes Zellner
9ddd3aeb07
Show app id and fix naked domain in debugApp()
2016-02-18 12:51:25 +01:00
Johannes Zellner
864e3ff217
Give form feedback if group name is invalid
...
Fixes #583
2016-02-15 13:09:58 +01:00
Johannes Zellner
9bf1fe3b7d
Show naked_domain for healthtask summary
2016-02-14 17:42:52 +01:00
Johannes Zellner
b32a48c212
Add changelog for 0.9.0
2016-02-14 13:19:12 +01:00
Johannes Zellner
22a3dd7653
Disable advanced accessControl ui
...
This is working, from a configuration standpoint.
However not all auth methods support this yet, so
we hide it until that is done, otherwise it is just
confusing
2016-02-14 13:15:09 +01:00
Johannes Zellner
132b463e0a
Hide memoryLimit ui
2016-02-14 13:14:03 +01:00
Johannes Zellner
7aefe5226a
Properly layout the group labels
2016-02-14 13:12:04 +01:00
Johannes Zellner
656c1bfd3a
Make Admin group members visible
2016-02-14 13:11:49 +01:00
Johannes Zellner
e237b609f5
Make admin group buttons red
2016-02-14 13:08:50 +01:00
Johannes Zellner
057b9e954e
Support btn-admin
2016-02-14 13:08:40 +01:00
Johannes Zellner
f79c00d9be
Special case admin group button in user profile
2016-02-14 12:51:58 +01:00
Johannes Zellner
5f96d862ab
Move default memory limit to constants.js
2016-02-14 12:13:49 +01:00
Johannes Zellner
79199bf023
Ensure we stash and restore the memoryLimit
2016-02-14 12:10:22 +01:00
girish@cloudron.io
beec4dddca
my -> our
2016-02-13 11:22:47 -08:00
Johannes Zellner
7c243cb219
Warn the user on group deletion if it still has members
2016-02-13 12:42:41 +01:00
Johannes Zellner
754e33af2a
do not allow removing the admin group
2016-02-13 12:42:41 +01:00
Johannes Zellner
63cab7d751
Allow non-empty groups to be deleted
2016-02-13 12:42:41 +01:00
Johannes Zellner
503714a10b
Special case admin group in group listing
2016-02-13 12:42:41 +01:00
girish@cloudron.io
ada5be6ae0
Add 0.9.0 changes
2016-02-13 03:27:21 -08:00
girish@cloudron.io
2112494b43
bump mysql image version
2016-02-13 03:26:29 -08:00
girish@cloudron.io
c0b45ad71e
update manifestformat to 2.3.0
2016-02-12 17:40:00 -08:00
girish@cloudron.io
5669d387af
check app state before exec
2016-02-12 12:32:58 -08:00
Johannes Zellner
957f20a9a8
Always store the memory limit in the app db record and adjust on update if needed
2016-02-11 18:14:16 +01:00
Johannes Zellner
71bfc1cbda
Ensure we never go below minimum memoryLimit
2016-02-11 18:13:42 +01:00
Johannes Zellner
489ea3a980
Add memoryLimit validation
2016-02-11 17:39:15 +01:00
Johannes Zellner
8c6f655628
Ensure we deal with byte values for memoryLimit
2016-02-11 17:29:00 +01:00
Johannes Zellner
75d22d7988
Introduce memoryLimit to apps routes
2016-02-11 17:00:21 +01:00
Johannes Zellner
a7bf043a9e
Improve memory limit ui
2016-02-11 16:31:11 +01:00
Johannes Zellner
402385faca
Remove unused linter options
2016-02-11 14:35:51 +01:00
Johannes Zellner
cdd82fa456
Add access restriction by group ui to app configure dialog
2016-02-11 14:14:51 +01:00
Johannes Zellner
2f7d99f3f6
Do not allow to remove the user from the admin group
2016-02-11 13:43:02 +01:00
Johannes Zellner
e4799991ec
Remove reference to non-existing css selector form-signin
2016-02-11 12:53:35 +01:00
Johannes Zellner
66167e74dc
Cleanup the user forms
2016-02-11 12:50:02 +01:00
Johannes Zellner
5643d49bef
Check if user deletion actually affected a row
2016-02-11 12:07:43 +01:00
Johannes Zellner
81ec26e45c
Ensure we can delete users which belong to a group
2016-02-11 12:02:35 +01:00
Johannes Zellner
72c5ebcc06
Add user api tests for adding/removing from admin group
2016-02-11 11:39:19 +01:00
Johannes Zellner
ecf7575dd3
UserError.NOT_ALLOWED is not unused
2016-02-11 11:32:48 +01:00
Johannes Zellner
98a7f44dc1
Check for last admin not required anymore
...
This is now prevented by the fact that an admin
cannot remove itself from the admin group. There
remains a race, just like before, where two admins could
trigger an admin group removal of the other admin in parallel
and the calls are in a state after admin flag check of
the used tokens. This can only be prevented with a db constraint
in the end.
2016-02-11 11:30:21 +01:00
Johannes Zellner
5fce9c8d1f
Do not allow an admin remove itself from admins group
2016-02-11 11:29:04 +01:00
Johannes Zellner
0ea89fccb8
Remove admin api route tests
2016-02-11 11:26:35 +01:00
Johannes Zellner
2c2922d725
Make tests succeed for now
...
We still have to bring back the sending of email when admins are changed
2016-02-11 11:26:35 +01:00
Johannes Zellner
fbeefeca7d
setGroups() has no result
2016-02-11 11:26:35 +01:00
Johannes Zellner
163ceef527
Remove the admin toggle route
2016-02-11 11:26:35 +01:00
Girish Ramakrishnan
db5cc1f694
dropping groupMembers table makes not much sense
2016-02-10 08:57:06 -08:00
Johannes Zellner
a3b9a7365c
No need to check for admin, the whole view is admin only
2016-02-10 17:35:40 +01:00
Johannes Zellner
213b2a2802
show groups of each user
2016-02-10 17:34:29 +01:00
Johannes Zellner
229d09bb9e
Give the group buttons some space
2016-02-10 17:26:51 +01:00
Johannes Zellner
f127680c8c
Fixup the group delete dialog title
2016-02-10 17:23:42 +01:00
Johannes Zellner
f767f7f1b9
We do not actually allow group edit
2016-02-10 17:22:04 +01:00
Johannes Zellner
acb1afa955
Make delete action the last one
2016-02-10 17:20:24 +01:00
Johannes Zellner
d132109925
Fixup the modal dialog css selector
2016-02-10 17:16:50 +01:00
Johannes Zellner
820e417026
angular requires special treatment for DELETE
2016-02-10 17:12:58 +01:00
Johannes Zellner
94bd0c606b
Add group removal ui
2016-02-10 16:59:24 +01:00
Johannes Zellner
9a8328e6db
We should really use camelCase
2016-02-10 16:43:23 +01:00
Johannes Zellner
5c75d64a07
Do not forget to reset the busy state
2016-02-10 16:41:32 +01:00
Johannes Zellner
a8001995c8
Add business logic for group adding
2016-02-10 16:37:58 +01:00
Johannes Zellner
9ba4d52fb7
Add Client.createGroup()
2016-02-10 16:37:46 +01:00
Johannes Zellner
0e613a1cab
Ensure focus
2016-02-10 16:25:38 +01:00
Johannes Zellner
cf3d503a74
Add group add form
2016-02-10 16:24:25 +01:00
Johannes Zellner
1ab46a96f9
Reset the user edit form password error
2016-02-10 15:18:36 +01:00
Johannes Zellner
1a3164ef32
Add ui components for group management
2016-02-10 15:15:09 +01:00
Johannes Zellner
bd62efcff5
That api is of course a PUT api
2016-02-10 15:01:51 +01:00
Johannes Zellner
7fc37b7c70
Allow admins to edit other users
2016-02-10 14:48:54 +01:00
Johannes Zellner
8ddccae15a
Save the groups on user edit
2016-02-10 14:47:49 +01:00
Johannes Zellner
675d7c8730
Add Client.setGroups()
2016-02-10 14:47:35 +01:00
Johannes Zellner
ba35d4a313
remove unused class
2016-02-10 14:40:29 +01:00
Johannes Zellner
c1280ddcc2
Make group buttons toggle able
2016-02-10 14:39:49 +01:00
Johannes Zellner
36ded4c06a
Group -> Groups
2016-02-10 14:26:17 +01:00
Johannes Zellner
9fb276019e
Add ui elements for group selection
2016-02-10 14:26:04 +01:00
Johannes Zellner
19982b1815
Add Client.getGroups()
2016-02-10 14:25:08 +01:00
Johannes Zellner
459d5b8f60
Adjust user action buttons
2016-02-10 14:07:37 +01:00
Johannes Zellner
8ba5dc2352
Fix indentation
2016-02-10 13:55:49 +01:00
Johannes Zellner
8c73a7c7c2
Send admin flag with user profile
2016-02-10 13:35:16 +01:00
Johannes Zellner
e78dd41e88
Replace deprecated gulp-minify-css with gulp-cssnano
2016-02-10 13:13:08 +01:00
Johannes Zellner
59ecb056d0
Fixup the oauth tests to set memoryLimit
2016-02-10 12:49:02 +01:00
Johannes Zellner
11b17fec3a
Ensure groupMembers table is created first
2016-02-10 12:38:00 +01:00
Johannes Zellner
5ea81d0fd3
Ensure default minimum memory limit
2016-02-10 12:30:19 +01:00
Johannes Zellner
19cbd1f394
Ensure we never go below 256mb memoryLimit
2016-02-10 12:30:19 +01:00
Johannes Zellner
1b7265f866
Fixup the merge
2016-02-10 12:28:57 +01:00
Johannes Zellner
1cdb64e78d
Use memoryLimit from app object instead of manifest in docker.js
2016-02-10 12:25:26 +01:00
Johannes Zellner
eec8708249
Set memory limit on app installation to the default or the one specified in the manifest
2016-02-10 12:25:26 +01:00
Johannes Zellner
ab003bf81f
adjust appdb.js and unit tests to support memoryLimit
2016-02-10 12:25:26 +01:00
Johannes Zellner
2d60901b6e
memoryLimit has to be BIGINT
2016-02-10 12:25:26 +01:00
Johannes Zellner
3fc9bde4f4
Make memoryLimit step in 8s
2016-02-10 12:25:26 +01:00
Johannes Zellner
4fc0df31fe
Add apps.memoryLimit
2016-02-10 12:25:26 +01:00
Girish Ramakrishnan
3ac326e766
try upto 5 minutes to download the tarball
...
DO/S3 can be really slow at times
2016-02-09 21:07:03 -08:00
Girish Ramakrishnan
4770f9ddf6
add hasAccessTo tests
2016-02-09 21:07:03 -08:00
girish@cloudron.io
7e60fd554a
add some failing groups for good measure
2016-02-09 18:55:42 -08:00
girish@cloudron.io
c1cd7ac129
fix typo
2016-02-09 18:53:14 -08:00
girish@cloudron.io
aab62263a7
add accessRestriction group test in oauth2
2016-02-09 18:52:27 -08:00
girish@cloudron.io
79889a0aac
test simple auth accessRestriction
2016-02-09 18:40:20 -08:00
Girish Ramakrishnan
f413bfb3a0
Add route to set the users groups
2016-02-09 16:43:32 -08:00
Girish Ramakrishnan
2b0791f4a3
rename vars
2016-02-09 16:19:00 -08:00
Girish Ramakrishnan
d95339534f
rename test file
2016-02-09 16:17:01 -08:00
Girish Ramakrishnan
82cf667f3b
Add groups route tests
2016-02-09 15:26:46 -08:00
girish@cloudron.io
e20b3f75e4
Handle NOT_EMPTY group deletion
2016-02-09 13:45:28 -08:00
girish@cloudron.io
6cca7b3e0e
initial rest API for groups
2016-02-09 13:34:36 -08:00
girish@cloudron.io
0b814af206
Add api to get groups
2016-02-09 13:33:30 -08:00
girish@cloudron.io
bfdabf9272
check groups property in accessRestriction
2016-02-09 13:03:52 -08:00
girish@cloudron.io
60988ff7f3
make hasAccessTo take a callback
2016-02-09 12:48:21 -08:00
girish@cloudron.io
3649fd0c31
drop the gid: prefix for group id
...
like the username, id and name is same in groups.
2016-02-09 12:28:50 -08:00
girish@cloudron.io
00c5aa041f
clear database in backups test
2016-02-09 12:21:36 -08:00
girish@cloudron.io
4569b67007
make users and admins groups as reserved
2016-02-09 12:16:30 -08:00
girish@cloudron.io
1fb26bc441
make startAppTask take a callback
2016-02-09 12:14:04 -08:00
girish@cloudron.io
e6d23a9701
stop previous task explicitly
...
there is a race:
1. task is running
2. new task is created overwriting the installationState
3. new task kills the old task of step 1. this results in installationState getting overwritten by 'error' because of the sigkill
4. new task that is launched loses the installationState that was step in 2.
2016-02-09 12:09:20 -08:00
girish@cloudron.io
0785266741
kill immediately. by default, it sends SIGTERM
2016-02-09 12:03:21 -08:00
girish@cloudron.io
e752949752
make all tests work after group changes
2016-02-09 11:29:32 -08:00
girish@cloudron.io
199eb2b3e1
set the admin flag in user object
2016-02-09 09:25:17 -08:00
Girish Ramakrishnan
49cbea93fb
fix ldap test
2016-02-09 08:52:16 -08:00
girish@cloudron.io
451c410547
make user test pass
2016-02-08 21:17:21 -08:00
girish@cloudron.io
f6541720c4
pass owner flag in createUser
2016-02-08 21:05:02 -08:00
girish@cloudron.io
5e5435e869
send email for userAded
2016-02-08 20:51:20 -08:00
girish@cloudron.io
0d4f113d7d
add groupIds to user object
2016-02-08 20:38:50 -08:00
girish@cloudron.io
14fab0992f
make user test mostly work
2016-02-08 16:53:20 -08:00
girish@cloudron.io
d7eb004bc1
remove admin arg from user.create
2016-02-08 16:36:45 -08:00
girish@cloudron.io
c34f3ee653
null invitor is ok
2016-02-08 16:36:26 -08:00
girish@cloudron.io
96d595de39
fix database test
2016-02-08 16:25:29 -08:00
girish@cloudron.io
b1f4508313
remove admin references from userdb
2016-02-08 16:18:51 -08:00
girish@cloudron.io
52ce59faaf
createUser does not take admin anymore
2016-02-08 16:14:43 -08:00
girish@cloudron.io
85085ae0b2
implement getAllAdmins based on groups
2016-02-08 16:10:44 -08:00
girish@cloudron.io
c14cf9c260
migrate admin flag to group membership
2016-02-08 16:07:44 -08:00
girish@cloudron.io
a47c6f0774
make requires alphabetical
2016-02-08 15:17:54 -08:00
girish@cloudron.io
888955bd9b
add groups.isMember
2016-02-08 10:53:01 -08:00
girish@cloudron.io
6abf5e2c44
group members: add/remove/get
2016-02-08 10:48:21 -08:00
girish@cloudron.io
b1935c3550
restrict group names
2016-02-08 09:41:25 -08:00
girish@cloudron.io
e39d7750c5
add group membership table
2016-02-08 08:55:37 -08:00
girish@cloudron.io
1d83a48a1a
make group id distinct from name
2016-02-08 08:44:18 -08:00
Girish Ramakrishnan
802ee6c456
more group tests
2016-02-07 20:49:55 -08:00
Girish Ramakrishnan
278085ba22
initial tests for adding group
2016-02-07 20:34:05 -08:00
Girish Ramakrishnan
b945a8a04c
add groups model and db code
2016-02-07 20:25:08 -08:00
Girish Ramakrishnan
7ef92071c5
add groups table
2016-02-07 20:11:37 -08:00
girish@cloudron.io
c16ab95193
reword CLI message
2016-02-04 23:13:29 -08:00
Girish Ramakrishnan
c5e2d9a9cc
download new app image as the first thing in update
...
this will reduce downtime.
2016-02-04 22:49:22 -08:00
Girish Ramakrishnan
07df76b25e
Change developer mode text to cli
2016-02-04 22:49:22 -08:00
girish@cloudron.io
5b264565db
set the target for cloudron links
2016-02-04 18:22:53 -08:00
girish@cloudron.io
a3561bd040
Make Cloudron a link and fix copyright
2016-02-04 17:47:31 -08:00
girish@cloudron.io
6e4f47e807
0.8.1 changes
2016-02-04 15:20:40 -08:00
Johannes Zellner
471965dc66
Add initial still disabled slider to app configure
2016-02-04 16:45:00 +01:00
Johannes Zellner
3b109ea2e7
Include bootstrap-slider in our angular app
2016-02-04 16:44:40 +01:00
Johannes Zellner
6011526d5e
Add bootstrap-slider assets
2016-02-04 16:44:03 +01:00
Johannes Zellner
1395d2971b
Send app update changelog with email
...
Fixes #579
2016-02-04 15:31:40 +01:00
Johannes Zellner
e9d6badae7
Changelog is just a flat text, no array
2016-02-04 15:17:18 +01:00
Johannes Zellner
65ddc7f24c
Show changelog in app update ui
2016-02-04 15:17:18 +01:00
girish@cloudron.io
fa871c7ada
some apache configs require Host header to be set
2016-02-03 20:18:59 -08:00
girish@cloudron.io
8652d6c136
Add 0.8.0 changes
2016-02-02 08:51:13 -08:00
girish@cloudron.io
16d976a145
use multidb version of mysql addon
2016-02-02 08:46:09 -08:00
girish@cloudron.io
fa1f5cc454
call the multi methods if multipleDatabases is set
2016-02-02 08:41:41 -08:00
Johannes Zellner
84c3b367d5
Actually wait for apps to be stopped
2016-01-29 17:24:18 +01:00
Johannes Zellner
793aa6512d
Rework parts of the apps tests to be more reliable
...
No need to create and tear down the addons everytime.
Docker proxy can also be just injected once.
Wait explicitly for apptasks to be terminated.
2016-01-29 16:27:37 +01:00
Johannes Zellner
98ab99ab34
Add callback to config._reset() for convenience
2016-01-29 16:27:04 +01:00
Johannes Zellner
24a826bdd1
Reduce from 20 to 10 sec wait for addons
...
Since that is reliable already with 10 on my laptop
I assume this is fine for any other more modern machine
2016-01-29 16:26:15 +01:00
Johannes Zellner
05245f5fc7
Add a way to wait and stop pending tasks
2016-01-29 16:25:31 +01:00
Johannes Zellner
b718c8d044
Cleanup config before and after apps tests
2016-01-29 14:30:40 +01:00
Johannes Zellner
2888a85081
Remove cloudron side migrate api
...
This is some old api when we had a migrate view in the webadmin
This is entirely handled on the appstore for now.
2016-01-29 14:17:33 +01:00
Johannes Zellner
307262244a
Also cleanup the config file on config._reset()
2016-01-29 14:17:10 +01:00
Johannes Zellner
9a875634f8
Improve error message in mailer
2016-01-29 12:40:34 +01:00
Johannes Zellner
4af33486ae
Add missing fi in shell script
2016-01-29 12:31:59 +01:00
Johannes Zellner
befa898f18
Do not show app version, but make it available as a tooltip on the title for us
2016-01-29 12:29:35 +01:00
Johannes Zellner
18525e1236
Show app website in appstore install dialog
...
Fixes #580
2016-01-29 12:26:42 +01:00
Johannes Zellner
28ffd01cf4
Invoke BACKUP_APP_CMD with the additional backupConfig.url
2016-01-29 11:55:52 +01:00
Johannes Zellner
09c7aa4440
Remove whitespace
2016-01-29 11:54:58 +01:00
Johannes Zellner
ea4862d351
Strictly assert on app
2016-01-29 11:54:40 +01:00
Johannes Zellner
3e4d62329e
Also copy the backup config json
2016-01-29 11:54:15 +01:00
Johannes Zellner
d12366576b
Add backup config url to backupapp.sh
2016-01-29 11:44:24 +01:00
Johannes Zellner
7b1d906494
Add backups.getAppBackupConfigUrl()
2016-01-29 11:44:24 +01:00
Johannes Zellner
0972c88b8b
Set the correct environment for the installer.sh
2016-01-28 16:36:34 +01:00
girish@cloudron.io
9464a26a7e
put version in the mail
2016-01-27 10:35:48 -08:00
Johannes Zellner
10f1ad5cfe
Until we can distinguish by the return data, mark both fields red
2016-01-26 19:44:33 +01:00
Johannes Zellner
fd11eb8da0
Ensure the user add form is reset on show
2016-01-26 19:40:57 +01:00
girish@cloudron.io
62d5e99802
Version 0.7.2 changes
2016-01-26 10:34:09 -08:00
girish@cloudron.io
48305f0e95
call retire after sending off the http response
2016-01-26 10:29:32 -08:00
girish@cloudron.io
8170b490f2
add retire.sh
...
this is a sudo script that retires the box
2016-01-26 09:37:25 -08:00
girish@cloudron.io
072962bbc3
add internal route to retire
2016-01-26 08:46:48 -08:00
girish@cloudron.io
33bc1cf7d9
Add cloudron.retire
2016-01-26 08:39:42 -08:00
Johannes Zellner
85df9d1472
We use 'wrong password' now everywhere
2016-01-26 16:09:14 +01:00
Johannes Zellner
109ba3bf56
Do not perform any client side password validation in user delete form
2016-01-26 16:06:42 +01:00
Johannes Zellner
8083362e71
Ensure we enforce the password pattern for setup view
2016-01-26 15:55:02 +01:00
Johannes Zellner
9b4c385a64
Ensure we send proper password requirements on password reset
2016-01-26 15:21:03 +01:00
girish@cloudron.io
ee9c8ba4eb
fix dead comment
2016-01-25 20:15:54 -08:00
girish@cloudron.io
000a64d54a
remove installer.retire
2016-01-25 17:52:35 -08:00
girish@cloudron.io
eba74d77a6
remove installer certs
...
the installer is no more a public server
2016-01-25 17:47:57 -08:00
girish@cloudron.io
714a1bcb1d
installer: remove provisioning server
...
the box will retire itself
2016-01-25 17:46:24 -08:00
girish@cloudron.io
02d17dc2e4
fix typo
2016-01-25 16:51:14 -08:00
girish@cloudron.io
4b54e776cc
reset update info after short-circuit
2016-01-25 16:46:54 -08:00
girish@cloudron.io
ba6f05b119
Clear the progress for web ui to work
2016-01-25 16:35:03 -08:00
girish@cloudron.io
1d9ae120dc
strip prerelease from box version and not the released version
2016-01-25 16:27:22 -08:00
girish@cloudron.io
3ce841e050
add test for checkDiskSpace
2016-01-25 16:03:12 -08:00
girish@cloudron.io
436fc2ba13
checking capacity does not work well for /
...
Just check if we have around 1.25GB left.
/root (data image file) is 26G
/home (our code) is 1G
/apps.swap is 2G
/backup.swap is 1G
/var is 6.2G (docker)
Rest of the system is 1.5G
Fixes #577
2016-01-25 15:56:46 -08:00
girish@cloudron.io
77d652fc2b
add test for config.setVersion
2016-01-25 15:12:22 -08:00
girish@cloudron.io
ac3681296e
short-circuit updates from prerelease to release version
...
Fixes #575
2016-01-25 14:48:12 -08:00
girish@cloudron.io
5254d3325f
add comment on fields on box update info object
2016-01-25 13:57:59 -08:00
girish@cloudron.io
ce0a24a95d
comment out public graphite paths
2016-01-25 12:51:37 -08:00
Johannes Zellner
1bb596bf58
Add changes for 0.7.1
2016-01-25 16:40:57 +01:00
Johannes Zellner
c384ac6080
Use local cache when looking up apps
2016-01-25 16:25:25 +01:00
Johannes Zellner
61c2ce0f47
Keep appstore url bar up-to-date with the selected app
...
This allows sharing links directly
Fixes #526
2016-01-25 16:21:44 +01:00
Johannes Zellner
7a71315d33
Adjust angular's to allow non reload path changes
2016-01-25 16:21:20 +01:00
Johannes Zellner
0a658e5862
Ensure the focus is setup correctly
2016-01-25 15:30:29 +01:00
Johannes Zellner
5f8c99aa0e
There is no body here
2016-01-25 15:29:52 +01:00
Johannes Zellner
4c6f1e4b4a
Allow admins or users to operate on themselves
2016-01-25 15:29:52 +01:00
Johannes Zellner
226ae627f9
Move updateUser() to where it belongs
2016-01-25 15:29:52 +01:00
Johannes Zellner
27a02aa918
Make user edit form submit with enter
2016-01-25 15:29:52 +01:00
Johannes Zellner
3c43503df8
Add businesslogic for user edit form
2016-01-25 14:58:12 +01:00
Johannes Zellner
35c926d504
Ensure we actually update the correct user, not the user holding the token
2016-01-25 14:58:02 +01:00
Johannes Zellner
ea18ca5c60
Fix copy and paste error in the user add form
2016-01-25 14:46:51 +01:00
Johannes Zellner
55a56355d5
Add email change fields to user edit form
2016-01-25 14:28:47 +01:00
Johannes Zellner
dc83ba2686
Require displayName in updateUser()
2016-01-25 14:26:42 +01:00
Johannes Zellner
62615dfd0f
Make email in user change optional
2016-01-25 14:12:09 +01:00
Johannes Zellner
a6998550a7
Add displayName change unit tests
2016-01-25 14:08:35 +01:00
Johannes Zellner
3b199170be
Support changing the displayName
2016-01-25 14:08:11 +01:00
Johannes Zellner
1f93787a63
Also send displayName for users
2016-01-25 13:36:51 +01:00
Johannes Zellner
199c5b926a
Show tooltip for user action buttons
2016-01-25 13:31:49 +01:00
Johannes Zellner
d9ad7085c3
Shorten the user action buttons
2016-01-25 13:28:48 +01:00
Johannes Zellner
df12f31800
Add ui components for user edit
2016-01-25 13:28:30 +01:00
Johannes Zellner
ad205da3db
Match any loop back device
...
This is just a quick fix and will potentially match all
loop* devices.
2016-01-25 13:06:38 +01:00
Johannes Zellner
34aab65db3
Use the first part of the dn to get the common name in ldap
...
It is no must to have the first part named 'cn' but the first
part is always the id we want to verify
2016-01-25 11:31:57 +01:00
Johannes Zellner
63c06a508e
Make /api available on just the IP
...
We might want to also show something else than
the naked domain placeholder page when just
accessing the ip
2016-01-24 12:08:10 +01:00
Girish Ramakrishnan
a2899c9c65
add appupdate tests
2016-01-24 00:44:46 -08:00
Girish Ramakrishnan
ff6d5e9efc
complete the box update tests
2016-01-24 00:06:32 -08:00
Girish Ramakrishnan
f48fe0a7c0
Get started with updatechecker tests
2016-01-23 22:38:46 -08:00
Girish Ramakrishnan
5f6c8ca520
fix crash
2016-01-23 13:37:21 -08:00
Girish Ramakrishnan
0eaa3a8d94
clear update info so that we use the latest settings
2016-01-23 11:08:01 -08:00
Girish Ramakrishnan
8ad190fa83
make updateConfig a provision argument
2016-01-23 10:15:09 -08:00
girish@cloudron.io
70f096c820
check settingsdb whether to notify for app prerelease
...
fixes #573
2016-01-23 05:56:08 -08:00
girish@cloudron.io
2840251862
check if updateInfo is null earlier
2016-01-23 05:37:22 -08:00
girish@cloudron.io
b43966df22
code without callback is hard to read
2016-01-23 05:35:57 -08:00
girish@cloudron.io
cc22285beb
Check settingsdb whether to notify for prereleases
...
part of #573
2016-01-23 05:33:16 -08:00
girish@cloudron.io
b72d48b49f
set default update config
2016-01-23 05:07:12 -08:00
girish@cloudron.io
3a6b9c23c6
settings: add update config
2016-01-23 05:06:09 -08:00
girish@cloudron.io
b2da364345
fix typo in comment
2016-01-22 17:58:38 -08:00
girish@cloudron.io
de7a6abc50
Check for out of disk space
...
Fixes #567
2016-01-22 17:46:23 -08:00
girish@cloudron.io
10f74349ca
collectd: disable vmem plugin
2016-01-22 15:44:46 -08:00
girish@cloudron.io
05a771c365
collectd: disable process plugin
2016-01-22 15:43:47 -08:00
girish@cloudron.io
cfa2089d7b
collectd: Remove ping metric
2016-01-22 15:36:13 -08:00
girish@cloudron.io
d56abd94a9
collectd uses the data lo partition that is resized by box-setup.sh
2016-01-22 15:06:43 -08:00
girish@cloudron.io
2f20ff8def
use loop1 instead of loop0
...
box-setup.sh always resizes the loopback partition on reboot. This
means that it always be loop1.
2016-01-22 15:03:23 -08:00
girish@cloudron.io
9706daf330
Just track ext4 and btrfs file systems
2016-01-22 14:33:02 -08:00
girish@cloudron.io
a246b3e90c
box-setup needs to run after mounting to prevent race in script
2016-01-22 14:21:36 -08:00
girish@cloudron.io
e28e1b239f
fix comment
2016-01-22 14:21:20 -08:00
girish@cloudron.io
4aead483de
This hack is not needed in 15.10 anymore
...
collectd is still same version in 15.10 but it collects info correctly
as df-vda1 now.
2016-01-22 14:00:40 -08:00
girish@cloudron.io
f8cc6e471e
0.7.0 changes
2016-01-22 11:02:04 -08:00
girish@cloudron.io
6b9ed9472d
upgrade to 15.10
2016-01-22 10:46:13 -08:00
girish@cloudron.io
a763b08c41
pin packages
...
fixes #558
2016-01-22 10:46:13 -08:00
Johannes Zellner
178f904143
Put installer.sh location in README
2016-01-22 13:03:31 +01:00
Girish Ramakrishnan
bb88fa3620
Restart node processes if journald crashes
...
Note that we cannot simply ignore EPIPE in the node programs.
Doing so results in no logs anymore :-( This is supposedly
fixed in systemd 228.
Fixes #550
2016-01-21 22:13:19 -08:00
Girish Ramakrishnan
1e1249d8e0
Give journald more time to sync
...
Part of #550
2016-01-21 21:43:49 -08:00
girish@cloudron.io
bcb0e61bfc
Kill child processes
...
On Unix, child processes are not killed when parent dies.
Each process is part of a process group (pgid). When pgid == pid,
it is the process group leader.
node creates child processes with the parent as the group leader
(detached = false).
You can send a signal to entire group using kill(-pgid), as in,
negative value in argument. Systemd can be made to do this by
setting the KillMode=control-group.
Unrelated: Process groups reside inside session groups. Each session
group has a controlling terminal. Only one process in the session
group has access to the terminal. Process group is basically like
a bash pipeline. A session group is the entire login session with only
one process having terminal access at a time.
Fixes #543
2016-01-21 17:44:17 -08:00
girish@cloudron.io
022ff89836
Add 0.6.6 changes
2016-01-21 15:57:22 -08:00
girish@cloudron.io
b9d4b8f6e8
Remove docker images by tag
...
docker pull previously used to pull down all tags.
docker pull tag1 # might pull down tag2, tag3 if they are all same!
docker rm tag1 # oops, tag2 and tag3 still hold on to the image
However, the above feature was not possible with registry v2 (some
technical stuff to do with each tag being separately signed). As a result,
this feature was removed from v1 as well - https://github.com/docker/docker/pull/10571
This means we can now do:
docker pull tag1 # nice
docker rm tag1 # image goes away if no one else is using it
references:
https://github.com/docker/docker/issues/8689
https://github.com/docker/docker/pull/8193 (added this feature to v1)
https://github.com/docker/docker/issues/8141 (the request)
https://github.com/docker/docker/pull/10571 (removes the v1 feature)
Fixes #563
2016-01-21 15:53:51 -08:00
Johannes Zellner
0f5ce651cc
Show errors if passwords do not match for reset and setup
2016-01-21 16:33:51 +01:00
Johannes Zellner
6b8d5f92de
Set meaningful page title for oauth rendered pages
2016-01-21 16:19:38 +01:00
Johannes Zellner
55e556c725
Also provide client side password validation for password setup and reset forms
2016-01-21 16:08:51 +01:00
Johannes Zellner
19bb0a6ec2
Move form feedback below in setup screen
2016-01-21 16:03:46 +01:00
Johannes Zellner
290132f432
Add warning in password.js to update the UI parts
2016-01-21 16:00:12 +01:00
Johannes Zellner
4a8be8e62d
Add changes for 0.6.5
2016-01-21 15:57:48 +01:00
Johannes Zellner
23b61aef0c
Use client side pattern validation for setup password
2016-01-21 15:52:24 +01:00
Johannes Zellner
24cc433a3d
Also take care of the developermode toggle form
2016-01-21 15:17:49 +01:00
Johannes Zellner
e014b7de81
It should be called 'Wrong password'
2016-01-21 15:11:42 +01:00
Johannes Zellner
0895a2bdea
Same procedure for the app uninstall dialog
2016-01-21 15:09:22 +01:00
Johannes Zellner
03ca4887ba
Streamline the app restore password validation
2016-01-21 15:06:22 +01:00
Johannes Zellner
9eeb17c397
Fixup app configure password validation
2016-01-21 15:03:51 +01:00
Johannes Zellner
6a5da2745a
Simplify password validation in email edit
2016-01-21 14:59:39 +01:00
Johannes Zellner
e1111ba2bb
Simplify password validation for cloudron update
2016-01-21 14:57:21 +01:00
Johannes Zellner
d186084835
Use password regexp instead of min-max to do client side validation also
2016-01-21 14:47:21 +01:00
Johannes Zellner
06c2ba9fa9
Fixup email edit form with password changes
2016-01-21 14:34:36 +01:00
Johannes Zellner
b82e5fd8c6
Remove console.log()
2016-01-21 14:29:04 +01:00
Johannes Zellner
6e1f96a832
Set min and max length for all password fields
2016-01-21 14:26:24 +01:00
Johannes Zellner
f68135c7aa
Fixup password requirement feedback in account settings
2016-01-21 14:03:24 +01:00
Johannes Zellner
f48cbb457b
Call reset avatar to trigger favicon change
2016-01-20 17:15:13 +01:00
Johannes Zellner
8d192dc992
Add Client.resetAvatar()
2016-01-20 17:14:50 +01:00
Johannes Zellner
b70324aa24
Give favicon an id
2016-01-20 17:14:36 +01:00
Johannes Zellner
390afaf614
Remove dead code
2016-01-20 16:56:14 +01:00
Johannes Zellner
5112322e7d
Ensure the avatar is always updated in all places
...
Fixes #549
2016-01-20 16:55:44 +01:00
Johannes Zellner
2cb498d500
Improve singleUser configure dialog
...
Fixes #565
2016-01-20 16:27:43 +01:00
Johannes Zellner
2bd6e02cdc
Do not show oauth proxy settings for singleUser apps
2016-01-20 16:23:31 +01:00
Johannes Zellner
85423cbc20
Actually send displayName instead of name in cloudron activation tests
2016-01-20 16:14:44 +01:00
Johannes Zellner
1c0d027bd3
Fix error message if displayName has wrong type
2016-01-20 16:14:21 +01:00
Johannes Zellner
5a8a023039
Fixup all the route tests with new password requirement
2016-01-20 16:06:51 +01:00
Johannes Zellner
196b059cfb
Immediately set icon fallback to avoid flickering
2016-01-20 16:01:39 +01:00
Johannes Zellner
2d930b9c3d
Explicitly set icon urls to null if we dont have them
2016-01-20 16:01:21 +01:00
Johannes Zellner
a5ba3faa49
Correctly report password errors
2016-01-20 15:41:29 +01:00
Johannes Zellner
02ba91f1bb
Move password generation into separate file and ensure we generate strong passwords
2016-01-20 15:33:11 +01:00
Johannes Zellner
bfa917e057
Add password strength unit tests
2016-01-20 14:50:06 +01:00
Johannes Zellner
909dd0725a
Fix copy and paste error
2016-01-20 14:49:45 +01:00
Johannes Zellner
74860f2d16
Fix tests for password strength change
2016-01-20 14:39:08 +01:00
Johannes Zellner
132ebb4e74
Require strong passwords
...
Fixes #568
2016-01-20 14:38:41 +01:00
Johannes Zellner
698158cd93
Change some of the mail added email text
2016-01-20 13:14:19 +01:00
Johannes Zellner
5bfc684f1b
Fix crash due to missing event
2016-01-20 13:10:16 +01:00
Johannes Zellner
c944c9b65b
Add changelog for 0.6.4
2016-01-20 12:43:40 +01:00
Johannes Zellner
d61698b894
Send user_added email instead of generic user event to admins
...
Fixes #569
2016-01-20 12:40:56 +01:00
Johannes Zellner
a4d32009ad
Make it clear why this if condition is there
2016-01-20 12:39:28 +01:00
Johannes Zellner
3007875e35
Add user_added.ejs email template
...
This allows us to also send an invitation link to admins
in case the user was not invited already.
2016-01-20 12:38:07 +01:00
Johannes Zellner
b4aad138fc
Fixup the update badge for mobile
2016-01-20 12:00:19 +01:00
Johannes Zellner
8df7eb2acb
Check if the versions for app updates match
...
Fixes #566
2016-01-20 11:56:46 +01:00
girish@cloudron.io
18cab6f861
initialize displayName from activation link
2016-01-20 00:16:48 -08:00
girish@cloudron.io
b2071c65d8
Fix typo
2016-01-20 00:05:06 -08:00
girish@cloudron.io
402dba096e
webadmin: display name for users
2016-01-19 23:58:52 -08:00
girish@cloudron.io
abf0c81de4
provide displayName in createAdmin route
2016-01-19 23:58:08 -08:00
girish@cloudron.io
613985a17c
Set default displayName as empty
2016-01-19 23:47:29 -08:00
girish@cloudron.io
bfc9801699
provide displayName in ldap response when available
2016-01-19 23:47:24 -08:00
girish@cloudron.io
ee705eb979
Add displayName to create user and activate routes
2016-01-19 23:34:49 -08:00
girish@cloudron.io
67b94c7fde
give message for development mode
2016-01-19 10:20:24 -08:00
Johannes Zellner
77e5d3f4bb
Retry checking for app start state in test
2016-01-19 16:45:58 +01:00
Johannes Zellner
30618b8644
add missing argument
2016-01-19 14:03:01 +01:00
Johannes Zellner
57a2613286
Remove leftover js-error target reference in gulpfile
2016-01-19 13:36:32 +01:00
Johannes Zellner
e15bd89ba2
Add route to list application backups
2016-01-19 13:35:28 +01:00
Johannes Zellner
d2ed816f44
Add apps.listBackups()
2016-01-19 13:35:18 +01:00
Johannes Zellner
e51234928b
Add FIXME for selfhost backup listing
2016-01-19 13:32:11 +01:00
Johannes Zellner
3aa668aea3
Fixup tests
2016-01-19 12:42:19 +01:00
Johannes Zellner
870edab78a
Set empty displayName for users
2016-01-19 12:40:50 +01:00
Johannes Zellner
ebc9d9185d
Use displayName in userdb
2016-01-19 12:39:54 +01:00
Johannes Zellner
093150d4e3
Add displayName to users table
2016-01-19 12:37:22 +01:00
Johannes Zellner
de80a6692d
Remove unused error.js the code is inline
2016-01-19 11:22:06 +01:00
Johannes Zellner
c28f564a47
Remove unused gulp target for error.js
2016-01-19 11:21:43 +01:00
Johannes Zellner
eb6a09c2bd
Try to fetch the cloudron status to offer a way to reload
2016-01-19 11:20:32 +01:00
Johannes Zellner
19f404e092
Changes for 0.6.3
2016-01-19 11:00:29 +01:00
girish@cloudron.io
55799ebb2d
cli tool demuxes stream now
2016-01-18 21:36:05 -08:00
girish@cloudron.io
fdf4d8fdcf
maybe stream is duplex
2016-01-18 13:39:18 -08:00
girish@cloudron.io
6dc11edafe
make exec route more debugging friedly
...
allow upto 30 minutes of idle connection
2016-01-18 12:49:06 -08:00
girish@cloudron.io
c82ca1c69d
disable http server timeout
2016-01-18 12:28:53 -08:00
girish@cloudron.io
7ef3d55cbf
add tty option to exec
2016-01-18 11:39:09 -08:00
Johannes Zellner
44e4f53827
Change user creation api to require the invite flag
2016-01-18 16:53:51 +01:00
Johannes Zellner
643e490cbb
Allow to specify if a new user gets invited immediately
2016-01-18 16:44:11 +01:00
Johannes Zellner
e61498c3b6
Ensure the avatar is also based on the apiOrigin
2016-01-18 16:35:25 +01:00
Johannes Zellner
bb6b61d810
Remove unused Client.prototype.getAppLogUrl()
2016-01-18 16:29:33 +01:00
Johannes Zellner
cff173c2e6
Ensure all api calls are absolute
2016-01-18 16:29:13 +01:00
Johannes Zellner
226501d103
Clear user remove form
2016-01-18 16:25:42 +01:00
Johannes Zellner
c5b8b0e3db
Split up userAdd and sendInvite mailer calls
2016-01-18 16:11:00 +01:00
Johannes Zellner
46878e4363
Add button to trigger the invite email
2016-01-18 15:45:54 +01:00
Johannes Zellner
f77682365e
Add client.sendInvite()
2016-01-18 15:45:44 +01:00
Johannes Zellner
d9850fa660
Add send invite route
2016-01-18 15:37:03 +01:00
Johannes Zellner
9258585746
add user.sendInvite() with tests
2016-01-18 15:16:18 +01:00
Johannes Zellner
e635aaaa58
Fix oauth2 tests
2016-01-18 14:31:25 +01:00
Johannes Zellner
d0d6725df5
Remove obsolete comments
2016-01-18 14:19:38 +01:00
Johannes Zellner
61f4fea9c3
Check for emails sent in users tests
2016-01-18 14:19:20 +01:00
Johannes Zellner
66d59c1d6c
Do not require the invitor in the invite mail
2016-01-18 14:18:57 +01:00
Johannes Zellner
f9725965e2
Add test hooks to check if mails are queued
2016-01-18 14:00:35 +01:00
Johannes Zellner
4629739a14
Fix ldap tests
2016-01-18 13:56:59 +01:00
Johannes Zellner
e9b3a1e99c
Fixup user tests
2016-01-18 13:50:54 +01:00
Johannes Zellner
8ac27b9dc7
Adjust api to set a flag if invitiation should be sent on user creation
2016-01-18 13:48:10 +01:00
Johannes Zellner
2edd434474
Support more notification types
2016-01-18 13:39:27 +01:00
Johannes Zellner
bebf480321
Use appdb.exists() instead of a apps.get()
2016-01-17 16:05:47 +01:00
Johannes Zellner
10c09d9def
Fix wrong conditional in appdb
2016-01-17 16:01:17 +01:00
Johannes Zellner
6ce6b96e5c
Fix linter issues
2016-01-17 15:59:11 +01:00
Johannes Zellner
16a9cae80e
Allow to specify the restore id
2016-01-17 15:50:20 +01:00
Johannes Zellner
e865e2ae6d
Employ hack to ensure chrome and firefox do not autocomplete
...
http://stackoverflow.com/questions/12374442/chrome-browser-ignoring-autocomplete-off
2016-01-16 17:38:18 +01:00
Johannes Zellner
06363a43f9
Offset the status bar
2016-01-16 16:48:47 +01:00
girish@cloudron.io
09a88e6a1c
Version 0.6.2 changes
2016-01-15 18:12:20 -08:00
girish@cloudron.io
28baef8929
Go back to using docker exec in cloudron exec
...
The main issue is that multiple cloudron exec sessions do not
share the same rootfs. Which makes it annoying to debug.
We also have some nginx timeout which drops you out of exec
now and then resulting in loss of all state.
2016-01-15 15:24:46 -08:00
girish@cloudron.io
9b061a4c7c
make the command work
2016-01-15 14:50:13 -08:00
girish@cloudron.io
0b542dfbdf
Pause app container in developmentMode
...
This allows us to share the network namespace with the app container
2016-01-15 14:34:15 -08:00
girish@cloudron.io
d3b039ebd8
support developmentMode flag
...
- disables readonly rootfs
- disables memory limit
2016-01-15 11:28:43 -08:00
Johannes Zellner
c22924eed7
Use user.js instead of userdb.js in mailer
2016-01-15 16:33:13 +01:00
Johannes Zellner
033ccb121f
Add tests for user.getAllAdmins()
2016-01-15 16:33:13 +01:00
Johannes Zellner
ecd91e8f2a
Add user.getAllAdmins()
2016-01-15 16:33:13 +01:00
girish@cloudron.io
1cdb954967
0.6.1 changes
2016-01-14 13:30:08 -08:00
girish@cloudron.io
f309f87f55
use no-reply for naked domain apps
2016-01-14 12:56:35 -08:00
girish@cloudron.io
989ab3094d
Set initial progress so that tools can wait on it
2016-01-14 11:34:49 -08:00
girish@cloudron.io
70ac18d139
add internal route to update the cloudron
...
need to way to trigger updates of cloudron using the caas tool
2016-01-14 11:13:02 -08:00
girish@cloudron.io
8f43236e2e
adjust update mail text
2016-01-14 11:02:05 -08:00
girish@cloudron.io
38416d46a6
insist on node 4.1.1
...
this is probably FUD but I think we get npm rebuild issues when
trying to rebuild packages of a newer node to an older node.
2016-01-14 10:55:53 -08:00
girish@cloudron.io
fb96b00922
just keep rebuilding
...
Jan 14 07:03:27 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:03:27 GMT installer:installer provision (stdout):
Jan 14 07:03:27 rudolf.cloudron.me server.js[541]: > bson@0.2.22 install
/tmp/box-src-a4tklr/node_modules/db-migrate/node_modules/mongodb/node_modules/bson
Jan 14 07:03:27 rudolf.cloudron.me server.js[541]: > (node-gyp rebuild
2> builderror.log) || (exit 0)
Jan 14 07:03:31 rudolf.cloudron.me ntpdate[1344]: step time server
91.189.89.199 offset 0.000661 sec
Jan 14 07:03:31 rudolf.cloudron.me systemd[1]: Time has been changed
Jan 14 07:03:44 rudolf.cloudron.me kernel: IPTables Packet Dropped:
IN=eth0 OUT= MAC=04:01:9a:dd:a9:01:84:b5:9c:fa:08:30:08:00
SRC=79.174.70.237 DST=178.62.202.80 LEN=40 TOS=0x00 PREC=0x00 TTL=248
ID=54321 PROTO=TCP SPT=49152 DPT=22 WINDOW=65535 RES=0x00 SYN URGP=0
Jan 14 07:04:02 rudolf.cloudron.me kernel: IPTables Packet Dropped:
IN=eth0 OUT= MAC=04:01:9a:dd:a9:01:84:b5:9c:fa:08:30:08:00
SRC=124.6.36.197 DST=178.62.202.80 LEN=638 TOS=0x00 PREC=0x00 TTL=59
ID=61522 DF PROTO=TCP SPT=443 DPT=58535 WINDOW=95 RES=0x00 ACK PSH URGP=0
Jan 14 07:04:08 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:04:08 GMT installer:installer provision (stdout):
Jan 14 07:04:08 rudolf.cloudron.me server.js[541]: > kerberos@0.0.11
install
/tmp/box-src-a4tklr/node_modules/db-migrate/node_modules/mongodb/node_modules/kerberos
Jan 14 07:04:08 rudolf.cloudron.me server.js[541]: > (node-gyp rebuild
2> builderror.log) || (exit 0)
Jan 14 07:04:47 rudolf.cloudron.me kernel: IPTables Packet Dropped:
IN=eth0 OUT= MAC=04:01:9a:dd:a9:01:84:b5:9c:fa:08:30:08:00
SRC=58.218.205.83 DST=178.62.202.80 LEN=40 TOS=0x00 PREC=0x00 TTL=112
ID=256 PROTO=TCP SPT=49127 DPT=5555 WINDOW=512 RES=0x00 SYN URGP=0
Jan 14 07:05:18 rudolf.cloudron.me systemd-timesyncd[448]: Timed out
waiting for reply from 91.207.136.55:123 (2.ubuntu.pool.ntp.org).
Jan 14 07:05:28 rudolf.cloudron.me systemd-timesyncd[448]: Timed out
waiting for reply from 194.190.168.1:123 (2.ubuntu.pool.ntp.org).
Jan 14 07:05:49 rudolf.cloudron.me kernel: IPTables Packet Dropped:
IN=eth0 OUT= MAC=04:01:9a:dd:a9:01:84:b5:9c:fa:08:30:08:00
SRC=218.77.79.38 DST=178.62.202.80 LEN=40 TOS=0x00 PREC=0x00 TTL=240
ID=54321 PROTO=TCP SPT=44094 DPT=3306 WINDOW=65535 RES=0x00 SYN URGP=0
Jan 14 07:06:02 rudolf.cloudron.me kernel: IPTables Packet Dropped:
IN=eth0 OUT= MAC=04:01:9a:dd:a9:01:84:b5:9c:fa:08:30:08:00
SRC=124.6.36.197 DST=178.62.202.80 LEN=638 TOS=0x00 PREC=0x00 TTL=59
ID=61523 DF PROTO=TCP SPT=443 DPT=58535 WINDOW=95 RES=0x00 ACK PSH URGP=0
Jan 14 07:06:21 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:06:21 GMT installer:installer provision (stdout):
Jan 14 07:06:21 rudolf.cloudron.me server.js[541]: > sqlite3@3.1.1
install /tmp/box-src-a4tklr/node_modules/db-migrate/node_modules/sqlite3
Jan 14 07:06:21 rudolf.cloudron.me server.js[541]: > node-pre-gyp
install --fallback-to-build
Jan 14 07:06:21 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:06:21 GMT installer:installer provision (stdout): [sqlite3] Success:
"/tmp/box-src-a4tklr/node_modules/db-migrate/node_modules/sqlite3/lib/binding/node-v46-linux-x64/node_sqlite3.node"
already installed
Jan 14 07:06:21 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:06:21 GMT installer:installer provision (stdout): Pass
--update-binary to reinstall or --build-from-source to recompile
Jan 14 07:06:23 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:06:23 GMT installer:installer provision (stdout):
Jan 14 07:06:23 rudolf.cloudron.me server.js[541]: >
dtrace-provider@0.2.8 install
/tmp/box-src-a4tklr/node_modules/ldapjs/node_modules/dtrace-provider
Jan 14 07:06:23 rudolf.cloudron.me server.js[541]: > node-gyp rebuild
Jan 14 07:07:47 rudolf.cloudron.me systemd-timesyncd[448]: Timed out
waiting for reply from 91.206.16.3:123 (2.ubuntu.pool.ntp.org).
Jan 14 07:07:57 rudolf.cloudron.me systemd-timesyncd[448]: Timed out
waiting for reply from 46.254.216.12:123 (2.ubuntu.pool.ntp.org).
Jan 14 07:08:02 rudolf.cloudron.me kernel: IPTables Packet Dropped:
IN=eth0 OUT= MAC=04:01:9a:dd:a9:01:84:b5:9c:fa:08:30:08:00
SRC=124.6.36.197 DST=178.62.202.80 LEN=638 TOS=0x00 PREC=0x00 TTL=59
ID=61524 DF PROTO=TCP SPT=443 DPT=58535 WINDOW=95 RES=0x00 ACK PSH URGP=0
Jan 14 07:08:08 rudolf.cloudron.me systemd-timesyncd[448]: Timed out
waiting for reply from 85.255.214.66:123 (3.ubuntu.pool.ntp.org).
Jan 14 07:08:18 rudolf.cloudron.me systemd-timesyncd[448]: Timed out
waiting for reply from 83.98.201.134:123 (3.ubuntu.pool.ntp.org).
Jan 14 07:08:28 rudolf.cloudron.me systemd-timesyncd[448]: Timed out
waiting for reply from 194.171.167.130:123 (3.ubuntu.pool.ntp.org).
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): gyp
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): WARN
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): install
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): got an error,
rolling back install
<...>
07:08:31 GMT installer:installer provision (stderr): Error: connect
ETIMEDOUT 104.20.23.46:443
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): gyp
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): stack
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): at
Object.exports._errnoException (util.js:837:11)
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): gyp
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): stack
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): at
exports._exceptionWithHostPort (util.js:860:20)
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): gyp
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): stack
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): at
TCPConnectWrap.afterConnect [as oncomplete] (net.js:1060:14)
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): gyp
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): System Linux
3.19.0-31-generic
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: gyp ERR! command
"/usr/local/node-4.1.1/bin/node"
"/usr/local/node-4.1.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js"
"rebuild"
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: gyp ERR! cwd
/tmp/box-src-a4tklr/node_modules/ldapjs/node_modules/dtrace-provider
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: gyp ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): node -v
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): v4.1.1
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): gyp
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): node-gyp -v
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): v3.0.3
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: gyp ERR! not ok
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): npm
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): Linux
3.19.0-31-generic
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): npm
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): argv
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
"/usr/local/node-4.1.1/bin/node" "/usr/bin/npm" "rebuild"
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): npm ERR! node v4.1.1
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! npm v2.14.4
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! code ELIFECYCLE
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR!
dtrace-provider@0.2.8 install: `node-gyp rebuild`
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! Exit status 1
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! Failed at
the dtrace-provider@0.2.8 install script 'node-gyp rebuild'.
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): This is most
likely a problem with the dtrace-provider package,
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! not with npm
itself.
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! Tell the
author that this fails on your system:
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! node-gyp
rebuild
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! You can get
their info via:
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! npm
owner ls dtrace-provider
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR! There is
likely additional logging output above.
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): npm
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr):
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): ERR!
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision (stderr): Please include the
following file with any support request:
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: npm ERR!
/tmp/box-src-a4tklr/npm-debug.log
Jan 14 07:08:31 rudolf.cloudron.me sudo[1284]: pam_unix(sudo:session):
session closed for user root
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: Thu, 14 Jan 2016
07:08:31 GMT installer:installer provision : child process exited. code:
1 signal: 0
Jan 14 07:08:31 rudolf.cloudron.me server.js[541]: [Error: Exited with
code 1]
2016-01-14 10:51:21 -08:00
Johannes Zellner
0601ea2f39
Show actionable notification in case we miss aws credentials
...
Fixes #553
2016-01-14 16:01:10 +01:00
Johannes Zellner
a92d4f2af7
add some comments on how to use notifications
2016-01-14 15:56:23 +01:00
Johannes Zellner
658305c969
Tweak the notification appearance
2016-01-14 15:54:32 +01:00
Johannes Zellner
8aed2be19b
Support action scopes
2016-01-14 15:54:14 +01:00
Johannes Zellner
263f6e49d8
Use custom notification template
2016-01-14 15:53:47 +01:00
Johannes Zellner
d822e38016
Ensure templates are available
2016-01-14 15:53:32 +01:00
Johannes Zellner
6cf78f19bb
Add custom notification template to make actionable
2016-01-14 15:53:16 +01:00
Johannes Zellner
4a3319406c
Add Client api to show notifications
2016-01-14 15:08:27 +01:00
Johannes Zellner
cb4418b973
Set default values for the notifications
2016-01-14 15:07:41 +01:00
Johannes Zellner
5a797124b3
Update the angular notification library
2016-01-14 15:07:10 +01:00
Johannes Zellner
63430fbce6
Adjust update email text to let the user know about auto updates
...
So far the emails make no sense in case the user only clicks the update
link after the Cloudron has already auto updated. We might want to
adjust the text, once the user can disable auto updates, or set the
preferred update time.
2016-01-14 13:55:02 +01:00
girish@cloudron.io
bc2085139e
ensure no trailing slash in redis password
...
Fixes #539
2016-01-13 19:42:28 -08:00
girish@cloudron.io
f98c710f5b
use password generator module
2016-01-13 19:02:15 -08:00
girish@cloudron.io
eb7101deff
setupToken is property of wizard
...
fixes #559
2016-01-13 18:41:08 -08:00
girish@cloudron.io
826f50da7e
expose wizard in SetupController
2016-01-13 18:04:07 -08:00
girish@cloudron.io
4e94c8ea56
updateContact gets 202 and not 200
2016-01-13 16:46:01 -08:00
girish@cloudron.io
3120eca721
status api should set provider
2016-01-13 16:09:36 -08:00
girish@cloudron.io
26c9bcbc28
fix this and that
2016-01-13 15:00:33 -08:00
girish@cloudron.io
7a2e73a5d6
acme: update account with owner email
...
fixes #544
2016-01-13 14:21:59 -08:00
girish@cloudron.io
cd35ab5932
acme: update contact information before getting a cert
...
part of #544
there were two approaches considered:
1. pipe through owner email from appstore. this requires to save this
value in settingsdb and we need to remember this in case user changes
the email. another issue is that selfhost installer tooling needs to
require this new value.
2. simply update owner email each time. this is the chosen approach.
2016-01-13 14:06:31 -08:00
girish@cloudron.io
efaacdb534
Add getOwner
2016-01-13 12:37:56 -08:00
girish@cloudron.io
5eb3c208f1
allow email to be configured
2016-01-13 12:15:27 -08:00
Johannes Zellner
8347b62c1b
Mention lets encrypt in the ssl settings
2016-01-13 16:24:15 +01:00
Johannes Zellner
48c3c7b4dc
Also hide the webadmin domain cert ui
2016-01-13 16:17:46 +01:00
Johannes Zellner
faefe078af
Make links in app description go to a new page
2016-01-13 16:16:40 +01:00
Johannes Zellner
66eb0481b5
Hide app per app certificate upload fields
...
Fixes #555
2016-01-13 16:00:55 +01:00
Johannes Zellner
0a0fc130d4
Fix linter errors
2016-01-13 16:00:55 +01:00
Johannes Zellner
44afd7b657
No need to check for version equality for the update badge
2016-01-13 14:50:05 +01:00
Johannes Zellner
165b572a5f
Fixup the app grid icon action layout
2016-01-13 14:49:00 +01:00
Johannes Zellner
1a30e622cc
Only register app updates for apps where the available version is actually bigger
...
Fixes #533
2016-01-13 14:48:52 +01:00
Johannes Zellner
aec3238e42
Add changlog for 0.5.0
2016-01-13 11:51:21 +01:00
Johannes Zellner
249868dba7
Add CHANGES file
2016-01-13 11:51:13 +01:00
Johannes Zellner
f82e714b3c
Remove executable flag for scripts not intended to be called directly
2016-01-13 10:58:20 +01:00
Johannes Zellner
baa7eae77c
Move images script to appstore since it is specific to caas
2016-01-13 10:45:23 +01:00
Johannes Zellner
c69542a34d
cleanup outdated README.md
2016-01-13 10:42:45 +01:00
Johannes Zellner
9d45892603
Move baseimage relevant scripts to baseimage/
2016-01-13 10:30:01 +01:00
Johannes Zellner
e65f247b99
Fix path to initializeBaseUbuntuImage.sh in installer.sh
2016-01-12 16:53:36 +01:00
Johannes Zellner
600f061e47
The box tarball is now public, no need for a signed url
2016-01-12 16:50:34 +01:00
Johannes Zellner
8ac0e9e751
Provide sourceTarballUrl with update info
2016-01-12 16:50:14 +01:00
Johannes Zellner
772787fc22
Do not ignore scripts/ for export
2016-01-12 16:15:21 +01:00
Johannes Zellner
985b33b65b
Add missing dev modules for images tool
2016-01-12 12:55:10 +01:00
Johannes Zellner
ef7c5c2d2b
Remove vultr caas support
2016-01-12 12:55:10 +01:00
Johannes Zellner
0d49aafb54
Move installer/images scripts to scripts/
2016-01-12 12:55:10 +01:00
Johannes Zellner
98aae5ddc6
Correctly copy installer files
2016-01-11 15:37:40 +01:00
Johannes Zellner
070e8606fa
Use json from box/
2016-01-11 15:20:29 +01:00
Johannes Zellner
511b2848c3
Fixup the paths in the createImage script
2016-01-11 15:14:07 +01:00
Johannes Zellner
7dd96d9a75
Fixup create box tarball script paths
2016-01-11 14:53:18 +01:00
Johannes Zellner
7d80f69ee8
Use the unified tarball instead of separate installer
2016-01-11 14:49:49 +01:00
Johannes Zellner
85491cb7b5
Merge branch 'selfhost' of ../installer into selfhost
2016-01-11 14:45:33 +01:00
Johannes Zellner
3c0b88a1ee
Move to subfolder installer/
2016-01-11 14:42:20 +01:00
Johannes Zellner
33c072f544
Support box and installer in one tarball
2016-01-11 14:25:04 +01:00
Johannes Zellner
a8d08bca3f
Merge branch 'master' of ssh://gitlab.smartserver.io:6000/yellowtent/cloudron-installer
2016-01-11 12:53:52 +01:00
Johannes Zellner
d7ddc56ab3
Not applicable for ubuntu 15.10
2016-01-11 11:15:04 +01:00
Johannes Zellner
b562cd5c73
Fix typo when specifying the provisionEnv environment var
2016-01-08 13:15:07 +01:00
Johannes Zellner
2549a41eb3
Add a valid hostname entry in /etc/hosts if not found
...
Using 127.0.1.1 as per http://www.debian.org/doc/manuals/debian-reference/ch05.en.html#_the_hostname_resolution
2016-01-06 16:52:02 +01:00
Johannes Zellner
464f0fc231
add some unit tests for ensureVersion
2016-01-06 16:02:42 +01:00
Johannes Zellner
5914fd9fb7
Return the whole object, not just the string
2016-01-06 14:52:21 +01:00
Johannes Zellner
2e03217551
Make sysinfo provider selection explicit
2016-01-06 14:34:23 +01:00
Johannes Zellner
e0dc974f87
Add provider argument
2016-01-06 10:52:35 +01:00
Girish Ramakrishnan
fdf1ed829d
Revert "use 15.10 as base image"
...
This reverts commit 50807f3046fdf715cb3bf2afc08436f64995f36a.
15.10 requires more work
2016-01-05 20:32:09 -08:00
Girish Ramakrishnan
ba90490ad9
Simply remove the old sudoers file that we installed
...
This is alternate fix to 743b8e757b
2016-01-05 20:24:05 -08:00
Girish Ramakrishnan
910be97f54
return calling callback
2016-01-05 16:16:25 -08:00
Girish Ramakrishnan
e162582045
Add collectd hack
2016-01-05 15:38:56 -08:00
Girish Ramakrishnan
cfd197d26c
region is not required
2016-01-05 14:06:16 -08:00
Girish Ramakrishnan
aa0486bc2b
use 15.10 as base image
2016-01-05 13:27:18 -08:00
Johannes Zellner
97a1fc62ae
This rule is obsolete
...
It should protect the metadata from apps, but that is already
covered with the FORWARD dropping rule below
2016-01-05 21:13:45 +01:00
Johannes Zellner
fd9dcd065a
Bring back the sleep 10 to wait for docker's iptable rules
...
See comment in code for further details
2016-01-05 21:11:43 +01:00
Johannes Zellner
59997560eb
Do not remove all files from /etc/sudoers.d/
...
On DO with caas, there are no other files initially, but
on the ec2 ubuntu images, the files have set the rules for the
ubuntu user to be able to sudo without password, which we want to
keep
2016-01-05 17:06:01 +01:00
Johannes Zellner
026e71cc6e
Default provider is caas
2016-01-05 15:58:16 +01:00
Johannes Zellner
98ecc24425
Allow metadata access for selfhosters for now
2016-01-05 15:57:50 +01:00
Johannes Zellner
3886006343
Implement ec2 sysinfo backend
2016-01-05 14:33:33 +01:00
Johannes Zellner
6d539c9203
Fix sysinfo api usage
2016-01-05 13:18:56 +01:00
Johannes Zellner
5f778e61dd
Use new getIP() api in certificates.js
2016-01-05 12:23:07 +01:00
Johannes Zellner
9860489f05
Use new getIP() api in cloudron.js
2016-01-05 12:16:48 +01:00
Johannes Zellner
21ca8ac883
Use new getIP() api in apptask
2016-01-05 12:16:39 +01:00
Johannes Zellner
ec93becb17
Add missing asserts
2016-01-05 12:14:39 +01:00
Johannes Zellner
0319445888
Make sysinfo based on provider
2016-01-05 12:10:25 +01:00
Johannes Zellner
7cba9f50c8
Docker startup is fixed with new service file, no need to wait
2016-01-05 10:07:58 +01:00
Johannes Zellner
9483c3afbc
Also support /dev/xvda1 with collectd, needed for ec2
2016-01-04 17:26:02 +01:00
Johannes Zellner
e518976534
Also support /dev/xvda for box-setup.sh which is used in ec2
2016-01-04 15:57:52 +01:00
Johannes Zellner
3626cc2394
Skip some code during tests for now
2016-01-02 16:58:27 +01:00
Johannes Zellner
3a61fc7181
We want all strings in the array as separate strings
2016-01-02 16:52:25 +01:00
Johannes Zellner
4a95fa5e87
Cleanup the installer script
2016-01-02 16:37:28 +01:00
Johannes Zellner
8e3d1422f3
Fix typo, linter could do some work ;-)
2016-01-02 15:39:48 +01:00
Johannes Zellner
640a0b2627
Try to get the latest box release if no sourceTarballUrl is specified in the provisioning data
2016-01-02 15:30:01 +01:00
Johannes Zellner
30e0cb6515
Upload box tarballs with public acl
2016-01-02 15:29:20 +01:00
Johannes Zellner
e3253aacdb
Add semver
2016-01-02 15:28:49 +01:00
Johannes Zellner
32f49d2122
Use 10GB for system, since it now includes docker images
2016-01-01 16:29:16 +01:00
Johannes Zellner
b4bef44135
Do not put docker images into te btrfs volume
2016-01-01 16:10:16 +01:00
Johannes Zellner
ce38742caf
Fix cloudron tests
2015-12-31 11:55:01 +01:00
Johannes Zellner
a7d39cc8d4
Merge branch 'selfhost'
2015-12-31 11:41:46 +01:00
Johannes Zellner
cb7eb660b9
Do not fail to list apps if we are in developer mode and do not have an appstore token
2015-12-31 10:42:02 +01:00
Johannes Zellner
bad28c60ae
Do not rely on the VPS name but just get the memory from the system
2015-12-31 10:30:42 +01:00
Johannes Zellner
ab4c04085c
Use image init script from within the installer tar ball
2015-12-31 10:01:08 +01:00
Johannes Zellner
761002f39d
Include the image scripts in the installer tar
2015-12-31 09:37:55 +01:00
Johannes Zellner
996f9c7f5d
Set letsencrypt as tls config
2015-12-31 09:31:50 +01:00
Johannes Zellner
a6eca44a0d
Do not attempt to purchase an app if we dont have an appstore token
2015-12-31 09:15:27 +01:00
Girish Ramakrishnan
1820751801
show all fields
2015-12-30 19:48:10 -08:00
Johannes Zellner
030faaa5d1
Remove unused information within backup listing
2015-12-30 20:31:00 +01:00
Johannes Zellner
95e1947352
Merge branch 'selfhost'
2015-12-30 18:54:33 +01:00
Johannes Zellner
7deb11a0a6
Support s3 and route53 configs
2015-12-30 18:45:19 +01:00
Johannes Zellner
41c597801f
Sort backups by creationTime
2015-12-30 18:31:44 +01:00
Johannes Zellner
128a138e74
Remove the backup prefix from the key
2015-12-30 18:30:41 +01:00
Johannes Zellner
ca74b5740a
Partly implement backup listing for s3 backend
2015-12-30 18:21:38 +01:00
Johannes Zellner
9afcbe1565
Fix the email require detection in setup
2015-12-30 14:10:20 +01:00
Johannes Zellner
9e531a05e1
Do not ask for aws credentials for selfhosting
2015-12-30 13:28:14 +01:00
Johannes Zellner
7c3562cea2
Ensure focus and form validation is correct in the setup wizard
2015-12-29 22:10:10 +01:00
Johannes Zellner
1edddf79d2
token is not yet required for provisioning anymore
2015-12-29 19:47:13 +01:00
Johannes Zellner
114f03e434
'null' does not survive the shell script hopping well
2015-12-29 18:51:49 +01:00
Johannes Zellner
3ee1487985
We might support more than just caas and selfhosted
2015-12-29 17:57:11 +01:00
Johannes Zellner
a9eda2176e
Only send heartbeats and fetch cloudron details if we have a token
2015-12-29 17:43:54 +01:00
Johannes Zellner
bb90bafb62
Fix crash when the appstore server does not respond correctly on setup
2015-12-29 16:07:04 +01:00
Johannes Zellner
cea8783fec
Skip calling back home on activation in non caas case
2015-12-29 15:56:37 +01:00
Johannes Zellner
789d1fef84
Remove commented dom elements
2015-12-29 15:46:13 +01:00
Johannes Zellner
d83939b165
Fix setup wizard dependency on setupToken
2015-12-29 15:27:46 +01:00
Johannes Zellner
3a4ec5c86a
The var is named
2015-12-29 12:25:22 +01:00
Johannes Zellner
013c14530b
Provide provider in cloudron.conf
2015-12-29 11:30:03 +01:00
Johannes Zellner
ebf1cfc113
Read provider field from cloudron.conf
2015-12-29 11:29:08 +01:00
Johannes Zellner
ec4d04c338
Skip setupToken auth for non caas cloudrons
2015-12-29 11:24:45 +01:00
Johannes Zellner
584b7790e4
Get the cloudron vps provider from config
2015-12-29 11:24:34 +01:00
Johannes Zellner
ef25f66107
Ask for the user's email if not provided
2015-12-29 11:17:08 +01:00
Johannes Zellner
3060b34bdd
customDomain during setup is a special caas case
2015-12-29 11:04:42 +01:00
Johannes Zellner
3fb5c682f8
Remove Client.isServerFirstTime()
2015-12-29 11:00:32 +01:00
Johannes Zellner
bb5dfa13ee
Add Client.getStatus()
2015-12-29 10:58:26 +01:00
Johannes Zellner
9e391941c5
Redirect the browser to /setup.html in non caas mode
2015-12-29 10:54:00 +01:00
Johannes Zellner
8b1d3e5fba
Send provider field with cloudron config
2015-12-29 10:53:22 +01:00
Girish Ramakrishnan
07e322df96
default targetBoxVersion to the maximum possible version ever
...
Apps that do not provide a targetBoxVersion are assumed to be
capable of running everywhere.
2015-12-27 16:43:50 -08:00
Girish Ramakrishnan
a8959cbf26
fix path to cpu metrics
2015-12-24 12:46:42 -08:00
Johannes Zellner
d793e5bae5
Remove obsolete generate_certificate.sh
2015-12-24 10:01:00 +01:00
Johannes Zellner
29954fa9e8
Generate certs inline
2015-12-24 10:00:45 +01:00
Girish Ramakrishnan
0384fa9a51
fix debugs
2015-12-23 15:22:36 -08:00
Girish Ramakrishnan
75b19d3883
scheduler: remove scheduler.json
...
don't bother saving state across restarts. needlessly complicated.
2015-12-23 14:27:26 -08:00
Girish Ramakrishnan
c15f84da08
scheduler: do not bother tracking containerIds
2015-12-23 13:29:00 -08:00
Girish Ramakrishnan
8539d4caf1
scheduler: delete containers by name
...
scheduler.json gets nuked during updates. When the box code restarts,
the scheduler is unable to remove old container because the state file
scheduler.json is now gone. It proceeds to create new container but that
does not work because of name conflict.
Fixes #531
2015-12-23 13:23:49 -08:00
Johannes Zellner
3eb1fe5e4b
Ensure we reload the systemd daemon to pickup the new service files
2015-12-23 13:58:35 +01:00
Johannes Zellner
16b88b697e
Ensure docker is running correctly
2015-12-23 13:54:49 +01:00
Johannes Zellner
08ba6ac831
Docker does not have a -d option anymore
...
This was depricated in 1.8 and is now gone
https://github.com/docker/docker/blob/master/CHANGELOG.md#cli
2015-12-23 13:32:37 +01:00
Johannes Zellner
49710618ff
Docker does not have a -d option anymore
...
This was depricated in 1.8 and is now gone
https://github.com/docker/docker/blob/master/CHANGELOG.md#cli
2015-12-23 13:28:15 +01:00
Johannes Zellner
b4ba001617
Use multipart upload for s3 by reducing the chunk size
...
This avoids file upload issues for larger files
2015-12-23 13:27:54 +01:00
Johannes Zellner
87e0876cce
Only pull infra images if we have an INFRA_VERSION file
2015-12-23 13:27:33 +01:00
Girish Ramakrishnan
87f5e3f102
workaround journalctl logging bug
2015-12-22 13:05:00 -08:00
Johannes Zellner
e921d0db6e
do not rely on INFRA_VERSION to be present
2015-12-22 06:25:13 +01:00
Girish Ramakrishnan
b7a85580fa
why is the linter not finding this again?
2015-12-21 16:14:30 -08:00
Johannes Zellner
2e93bc2e1d
Generate self signed certs for now
2015-12-21 20:44:37 +01:00
Johannes Zellner
5ac15c8c49
Remove trailing slash
2015-12-21 15:06:44 +01:00
Johannes Zellner
98c05f3614
Remove comma
2015-12-21 15:06:44 +01:00
Johannes Zellner
05af56defc
Fix typo
2015-12-20 14:58:05 +01:00
Johannes Zellner
ce48a2fc12
Some small fixes for selfhost
2015-12-20 12:01:18 +01:00
Johannes Zellner
01e910af79
Prepare provisioning data for installer
2015-12-20 11:12:59 +01:00
Johannes Zellner
3e2ce9e94c
make cloudron.conf file path a 'const'
2015-12-20 10:25:12 +01:00
Johannes Zellner
9db602b274
Decide if we run in caas or selfhost mode and fetch user data accordingly
2015-12-20 10:23:25 +01:00
Johannes Zellner
a2d0ac7ee3
Run installer with selfhost flag
2015-12-20 10:22:55 +01:00
Girish Ramakrishnan
24cbd1a345
if i wrote a linter, these are the bugs it would catch
2015-12-19 13:48:14 -08:00
Girish Ramakrishnan
8b3e6742d5
better debugs
2015-12-19 13:47:48 -08:00
Johannes Zellner
62bd3f6e83
Add installer.sh
2015-12-19 21:56:33 +01:00
Johannes Zellner
20ac2ff6e7
Do not move ssh port in selfhosting case
2015-12-19 21:56:00 +01:00
Johannes Zellner
aa7c9e06a4
Initial commit
2015-12-19 18:47:24 +01:00
Johannes Zellner
0c2fb7c0d9
Use multipart upload for s3 by reducing the chunk size
...
This avoids file upload issues for larger files
2015-12-19 17:50:54 +01:00
Girish Ramakrishnan
7ec2b1da8c
fix function name in debug
2015-12-17 20:30:30 -08:00
Girish Ramakrishnan
190c2b2756
firefox is unhappy with incorrect chain
2015-12-17 19:42:49 -08:00
Girish Ramakrishnan
7c975384cd
better error messages
2015-12-17 19:35:52 -08:00
Girish Ramakrishnan
fe042891a3
Add acme.getCertificate
2015-12-17 13:31:28 -08:00
Girish Ramakrishnan
a9b594373d
do not pass accountKeyPem everywhere
2015-12-17 13:27:10 -08:00
Girish Ramakrishnan
5edc3cde2a
set prod option based on provider
2015-12-17 13:17:46 -08:00
Girish Ramakrishnan
a636731764
allow configuring prod/staging of LE url
2015-12-17 13:12:54 -08:00
Girish Ramakrishnan
b4433af9b5
remove unused require
2015-12-17 12:55:47 -08:00
Girish Ramakrishnan
72cc318607
install docker 1.9.1
...
We hit this error:
https://github.com/docker/docker/issues/18283
https://github.com/docker/docker/issues/17083
2015-12-15 17:17:28 -08:00
Girish Ramakrishnan
5ae45381e2
fix metrics path
...
See 03da5cc6b382f6f7aad69395d9f8a9d29d18ec26 in installer
We now use the cgroupfs driver instead of systemd cgroup driver
2015-12-15 15:54:19 -08:00
Girish Ramakrishnan
b533d325a4
Creating containers fails sporadically
...
HTTP code is 500 which indicates error: server error - Cannot start container redis-9d0ae0eb-a08f-4d0d-a980-ac6fa15d1a3d: [8] System error: write /sys/fs/cgroup/memory/system.slice/docker-fa6d6f3fce88f15844710e6ce4a8ac4d3a42e329437501416991b4c55ea3d078.scope/memory.memsw.limit_in_bytes: invalid argument
https://github.com/docker/docker/issues/16256
https://github.com/docker/docker/pull/17704
https://github.com/docker/docker/issues/17653
2015-12-15 15:02:45 -08:00
Girish Ramakrishnan
9dad7ff563
Fix sed
2015-12-15 14:43:01 -08:00
Girish Ramakrishnan
1ae2e07883
leave note on 429 error code
2015-12-15 14:25:23 -08:00
Girish Ramakrishnan
aa34850d4e
fix typo
2015-12-15 12:52:41 -08:00
Girish Ramakrishnan
9f524da642
use admin@cloudron.io for email
...
registrations are failing because the LE server is doing a MX check.
we don't have a proper email to provide here since the box is not
activated yet. we should "update" the email at some point with
the owner information.
2015-12-15 10:39:03 -08:00
Girish Ramakrishnan
8b707e23ca
update shrinkwrap
2015-12-15 10:04:45 -08:00
Girish Ramakrishnan
a4ea693c3c
update superagent
...
the latest superchanged changed the meaning of 'error'. Previously,
error implied a network error. With the latest superagent, error means
a REST api error i.e 4xx, 5xx are flagged as errors.
error && !error.response means network error
2015-12-15 09:53:37 -08:00
Girish Ramakrishnan
aca443a909
update redis
2015-12-15 08:36:47 -08:00
Girish Ramakrishnan
2ae5223da9
update password-generator, validator and nock
2015-12-15 08:34:13 -08:00
Girish Ramakrishnan
b5b67f2e6a
define CA_ORIGIN
2015-12-15 00:49:00 -08:00
Girish Ramakrishnan
fe723f5a53
remove trailing slash in url
2015-12-15 00:42:18 -08:00
Girish Ramakrishnan
c55e1ff6b7
debug output the error
2015-12-15 00:23:57 -08:00
Girish Ramakrishnan
4bd88e1220
create acme data dir
2015-12-15 00:21:29 -08:00
Girish Ramakrishnan
f46af93528
do not installAdminCertificate for upgrades
2015-12-14 23:37:52 -08:00
Girish Ramakrishnan
8ead0e662a
detect apptask crashes
2015-12-14 19:11:26 -08:00
Girish Ramakrishnan
365ee01f96
show error dialog
2015-12-14 18:56:15 -08:00
Girish Ramakrishnan
fca6de3997
add function to show the error dialog
2015-12-14 17:57:58 -08:00
Girish Ramakrishnan
dceb265742
add error dialog
2015-12-14 17:52:56 -08:00
Girish Ramakrishnan
409096cbff
Use production LE
2015-12-14 17:31:41 -08:00
Girish Ramakrishnan
e5a40faf82
simply use fallback certs if LE fails
...
currently, it fails if we cannot get a cert.
This means that we need to provide some option to simply use fallback
cert. This requires UI changes that I want to avoid :-)
2015-12-14 17:13:54 -08:00
Girish Ramakrishnan
859c78c785
fix fallback cert message
2015-12-14 16:42:34 -08:00
Girish Ramakrishnan
89bff16053
fix crash
2015-12-14 14:08:45 -08:00
Girish Ramakrishnan
a89476c538
fix renewal check
2015-12-14 13:52:54 -08:00
Girish Ramakrishnan
f51b61e407
do not dump the csr
2015-12-14 13:41:30 -08:00
Girish Ramakrishnan
177103bccd
update safetydance for readdirSync
2015-12-14 13:10:04 -08:00
Girish Ramakrishnan
f31d63aabd
implement cert auto-renewal
2015-12-14 12:40:39 -08:00
Girish Ramakrishnan
fd20246e8b
ensureCertificate: check if cert needs renewal
2015-12-14 12:38:19 -08:00
Girish Ramakrishnan
0c1ea39a02
add getApi
2015-12-14 12:28:00 -08:00
Girish Ramakrishnan
a409dd026d
use url file to download cert if present
2015-12-14 12:22:57 -08:00
Girish Ramakrishnan
4731f8e5a7
move key creation into the acme flow
2015-12-14 12:21:41 -08:00
Girish Ramakrishnan
7e05259b0e
save url for renewal in .url files
2015-12-14 12:17:57 -08:00
Girish Ramakrishnan
14ab85dc4f
do not pass outdir
2015-12-14 11:42:59 -08:00
Girish Ramakrishnan
0651bfc4b8
provide cert and key file in callback
2015-12-14 09:29:48 -08:00
Girish Ramakrishnan
21b94b2655
fix debug message
2015-12-14 08:52:43 -08:00
Girish Ramakrishnan
4e40c2341a
code now uses backend
2015-12-14 08:50:57 -08:00
Girish Ramakrishnan
d9a83eacd2
explicitly prune out second argument
2015-12-13 20:35:23 -08:00
Girish Ramakrishnan
7b40674c0d
add a backend for caas
2015-12-13 19:09:57 -08:00
Girish Ramakrishnan
936c1989f1
refactor code a bit for renewal
2015-12-13 12:26:31 -08:00
Girish Ramakrishnan
cfe336c37c
fix path to acme key
2015-12-13 11:54:17 -08:00
Girish Ramakrishnan
d8a1e4aab0
more debug messages
2015-12-12 20:39:24 -08:00
Girish Ramakrishnan
be4d2afff3
fix path to cert
2015-12-12 20:30:50 -08:00
Girish Ramakrishnan
c2a4ef5f93
maybe this gets the certificate
2015-12-12 20:30:50 -08:00
Girish Ramakrishnan
b389d30728
max-time is per retry. it cannot take more than 3 mins to download the tarball
2015-12-12 17:36:34 -08:00
Girish Ramakrishnan
22634b4ceb
tlsConfig is part of the database
2015-12-12 15:43:42 -08:00
Girish Ramakrishnan
abc4975b3d
add tls configuration to database
2015-12-12 15:40:33 -08:00
Girish Ramakrishnan
36d81ff8d1
do not write tls config in this version
2015-12-12 14:21:50 -08:00
Girish Ramakrishnan
fe94190c2f
do not save certs in database
2015-12-12 13:29:10 -08:00
Girish Ramakrishnan
f32027e15b
Try alternative configuration for systemd restart rate limit
2015-12-12 13:15:41 -08:00
Girish Ramakrishnan
4b6a92955b
configure to get only 1 email every 10 minutes
2015-12-12 11:47:32 -08:00
Girish Ramakrishnan
35a2da744c
fix typo
2015-12-11 23:29:07 -08:00
Girish Ramakrishnan
9d91340223
add settings.setTlsConfig
2015-12-11 22:39:13 -08:00
Girish Ramakrishnan
e0a56f75c3
typo
2015-12-11 22:27:00 -08:00
Girish Ramakrishnan
4cfd30f9e8
use tlsConfig to determine acme or not
2015-12-11 22:25:57 -08:00
Girish Ramakrishnan
3fbcbf0e5d
store tls config in database
2015-12-11 22:14:56 -08:00
Girish Ramakrishnan
8b7833e8b1
fix debug namespacing
2015-12-11 21:49:24 -08:00
Girish Ramakrishnan
66441f133d
fix typo
2015-12-11 20:09:16 -08:00
Girish Ramakrishnan
8a12d6019a
assert assert everywhere, hope none fires!
2015-12-11 14:50:30 -08:00
Girish Ramakrishnan
39c626dc75
more moving of nginx code
2015-12-11 14:48:39 -08:00
Girish Ramakrishnan
a7480c3f29
implement installation of admin certificate via acme
2015-12-11 14:37:55 -08:00
Girish Ramakrishnan
8af682acf1
add attempt
2015-12-11 14:20:37 -08:00
Girish Ramakrishnan
95eba1db81
Add certificates.ensureCertificate which gets cert via acme
2015-12-11 14:15:44 -08:00
Girish Ramakrishnan
0b8fde7d8d
rename app.setAppCertificate
2015-12-11 14:13:29 -08:00
Girish Ramakrishnan
2f7517152a
rename certificates.initialize
2015-12-11 14:02:58 -08:00
Girish Ramakrishnan
3e2ea0e087
refactor certificate settings
2015-12-11 13:58:43 -08:00
Girish Ramakrishnan
723556d6a2
Add CertificatesError
2015-12-11 13:43:33 -08:00
Girish Ramakrishnan
1f53d76cef
wait forever by default
2015-12-11 13:41:17 -08:00
Girish Ramakrishnan
d15488431b
add waitfordns.js (refactored from appstore)
2015-12-11 13:14:27 -08:00
Girish Ramakrishnan
cf80fd7dc5
rename certificatemanager
2015-12-11 12:24:52 -08:00
Girish Ramakrishnan
73d891b98e
move validateCertificate to certificateManager
2015-12-10 20:38:49 -08:00
Girish Ramakrishnan
875ec1028d
remove backward compat code now that we have migrated
2015-12-10 16:31:22 -08:00
Girish Ramakrishnan
fd985c2011
configure nginx as the last step
...
this allow us to wait for certificate (in the case of LE)
2015-12-10 15:26:36 -08:00
Girish Ramakrishnan
47981004c9
split port reserving to separate function
...
this allows us to move nginx configuration to the bottom of apptask
(required for tls cert download support)
2015-12-10 15:25:15 -08:00
Girish Ramakrishnan
e3f7c8f63d
use fqdn to save admin certs as well
2015-12-10 14:29:54 -08:00
Girish Ramakrishnan
853db53f82
rename admin.cert/.key to {admin_fqdn}.cert/.key
2015-12-10 14:05:44 -08:00
Girish Ramakrishnan
5992c0534a
remove dead comment
2015-12-10 13:56:00 -08:00
Girish Ramakrishnan
1874c93c5c
no need to template main nginx config
2015-12-10 13:54:53 -08:00
Girish Ramakrishnan
3c4adb1aed
fix config path
2015-12-10 13:36:44 -08:00
Girish Ramakrishnan
66db918273
add certificate manager stub
2015-12-10 13:35:02 -08:00
Girish Ramakrishnan
69845d5ddd
add config.adminFqdn()
2015-12-10 13:14:13 -08:00
Girish Ramakrishnan
42181d597b
keep the requires sorted
2015-12-10 13:08:38 -08:00
Girish Ramakrishnan
b56e9ca745
do not log the token
2015-12-10 12:50:54 -08:00
Girish Ramakrishnan
5fc4788269
remove test code
2015-12-10 11:09:37 -08:00
Girish Ramakrishnan
d0f8293b73
treat acme as a cert backend
2015-12-10 11:08:22 -08:00
Girish Ramakrishnan
44582bcd4b
download the certificate as binary
2015-12-10 11:07:10 -08:00
Girish Ramakrishnan
5c73aed953
remove unused require
2015-12-10 09:54:21 -08:00
Girish Ramakrishnan
e1ec48530e
acme: create cert file with the chain
2015-12-10 09:11:08 -08:00
Girish Ramakrishnan
54c4053728
add LE cross signed
...
https://letsencrypt.org/certs/lets-encrypt-x1-cross-signed.pem.txt
2015-12-10 09:06:36 -08:00
Girish Ramakrishnan
79ffb0df5c
acme: openssl does not play well with buffers. use files instead
2015-12-10 08:57:53 -08:00
Girish Ramakrishnan
c510952c88
s/privateKeyPem/accountKeyPem
2015-12-09 19:23:19 -08:00
Girish Ramakrishnan
6109da531d
acme: use safe
2015-12-09 19:22:53 -08:00
Girish Ramakrishnan
56877332db
pull in urlBase64Encode
2015-12-09 18:34:27 -08:00
Girish Ramakrishnan
6fc972d160
set default response type to text/plain
2015-12-09 18:34:13 -08:00
Girish Ramakrishnan
5346153d9b
add ursa
2015-12-09 18:33:35 -08:00
Girish Ramakrishnan
aaf266d272
convert cert to pem
2015-12-08 20:05:14 -08:00
Girish Ramakrishnan
0750db9aae
rename function
2015-12-08 19:54:37 -08:00
Girish Ramakrishnan
316976d295
generate the acme account key on first run
2015-12-08 19:42:33 -08:00
Girish Ramakrishnan
593b5d945b
use this fake email as the account owner for now
2015-12-08 19:15:17 -08:00
Girish Ramakrishnan
88f0240757
serve acme directory from nginx
2015-12-08 19:04:48 -08:00
Girish Ramakrishnan
f5c2f8849d
Add LE staging url for testing
2015-12-08 18:25:45 -08:00
Girish Ramakrishnan
5c4a8f7803
add acme support
...
this is not used anywhere since we want to wait for rate limits to be
fixed.
The current limits are :
Rate limit on registrations per IP is currently 10 per 3 hours
Rate limit on certificates per Domain is currently 5 per 7 days
The domains are counted based on https://publicsuffix.org/list/ (not TLD). Like appspot.com, herokuapp.com while not a TLD, it a public suffix. This list allows browser authors to limit how cookies can be manipulated by the subdomain of those domains. like app1.appspot.com cannot go and change things of app2.appspot.com.
This means
a) we cannot use LE for cloudron.me, cloudron.us (or we have to get on that list)
b) even for custom domains we get only 5 certs every 7 days. And one of them is taken for my.xx domain.
https://community.letsencrypt.org/t/public-beta-rate-limits/4772/38
2015-12-08 15:52:30 -08:00
Girish Ramakrishnan
5b8fdad5cb
Revert "remove targetBoxVersion checks since all apps are now ported"
...
This reverts commit d104f2a077 .
gitlab is not ported :-(
2015-12-05 02:29:06 -08:00
Girish Ramakrishnan
fe819f95ec
always return logs regardless of state
2015-12-04 13:13:54 -08:00
Girish Ramakrishnan
be6728f8cb
send support an email for app crashes
2015-12-02 16:50:00 -08:00
Girish Ramakrishnan
24d3a81bc8
remove targetBoxVersion checks since all apps are now ported
2015-12-02 15:02:16 -08:00
Girish Ramakrishnan
268c7b5bcf
always create an isolated network ns
2015-12-01 13:59:45 -08:00
Girish Ramakrishnan
64716a2de5
cloudron exec: disable links for subcontainers
...
Dec 01 08:36:53 girish.cloudron.us node[5431]: Error: HTTP code is 409 which indicates error: undefined - Conflicting options: --net=container can't be used with links. This would result in undefined behavior
2015-12-01 00:51:41 -08:00
Girish Ramakrishnan
d2c8457ab1
reset health when app is stopped
2015-11-30 15:41:56 -08:00
Johannes Zellner
667cb84af7
Protect from crash on shutdown
2015-11-27 10:05:57 +01:00
Girish Ramakrishnan
df8653cdd5
Do not set Hostname for subcontainers
2015-11-26 19:26:29 -08:00
Girish Ramakrishnan
32f677ca0d
make app subcontainers share network namespace with app
...
pid namespace sharing is coming in https://github.com/docker/docker/issues/10163
2015-11-26 19:18:31 -08:00
Johannes Zellner
6f5408f0d6
Make all json blobs in db TEXT fields
2015-11-26 12:17:02 +01:00
Johannes Zellner
23c04fb10b
Use console.error() to report update errors
2015-11-26 12:04:39 +01:00
Johannes Zellner
0c5d6b1045
Set app backup progress only after we check the error
2015-11-26 12:00:44 +01:00
Johannes Zellner
33f30decd1
Support redirectURIs which already contain query params
2015-11-25 17:50:39 +01:00
Johannes Zellner
9595b63939
Correctly encode the redirectURI in oauth callback
2015-11-25 17:45:18 +01:00
Johannes Zellner
b9695b09cd
Fix crash due to wrong AppsError usage
2015-11-25 13:49:20 +01:00
Girish Ramakrishnan
606885b23c
fix typo
2015-11-23 13:51:14 -08:00
Girish Ramakrishnan
bc7b8aadc4
vultr: fix waitForSnapshot call
2015-11-23 13:39:02 -08:00
Girish Ramakrishnan
d136b2065f
ignore vultr transfer image call
2015-11-23 13:35:36 -08:00
Girish Ramakrishnan
3b2683463d
localize transfer logic for DO
2015-11-23 13:35:05 -08:00
Girish Ramakrishnan
989730d402
wait for snapshot
2015-11-23 13:19:23 -08:00
Girish Ramakrishnan
50f7209ba2
print the provider
2015-11-23 12:46:08 -08:00
Girish Ramakrishnan
44b728c660
remove get_image_id api
2015-11-23 12:45:09 -08:00
Girish Ramakrishnan
9abc5bbf96
better error handling
2015-11-23 12:37:30 -08:00
Girish Ramakrishnan
56dd936e9c
create systemd log dir if needed
2015-11-23 12:33:45 -08:00
Girish Ramakrishnan
e982281cd4
install acl
2015-11-23 11:32:05 -08:00
Girish Ramakrishnan
a6b7b5fa94
complete vultr backend
2015-11-23 11:30:24 -08:00
Girish Ramakrishnan
ef00114aab
rename arg box to name
2015-11-23 11:20:21 -08:00
Girish Ramakrishnan
ba4edc5c0e
implement some vultr api
2015-11-23 11:01:52 -08:00
Girish Ramakrishnan
dae2d81764
remove image_region as well
2015-11-23 10:49:09 -08:00
Girish Ramakrishnan
cee9cd14c0
hardcode the box size to smallest
2015-11-23 10:46:16 -08:00
Girish Ramakrishnan
f1ec110673
vultr: getSshKeyId
2015-11-23 10:27:27 -08:00
Girish Ramakrishnan
7104a3b738
use debug to put messages in stderr
2015-11-23 10:14:40 -08:00
Girish Ramakrishnan
114951b18c
add get_image_id command
2015-11-23 09:31:42 -08:00
Girish Ramakrishnan
3c85a602a4
add vultr backend
2015-11-23 09:22:43 -08:00
Girish Ramakrishnan
a6415b8689
remove droplet from command names
2015-11-23 09:13:30 -08:00
Girish Ramakrishnan
b37670de84
make DO backend a binary
2015-11-23 08:59:45 -08:00
Girish Ramakrishnan
c9053bb0bc
rename image creation schript
2015-11-23 08:39:21 -08:00
Girish Ramakrishnan
5362102be6
add --provider
2015-11-23 08:38:56 -08:00
Girish Ramakrishnan
bf4601470b
remove functions not part of vps api
2015-11-23 08:33:57 -08:00
Girish Ramakrishnan
bd6274282b
s/droplet/server
2015-11-23 08:32:54 -08:00
Girish Ramakrishnan
5a0f7df377
handle scheduler error
2015-11-22 21:17:17 -08:00
Girish Ramakrishnan
2e54be3df8
Revert "fix crash in scheduler"
...
This reverts commit 3b5e30f922 .
2015-11-22 21:13:05 -08:00
Girish Ramakrishnan
6625610aca
fix crash in scheduler
2015-11-22 17:22:06 -08:00
Girish Ramakrishnan
5c9abfe97a
debug output the changeIds
2015-11-19 17:49:30 -08:00
Johannes Zellner
e06f3d4180
Docker bridge default ip has changed
2015-11-19 16:32:03 +01:00
Girish Ramakrishnan
331b4d8524
use docker 1.9.0
2015-11-18 18:28:28 -08:00
Girish Ramakrishnan
e3cc12da4f
new addon images based on docker 1.9.0
2015-11-18 17:53:58 -08:00
Girish Ramakrishnan
1e19f68cb5
Install docker binaries instead of apt
...
The apt binaries lxc-* are obsolete and replaced with 'docker-engine'
packages. The new repos however do not allow pinning to a specific version.
so brain dead.
https://docs.docker.com/engine/installation/binaries/#get-the-linux-binary
2015-11-18 13:02:51 -08:00
Girish Ramakrishnan
c286b491d6
Fix debug output
2015-11-16 16:43:53 -08:00
Girish Ramakrishnan
c7acdbf20d
add empty certs dir
2015-11-16 15:21:42 -08:00
Girish Ramakrishnan
3cd0cc01c4
Add test certs
...
This is simply a self-signed cert
2015-11-16 15:20:08 -08:00
Girish Ramakrishnan
87d109727a
fix path to secrets
2015-11-16 15:08:26 -08:00
Girish Ramakrishnan
47b6819ec8
scp does not require this option
2015-11-16 14:48:05 -08:00
Girish Ramakrishnan
00ee89a693
fix paths
2015-11-16 14:31:39 -08:00
Girish Ramakrishnan
ac14b08af4
we have to use 4.1.1
2015-11-16 14:31:39 -08:00
Girish Ramakrishnan
db97d7e836
Fix options usage
2015-11-16 13:15:12 -08:00
Girish Ramakrishnan
5a0c80611e
better error message
2015-11-16 12:15:44 -08:00
Girish Ramakrishnan
4e872865a3
use different keys for different env
2015-11-16 12:15:15 -08:00
Girish Ramakrishnan
aea39a83b6
change yellowtent key to caas
2015-11-16 12:12:07 -08:00
Johannes Zellner
3d80821203
Give correct feedback if an app cannot be found in the appstore
2015-11-13 10:35:29 +01:00
Johannes Zellner
d9bfcc7c8a
Change manifestJson column from VARCHAR to TEXT
2015-11-13 10:21:03 +01:00
Johannes Zellner
8bd9a6c109
Do not serve up the status page for 500 upstream errors
2015-11-13 09:39:33 +01:00
Johannes Zellner
d89db24bfc
Fix indentantion
2015-11-13 09:30:33 +01:00
Johannes Zellner
352b5ca736
Update supererror
2015-11-13 09:23:32 +01:00
Girish Ramakrishnan
6bd9173a9d
this docker registry keeps going down
2015-11-12 16:22:53 -08:00
Girish Ramakrishnan
0cef3e1090
do not trust the health state blindly
2015-11-12 16:16:05 -08:00
Girish Ramakrishnan
6bd68961d1
typo
2015-11-12 16:13:15 -08:00
Girish Ramakrishnan
7f8ad917d9
filter out non-healthy apps
2015-11-12 16:04:33 -08:00
Girish Ramakrishnan
7cd89accaf
better pullImage debug output
2015-11-12 15:58:39 -08:00
Girish Ramakrishnan
ffee084d2b
new format of provisioning info
2015-11-12 14:22:43 -08:00
Girish Ramakrishnan
2bb657a733
rename variable for clarity
2015-11-12 12:40:41 -08:00
Girish Ramakrishnan
bc48171626
use fallback cert from backup if it exists
2015-11-12 12:37:43 -08:00
Girish Ramakrishnan
50924b0cd3
use admin.cert and admin.key if present in backup dir
2015-11-12 12:33:52 -08:00
Girish Ramakrishnan
3d86950cc9
fix indentation
2015-11-12 12:28:05 -08:00
Girish Ramakrishnan
db9ddf9969
backup fallback cert
2015-11-12 12:27:25 -08:00
Girish Ramakrishnan
1b507370dc
Cannot use >= node 4.1.2
...
https://github.com/nodejs/node/issues/3803
2015-11-12 12:19:13 -08:00
Girish Ramakrishnan
b9a3c508c9
Fix target path
2015-11-12 06:58:01 -08:00
Girish Ramakrishnan
9ae49e7169
link npm
2015-11-11 22:04:58 -08:00
Girish Ramakrishnan
7a1cdd62a4
install node 4.2.2
2015-11-11 16:02:42 -08:00
Girish Ramakrishnan
a242881101
change engine requirements
2015-11-11 15:56:14 -08:00
Girish Ramakrishnan
3c5e221c39
change engine requirements
2015-11-11 15:55:59 -08:00
Girish Ramakrishnan
9c37f35d5a
new shrinkwrap for 4.2.2
2015-11-11 15:55:24 -08:00
Girish Ramakrishnan
44ca59ac70
update shrinkwrap
2015-11-11 15:49:38 -08:00
Girish Ramakrishnan
398dfce698
update packages
2015-11-11 15:48:32 -08:00
Girish Ramakrishnan
0ebe6bde3d
remove async and superagent from dev deps
2015-11-11 15:46:15 -08:00
Girish Ramakrishnan
4044070d76
Add -app prefix for all app sources
...
so that this doesn't conflict with some user.
2015-11-11 13:27:45 -08:00
Girish Ramakrishnan
8f05917d97
delete container on network error
2015-11-10 21:56:17 -08:00
Girish Ramakrishnan
3766d67daa
create new container from cloudron exec
2015-11-10 21:36:20 -08:00
Johannes Zellner
b1290c073e
log lines should be newline separated
2015-11-10 11:31:07 +01:00
Girish Ramakrishnan
15f686fc69
reboot automatically on panic after 5 seconds
2015-11-10 01:53:09 -08:00
Girish Ramakrishnan
36daf86ea2
send mail even if no related app was found (for addons)
2015-11-10 01:39:02 -08:00
Girish Ramakrishnan
4fb07a6ab3
make crashnotifier send mails again
...
mailer module waits for dns syncing. crashnotifier has no time for all that.
neither does it initialize the database. it simply wants to send mail.
(the crash itself could have happenned because of some db issue)
maybe it should simply use a shell script at some point.
2015-11-10 00:25:47 -08:00
Girish Ramakrishnan
8f2119272b
print all missing images
2015-11-09 23:31:04 -08:00
Girish Ramakrishnan
ee5bd456e0
set bucket and prefix to make migrate test pass
2015-11-09 22:45:07 -08:00
Girish Ramakrishnan
9c549ed4d8
wait for old apptask to finish before starting new one
...
kill() is async and takes no callback :/
2015-11-09 22:10:10 -08:00
Girish Ramakrishnan
61fc8b7968
better taskmanager debugs
2015-11-09 21:58:34 -08:00
Girish Ramakrishnan
6b30d65e05
add backupConfig in test
2015-11-09 21:08:23 -08:00
Girish Ramakrishnan
10c876ac75
make migrate test work
2015-11-09 20:34:27 -08:00
Girish Ramakrishnan
0966bd0bb1
use debug instead of console.error
2015-11-09 19:10:33 -08:00
Girish Ramakrishnan
294d1bfca4
remove ununsed require
2015-11-09 18:57:57 -08:00
Girish Ramakrishnan
af1d1236ea
expose api server origin to determine if the box is dev/staging/prod
2015-11-09 17:50:09 -08:00
Girish Ramakrishnan
eaf9febdfd
do not save aws and backupKey
...
it is now part of backupConfig
2015-11-09 08:39:01 -08:00
Johannes Zellner
8748226ef3
The controller already ensures we don't show the views here
2015-11-09 09:56:59 +01:00
Johannes Zellner
73568777c0
Only show dns and cert pages for custom domain cloudrons
2015-11-09 09:56:08 +01:00
Girish Ramakrishnan
c64697dde7
cannot read propery provider of null
2015-11-09 00:42:25 -08:00
Girish Ramakrishnan
0701e38a04
do not set dnsConfig for caas on activation
2015-11-09 00:20:16 -08:00
Girish Ramakrishnan
2a27d96e08
pass dnsConfig in update
2015-11-08 23:57:42 -08:00
Girish Ramakrishnan
ba42611701
token is not a function
2015-11-08 23:54:47 -08:00
Girish Ramakrishnan
54486138f0
pass dnsConfig to backend api
2015-11-08 23:21:55 -08:00
Girish Ramakrishnan
13d3f506b0
always add dns config in tests
2015-11-08 23:05:55 -08:00
Girish Ramakrishnan
32ca686e1f
read dnsConfig from settings to choose api backend
2015-11-08 22:55:31 -08:00
Girish Ramakrishnan
a5ef9ff372
Add getAllPaged to storage api
2015-11-08 22:41:13 -08:00
Girish Ramakrishnan
738bfa7601
remove unused variable
2015-11-08 11:04:39 -08:00
Girish Ramakrishnan
40cdd270b1
ensure correct token is used in tests
2015-11-07 22:19:23 -08:00
Girish Ramakrishnan
53a2a8015e
set the backupConfig in backups test
2015-11-07 22:18:39 -08:00
Girish Ramakrishnan
15aaa440a2
Add test for settings.backupConfig
2015-11-07 22:17:08 -08:00
Girish Ramakrishnan
d8a4014eff
remove bad reference to config.aws
2015-11-07 22:12:03 -08:00
Girish Ramakrishnan
d25d423ccd
remove legacy update params
...
these are now part of settings
2015-11-07 22:07:25 -08:00
Girish Ramakrishnan
49b0fde18b
remove config.aws and config.backupKey
2015-11-07 22:06:56 -08:00
Girish Ramakrishnan
8df7f17186
load backup config from settingsdb
2015-11-07 22:06:09 -08:00
Girish Ramakrishnan
adc395f888
save backupConfig in db
2015-11-07 21:45:38 -08:00
Girish Ramakrishnan
e770664365
Add backup config to settings
2015-11-07 18:02:45 -08:00
Girish Ramakrishnan
05d4ad3b5d
read new format of restore keys
2015-11-07 17:53:54 -08:00
Girish Ramakrishnan
cc6f726f71
change backup provider to caas
2015-11-07 09:17:58 -08:00
Girish Ramakrishnan
a4923f894c
prepare for new backupConfig
2015-11-07 00:26:12 -08:00
Girish Ramakrishnan
12200f2e0d
split aws code into storage backends
2015-11-06 18:22:29 -08:00
Girish Ramakrishnan
a853afc407
backups: add api call
2015-11-06 18:14:59 -08:00
Girish Ramakrishnan
de471b0012
return BackupError and not SubdomainError
2015-11-06 18:08:25 -08:00
Girish Ramakrishnan
b6f1ad75b8
merge SubdomainError into subdomains.js like other error classes
2015-11-06 17:58:01 -08:00
Girish Ramakrishnan
e6840f352d
remove spurious debugs
2015-11-05 11:59:11 -08:00
Johannes Zellner
6456874f97
Avoid ui glitch in setup if no custom domain
...
This moves the wizard flow logic to next() instead of the views individually
2015-11-05 20:32:30 +01:00
Johannes Zellner
66b4a4b02a
Remove unused favicon middleware
2015-11-05 19:29:08 +01:00
Girish Ramakrishnan
7e36b3f8e5
mailer: set dnsReady flag
2015-11-05 10:28:41 -08:00
Girish Ramakrishnan
12061cc707
mailDnsRecordIds is never used
2015-11-05 10:22:25 -08:00
Girish Ramakrishnan
afcc62ecf6
mailServer is never used
2015-11-05 10:22:25 -08:00
Johannes Zellner
bec6850c98
Specify icon for oauth views
2015-11-05 19:19:28 +01:00
Girish Ramakrishnan
d253a06bab
Revert "Remove unused very old yellowtent favicon"
...
This reverts commit c15a200d4a .
This is used by the favicon middleware
2015-11-05 10:14:59 -08:00
Johannes Zellner
857c5c69b1
force reload the webadmin on cert upload
2015-11-05 18:38:32 +01:00
Girish Ramakrishnan
766fc49f39
setup dkim records for custom domain
2015-11-05 09:30:23 -08:00
Johannes Zellner
941e09ca9f
Update the cloudron icon
2015-11-05 18:05:19 +01:00
Johannes Zellner
2466a97fb8
Remove more unused image assets
2015-11-05 18:04:54 +01:00
Johannes Zellner
81f92f5182
Remover another unused favicon
2015-11-05 17:49:25 +01:00
Johannes Zellner
91e1d442ff
Update the avatar
2015-11-05 17:48:18 +01:00
Johannes Zellner
a1d6ae2296
Remove unused very old yellowtent favicon
2015-11-05 17:46:17 +01:00
Girish Ramakrishnan
b529fd3bea
we expect the server cert to be first like the rfc says
2015-11-04 19:22:37 -08:00
Girish Ramakrishnan
bf319cf593
more verbose certificate message
2015-11-04 19:15:23 -08:00
Girish Ramakrishnan
15eedd2a84
pass on certificate errors
2015-11-04 19:13:16 -08:00
Girish Ramakrishnan
d0cd3d1c32
Put dns first since it says dns & certs
2015-11-04 18:23:51 -08:00
Girish Ramakrishnan
747786d0c8
fix avatar url for custom domains
2015-11-04 18:21:46 -08:00
Girish Ramakrishnan
b232255170
move dns and certs to own view
2015-11-04 18:21:43 -08:00
Girish Ramakrishnan
bd2982ea69
move backups after about
2015-11-04 16:41:33 -08:00
Girish Ramakrishnan
1c948cc83c
route53: Do no use weight and setIdentifier
2015-11-04 15:15:39 -08:00
Girish Ramakrishnan
ccde1e51ad
debug any failure
2015-11-04 14:28:26 -08:00
Girish Ramakrishnan
03ec940352
Add space in spf record
2015-11-04 14:22:56 -08:00
Girish Ramakrishnan
bd5b15e279
insert any dns config into settings
2015-11-04 08:45:12 -08:00
Girish Ramakrishnan
b6897a4577
Revert "Add isConfigured fallback for caas cloudrons"
...
This reverts commit 338f68a0f3 .
We will send dns config from appstore instead
2015-11-04 08:28:21 -08:00
Johannes Zellner
f7225523ec
Add isConfigured fallback for caas cloudrons
2015-11-04 12:53:16 +01:00
Girish Ramakrishnan
6a0b8e0722
remove unused backup route
2015-11-03 16:52:38 -08:00
Girish Ramakrishnan
9d9509525c
listen on timezone key only when configured
2015-11-03 16:11:24 -08:00
Girish Ramakrishnan
b1dbb3570b
Add configured event
...
Cloudron code paths like cron/mailer/taskmanager now wait for configuration
to be complete before doing anything.
This is useful when a cloudron is moved from a non-custom domain to a custom domain.
In that case, we require route53 configs.
2015-11-03 16:06:38 -08:00
Girish Ramakrishnan
c075160e5d
Remove event listener
2015-11-03 15:22:02 -08:00
Girish Ramakrishnan
612ceba98a
unsubscribe from events
2015-11-03 15:19:06 -08:00
Girish Ramakrishnan
7d5e0040bc
debug only if error
2015-11-03 15:15:37 -08:00
Girish Ramakrishnan
d6e19d2000
resume tasks only if cloudron is activated
2015-11-03 15:14:59 -08:00
Girish Ramakrishnan
a01d5db2a0
minor refactor
2015-11-02 17:45:38 -08:00
Girish Ramakrishnan
5de3baffd4
send monotonic timestamp as well
2015-11-02 14:26:15 -08:00
Girish Ramakrishnan
63c10e8f02
fix typo
2015-11-02 14:23:02 -08:00
Girish Ramakrishnan
a99e7c2783
disable logstream testing (since it requires journald)
2015-11-02 14:08:34 -08:00
Girish Ramakrishnan
88b1cc553f
Use journalctl to get app logs
2015-11-02 14:08:34 -08:00
Girish Ramakrishnan
316e8dedd3
name is a query parameter
2015-11-02 14:08:34 -08:00
Girish Ramakrishnan
bb040eb5a8
give yellowtent user access to cloudron logs
2015-11-02 13:20:43 -08:00
Johannes Zellner
f106a76cd5
Fix the avatar and brand label links in navbar
2015-11-02 21:27:52 +01:00
Girish Ramakrishnan
95b2bea828
Give containers a name
2015-11-02 09:34:31 -08:00
Girish Ramakrishnan
51a0ad70aa
log to journald instead
2015-11-02 08:54:10 -08:00
Girish Ramakrishnan
71faa5f89e
Move ssh to port 202
2015-11-01 13:16:32 -08:00
Girish Ramakrishnan
58d6166592
fix indexOf matching in addDnsRecords
2015-10-30 18:12:24 -07:00
Girish Ramakrishnan
d42f66bfed
Fix casing of zone id
2015-10-30 18:05:08 -07:00
Girish Ramakrishnan
6cf0554e23
do not resolve to a tag
2015-10-30 17:40:17 -07:00
Girish Ramakrishnan
5bd8579e73
add null check
2015-10-30 16:24:56 -07:00
Girish Ramakrishnan
01cd0b6b87
fix indexOf matching
2015-10-30 16:12:39 -07:00
Girish Ramakrishnan
b4aec552fc
txtRecords is a single level array
2015-10-30 16:04:09 -07:00
Girish Ramakrishnan
93ab606d94
dns resolve using the authoritative nameserver
2015-10-30 15:57:15 -07:00
Girish Ramakrishnan
94e94f136d
sendHearbeat on init
2015-10-30 14:58:48 -07:00
Girish Ramakrishnan
1b57128ef6
ListResourceRecordSet returns items based on lexical sorting
2015-10-30 14:41:34 -07:00
Girish Ramakrishnan
219a2b0798
rename function
2015-10-30 13:53:12 -07:00
Girish Ramakrishnan
b37d5b0fda
enable back spf
2015-10-30 13:48:46 -07:00
Girish Ramakrishnan
0e9aac14eb
leave a note on subdomains.update
2015-10-30 13:47:10 -07:00
Girish Ramakrishnan
cf81ab0306
subdomains.update now takes array
2015-10-30 13:45:10 -07:00
Girish Ramakrishnan
00d8148e46
fix get call
2015-10-30 13:45:10 -07:00
Johannes Zellner
0b59281dbb
Remove leftover console.log()
2015-10-30 21:30:57 +01:00
Johannes Zellner
e0c845ca16
Fix cloudron tests when run together
2015-10-30 21:30:57 +01:00
Girish Ramakrishnan
d6bff57c7d
subdomains.del now takes array values
2015-10-30 13:30:19 -07:00
Girish Ramakrishnan
5c4b4d764e
implement subdomains.get for route53
2015-10-30 13:23:43 -07:00
Girish Ramakrishnan
bf13b5b931
subdomains.add takes array values
2015-10-30 13:23:43 -07:00
Johannes Zellner
afade0a5ac
Ensure the next buttons are properly disabled when the fields are invalid
2015-10-30 21:10:01 +01:00
Johannes Zellner
40da8736d4
Do not use special wizard page controller for dns view
2015-10-30 21:10:01 +01:00
Johannes Zellner
a55675b440
Fixup the enter focus flow
2015-10-30 21:10:01 +01:00
Girish Ramakrishnan
6ce71c7506
prepare dns backends to accepts array of values
2015-10-30 13:04:43 -07:00
Girish Ramakrishnan
0dda91078d
remove listeners on uninitialize
2015-10-30 12:52:33 -07:00
Girish Ramakrishnan
93632f5c76
disable spf for testing
2015-10-30 12:50:47 -07:00
Girish Ramakrishnan
cb4cd10013
settings changed callback provides the changed setting as first argument
2015-10-30 12:50:47 -07:00
Johannes Zellner
62bcf09ab4
Fix error message in set dns config
2015-10-30 20:32:58 +01:00
Girish Ramakrishnan
b466dc1970
remove unused require
2015-10-30 11:43:40 -07:00
Girish Ramakrishnan
0a10eb66cc
caas: add subdomains.get
2015-10-29 16:41:04 -07:00
Girish Ramakrishnan
c6322c00aa
remove unused subdomains.addMany
2015-10-29 16:39:07 -07:00
Girish Ramakrishnan
b549a4bddf
minor rename of variable
2015-10-29 16:38:18 -07:00
Girish Ramakrishnan
3fa50f2a1a
handle getSubdomain error
2015-10-29 16:27:01 -07:00
Girish Ramakrishnan
ddded0ebfb
emit change event
2015-10-29 16:21:41 -07:00
Girish Ramakrishnan
71c0945607
add updateSubdomain in route53 backend
2015-10-29 15:37:51 -07:00
Girish Ramakrishnan
f0295c5dc5
debug message for update already in progress
2015-10-29 15:34:30 -07:00
Girish Ramakrishnan
4e1286a8cf
addDnsRecords on restarts after activation
2015-10-29 15:00:53 -07:00
Girish Ramakrishnan
d69cead362
remove unused variable
2015-10-29 14:57:51 -07:00
Girish Ramakrishnan
7699cffa26
implement dns updates for custom domains
2015-10-29 14:33:34 -07:00
Girish Ramakrishnan
1021fc566f
Add subdomains.update
2015-10-29 14:16:09 -07:00
Girish Ramakrishnan
1fb3b2c373
Add get and update subdomain to caas
2015-10-29 14:15:54 -07:00
Girish Ramakrishnan
2428000262
Add square bracket for empty string/no apps
2015-10-29 13:07:52 -07:00
Johannes Zellner
3d5b4f3191
Ensure we only show cert related ui parts for custom domain cloudrons
2015-10-29 21:01:24 +01:00
Girish Ramakrishnan
eb6a217f4a
set non-custom domain provider as caas
2015-10-29 12:41:31 -07:00
Girish Ramakrishnan
06aaf98716
dnsConfig provider can be caas
2015-10-29 12:33:10 -07:00
Girish Ramakrishnan
26fc1fd7a6
use debug again
2015-10-29 12:28:50 -07:00
Girish Ramakrishnan
a9aa3c4fd8
use debug instead of console.error
2015-10-29 12:26:58 -07:00
Girish Ramakrishnan
61d4509a8e
do not emit fake activation event
...
cloudron is simply initialized the first thing
2015-10-29 12:18:25 -07:00
Johannes Zellner
8cff4f4ff1
Only print an app alive digest
2015-10-29 19:54:20 +01:00
Girish Ramakrishnan
5dc30e02c4
mailer: do not start until activated
2015-10-29 10:12:44 -07:00
Girish Ramakrishnan
55f070e12c
ensure cloudron.js is initialized first
2015-10-29 10:11:05 -07:00
Girish Ramakrishnan
0afb8f51c3
Fix typo
2015-10-29 09:00:31 -07:00
Girish Ramakrishnan
42f2637078
setup dns records on activation
...
do no wait for records to sync as well. the appstore does all the
waiting now (or the user in selfhosted case)
2015-10-29 08:43:25 -07:00
Girish Ramakrishnan
bbec7c6610
send heartbeat regardless of activation
2015-10-29 08:40:52 -07:00
Johannes Zellner
76fc257661
Add a link to support page
2015-10-29 14:48:02 +01:00
Johannes Zellner
58ce50571a
Adjust text
2015-10-29 14:41:59 +01:00
Johannes Zellner
14205d2810
Add missing =
2015-10-29 14:36:25 +01:00
Johannes Zellner
d798fc4b3f
Show current dns config in settings ui
2015-10-29 14:34:43 +01:00
Johannes Zellner
d29d07cb2d
Add Client.getDnsConfig()
2015-10-29 14:34:25 +01:00
Johannes Zellner
07a0b360f6
Add form logic for dns credentials
2015-10-29 13:53:48 +01:00
Johannes Zellner
8b253a8a61
Rename cert header
2015-10-29 12:56:12 +01:00
Johannes Zellner
fddbf96c9c
Add form feedback for cert forms in settings
2015-10-29 12:55:32 +01:00
Johannes Zellner
d1d01ae4b8
Do not double submit the forms
2015-10-29 12:37:59 +01:00
Johannes Zellner
51706afc46
Fix typo in field name
2015-10-29 12:37:30 +01:00
Johannes Zellner
d4ea23b1ac
Add client.setAdminCertificate()
2015-10-29 12:29:25 +01:00
Johannes Zellner
0460beccf0
Add route to set the admin certificate
...
This route is separate until we can treat the webadmin just
like any other app
2015-10-29 12:27:57 +01:00
Johannes Zellner
aa5ed17dfa
streamline cert upload forms in settings
2015-10-29 11:52:53 +01:00
Girish Ramakrishnan
32173b19c9
Do not subscribe to activation event if already activated
2015-10-28 17:07:13 -07:00
Girish Ramakrishnan
1a8fd7dd92
remove gInitialized pattern
...
not sure why we initialize anything more than once
2015-10-28 17:05:28 -07:00
Girish Ramakrishnan
f0047bc1aa
console.error -> debug
2015-10-28 17:05:16 -07:00
Girish Ramakrishnan
917832e0ae
Change DKIM selector to cloudron
2015-10-28 16:16:15 -07:00
Girish Ramakrishnan
cf8948ac69
console.error to debug
2015-10-28 16:08:12 -07:00
Girish Ramakrishnan
b2df639155
Move dns backends to separate directory
2015-10-28 16:04:49 -07:00
Girish Ramakrishnan
70ace09ff5
remove unused digitalocean.js
2015-10-28 15:25:22 -07:00
Girish Ramakrishnan
35a69f595a
remove unused require
2015-10-28 15:22:10 -07:00
Girish Ramakrishnan
f4c4a931d2
Fix debug message
2015-10-28 15:21:47 -07:00
Girish Ramakrishnan
7caced2fe8
Do not send email if SPF record is not setup correctly
2015-10-28 14:45:51 -07:00
Johannes Zellner
846e5deb36
Add cert form error reporting to app install form
2015-10-28 22:21:20 +01:00
Johannes Zellner
eca328b247
Add cert and key to app install route
2015-10-28 22:09:19 +01:00
Johannes Zellner
c0e9091e4b
Preselect current user for singleuser apps
2015-10-28 22:07:41 +01:00
Johannes Zellner
6b6e417435
Add user id to profile object
2015-10-28 22:07:30 +01:00
Johannes Zellner
954bb7039c
Make cert forms appear as a group
2015-10-28 21:20:59 +01:00
Johannes Zellner
ae01f517c7
Mark cert fields as optional
2015-10-28 20:51:11 +01:00
Johannes Zellner
385bfe07e2
Add cert handling to install form
2015-10-28 20:50:55 +01:00
Johannes Zellner
25aff6a53b
Remove unsed scope vars
2015-10-28 20:38:22 +01:00
Johannes Zellner
edcbf79b85
Add form feedback for certs
2015-10-28 20:30:35 +01:00
Girish Ramakrishnan
2591b8e10c
minor rewording
2015-10-28 10:17:46 -07:00
Johannes Zellner
9df9d1667f
Test certs are now simply embedded
2015-10-28 16:34:09 +01:00
Johannes Zellner
7798111af1
Ensure the test certs match domain and the folder is created
2015-10-28 16:33:45 +01:00
Johannes Zellner
12351113a9
Fixup the tests for wildcard cert
2015-10-28 16:00:51 +01:00
Johannes Zellner
d9256f99af
Make sure the dns sync file is removed
2015-10-28 15:32:49 +01:00
Johannes Zellner
cf021066ed
Move cert validation to settings and use it for wildcard cert
2015-10-28 14:35:39 +01:00
Johannes Zellner
04eb2a982f
Add proper cert validator
2015-10-28 14:20:25 +01:00
Johannes Zellner
22dcc787b5
Add x509 node module
2015-10-28 14:20:03 +01:00
Johannes Zellner
5d4d0c0a86
Add missing fs.
2015-10-28 12:56:09 +01:00
Johannes Zellner
e81db9728a
Set the cert and key dynamically when rendering nginx appconfig
2015-10-28 12:42:04 +01:00
Johannes Zellner
db305af8c9
We name certs with .cert extension
2015-10-28 12:33:27 +01:00
Johannes Zellner
4b3aca7773
certs should be stored with app fqdn
2015-10-28 12:28:57 +01:00
Johannes Zellner
5b5abe99e7
Save the uploaded certs to app cert directory
2015-10-28 12:24:59 +01:00
Johannes Zellner
8f670eb755
Add per app cert dir
2015-10-28 12:23:16 +01:00
Johannes Zellner
21a604814c
Add tests for app cert upload
2015-10-28 12:13:37 +01:00
Johannes Zellner
7eeb835d96
Adjust the settings view to upload certs as json body
2015-10-28 12:12:54 +01:00
Johannes Zellner
57de915133
Make settings certificate upload route also just using the json body
2015-10-28 12:12:06 +01:00
Johannes Zellner
a892de5c2d
Ensure cert and key are strings
2015-10-28 11:50:50 +01:00
Johannes Zellner
69cd01955b
No more dns view
2015-10-28 10:36:55 +01:00
Girish Ramakrishnan
f39809c941
EE API is synchronous
2015-10-27 22:18:02 -07:00
Girish Ramakrishnan
09c4bfeb51
Add DNS records for non-custom domains before activation
2015-10-27 21:10:00 -07:00
Girish Ramakrishnan
615789a9ad
fix unregisterSubdomain loop
2015-10-27 18:53:06 -07:00
Girish Ramakrishnan
bec5eaf3c9
send heartbeat immediately on startup
2015-10-27 17:05:56 -07:00
Girish Ramakrishnan
4f13ef9cea
hearbeat does not rely on dns sync
2015-10-27 16:42:24 -07:00
Girish Ramakrishnan
873de48beb
Do not add DNS records for custom domain
2015-10-27 16:23:08 -07:00
Girish Ramakrishnan
87e70b86d3
sendHeartbeat on activation event
2015-10-27 16:20:14 -07:00
Girish Ramakrishnan
140aa85223
Add cloudron.isActivatedSync
2015-10-27 16:12:05 -07:00
Girish Ramakrishnan
3ac3207497
send heartbeats regardless of activation
2015-10-27 16:05:19 -07:00
Girish Ramakrishnan
e36a0b9a30
create cron jobs only on activation
2015-10-27 16:04:29 -07:00
Girish Ramakrishnan
0b1aac7687
add null check for all jobs
2015-10-27 16:02:42 -07:00
Girish Ramakrishnan
e008cde2ff
Add dns records on activation
2015-10-27 16:00:31 -07:00
Girish Ramakrishnan
d1e46be8ad
Do not set dns config if null
2015-10-27 12:41:13 -07:00
Girish Ramakrishnan
dc18a18248
remove unused variables
2015-10-27 12:39:06 -07:00
Girish Ramakrishnan
b9a0ad73ab
$location is not defined
2015-10-27 12:37:01 -07:00
Girish Ramakrishnan
e2c3fb309c
Add custom domain setup step
2015-10-27 12:04:27 -07:00
Girish Ramakrishnan
d5255b8cf4
Add Client.setDnsConfig
2015-10-27 12:02:47 -07:00
Girish Ramakrishnan
42e70e870b
deploymentConfig is never used
2015-10-27 11:38:05 -07:00
Johannes Zellner
8ffd7b0197
Adjust the webadmin code for cert upload
2015-10-27 18:38:46 +01:00
Johannes Zellner
01ead194d8
Move cert upload route to /settings
2015-10-27 18:38:46 +01:00
Girish Ramakrishnan
80b9d4be50
awscredentials route is not called anymore
2015-10-27 10:24:42 -07:00
Girish Ramakrishnan
ef06836804
make apps-test partially work
2015-10-27 10:14:51 -07:00
Johannes Zellner
916870b546
Send cert and key with configure
2015-10-27 18:11:48 +01:00
Girish Ramakrishnan
2da7216be6
make apptask-test work
2015-10-27 10:02:43 -07:00
Girish Ramakrishnan
54215cff7a
Use the aws backend for tests
2015-10-27 10:02:43 -07:00
Girish Ramakrishnan
166257bbdc
Allow endpoint to be configured (for the tests)
2015-10-27 10:02:43 -07:00
Girish Ramakrishnan
d502e04cbd
use aws backend for custom domains
2015-10-27 10:02:43 -07:00
Girish Ramakrishnan
1fca680a67
read dns config from settings
2015-10-27 10:02:43 -07:00
Johannes Zellner
4ea3238391
Pass certs down to apps.configure
2015-10-27 16:36:09 +01:00
Johannes Zellner
fa12e7bd97
Add cert and key to app configure route
2015-10-27 15:44:47 +01:00
Johannes Zellner
6118535c4a
Add test helper script to generate a selfsigned cert
2015-10-27 15:06:53 +01:00
Johannes Zellner
920f04aab3
Use test-app image 10.0.0
2015-10-27 14:20:19 +01:00
Johannes Zellner
ed13f2d6ef
Add basic form elements for certificate in app configure
2015-10-27 12:26:55 +01:00
Johannes Zellner
dff27fe7b3
Remove unused dns views
2015-10-27 10:40:05 +01:00
Johannes Zellner
5d589e7330
Move certificate upload form from dns to settings
2015-10-27 10:39:02 +01:00
Johannes Zellner
01ec16f472
Remove useless console.log()
2015-10-27 10:38:11 +01:00
Girish Ramakrishnan
f510d4bc10
add route for setting/getting dns settings
2015-10-26 16:52:59 -07:00
Girish Ramakrishnan
2db2eb13af
add settings.get/setDnsConfig
2015-10-26 16:35:50 -07:00
Girish Ramakrishnan
82e1c07722
separate out dns and backup credentials
2015-10-26 16:23:41 -07:00
Girish Ramakrishnan
23ba078a17
Fix redis hostname
2015-10-23 19:24:22 -07:00
Girish Ramakrishnan
b5358e7565
recreate docker containers for hostname change
2015-10-23 16:30:17 -07:00
Girish Ramakrishnan
697699bd5f
test the new env vars APP_*
2015-10-23 16:27:40 -07:00
Girish Ramakrishnan
dd2a806ab8
Do not set hostname of app container
...
Some apps like pasteboard try to curl the public app url from inside
the container. This fails because we set the hostname and the hostname
maps to the internal docker IP.
To fix this, simply export two environment variables providing the
app's domain and origin. The hostname is set to the app location instead
of the FQDN for debugging.
Fixes #521
2015-10-23 16:17:35 -07:00
Girish Ramakrishnan
84d96cebee
linter fixes
2015-10-23 16:06:55 -07:00
Johannes Zellner
10658606d7
Bring back 'Cloudron' in the login header
2015-10-23 20:21:31 +02:00
Johannes Zellner
f72d89fa76
Replace the ugly oauth proxy checkbox
2015-10-22 13:18:58 +02:00
Johannes Zellner
f9f4a8e7ad
Check memory availability if an app can be installed or not
2015-10-22 11:16:55 +02:00
Johannes Zellner
fd58e83da9
Provide the memory byte count with the cloudron config route
2015-10-22 11:16:55 +02:00
Johannes Zellner
bfcedfdb2a
Add node module bytes
2015-10-22 11:16:55 +02:00
Johannes Zellner
d11e030150
Add resource constrait view on app installation attempt
2015-10-22 11:16:55 +02:00
Johannes Zellner
6103640b53
Remove leftover console.log()
2015-10-22 11:16:55 +02:00
Girish Ramakrishnan
259199897b
update test image
2015-10-21 09:16:04 -07:00
Johannes Zellner
ee498b9e2b
A readable stream does not have .end()
2015-10-21 17:25:14 +02:00
Johannes Zellner
18a464b1d2
Make data/ directory writeable by yellowtent user
2015-10-21 17:18:45 +02:00
Johannes Zellner
d1c8e34540
dns in sync file should be under data/
2015-10-21 17:18:39 +02:00
Johannes Zellner
a151846f1c
Use config.(set)dnsInSync()
...
Fixes #520
2015-10-21 16:44:03 +02:00
Johannes Zellner
9f19b0bc9e
Use a persistent file for dns sync flag
2015-10-21 16:42:17 +02:00
Johannes Zellner
289fe76adc
Avoid network request for access token verification in oauth proxy
2015-10-21 16:23:15 +02:00
Johannes Zellner
1eb1c44926
Clear oauthproxy session in case the access token is invalid
2015-10-21 15:57:18 +02:00
Girish Ramakrishnan
bc09e4204b
use debug instead of console.error
2015-10-20 19:03:34 -07:00
Girish Ramakrishnan
1a2948df85
VolumesFrom is part of HostConfig
2015-10-20 17:34:47 -07:00
Girish Ramakrishnan
16df15cf55
containerId does not mean it is running
2015-10-20 16:56:57 -07:00
Girish Ramakrishnan
0566bad6d9
bump infra version
2015-10-20 15:07:35 -07:00
Girish Ramakrishnan
edc90ccc00
bump test image
2015-10-20 14:40:27 -07:00
Girish Ramakrishnan
3688602d16
test the scheduler
2015-10-20 14:30:50 -07:00
Girish Ramakrishnan
0deadc5cf2
autodetect image id
2015-10-20 13:07:25 -07:00
Girish Ramakrishnan
10ac435d53
addons is mandatory
2015-10-20 12:57:00 -07:00
Girish Ramakrishnan
16f025181f
ensure boolean
2015-10-20 12:49:02 -07:00
Girish Ramakrishnan
3808f60e69
appState can be null
2015-10-20 12:32:50 -07:00
Girish Ramakrishnan
a00615bd4e
manifest always has addons
2015-10-20 12:27:23 -07:00
Girish Ramakrishnan
14bc2c7232
rename isSubcontainer -> isAppContainer
2015-10-20 10:55:06 -07:00
Girish Ramakrishnan
76d286703c
ignore portBindings and exportPorts for subcontainers
2015-10-20 10:42:35 -07:00
Girish Ramakrishnan
c80a5b59ab
do not dump containerOptions
2015-10-20 10:27:53 -07:00
Girish Ramakrishnan
db6882e9f5
do not kill containers on restart
2015-10-20 10:22:42 -07:00
Girish Ramakrishnan
3fd9d9622b
schedulerConfig cannot be null
2015-10-20 09:44:46 -07:00
Girish Ramakrishnan
5ae4c891de
scheduler: sync more often to catch bugs sooner
2015-10-20 09:36:55 -07:00
Girish Ramakrishnan
fb2e7cb009
scheduler: crash fixes
2015-10-20 09:36:30 -07:00
Johannes Zellner
8124f0ac7f
Remove cloudron name from the setup wizard
2015-10-20 13:36:25 +02:00
Johannes Zellner
446f571bec
The activate route does not take a cloudron name anymore
2015-10-20 13:12:37 +02:00
Johannes Zellner
142ae76542
Finally remove the cloudron name from the api wrapper and index page
2015-10-20 12:59:57 +02:00
Johannes Zellner
ed1873f47e
Remove cloudron name related UI in the settings view
2015-10-20 12:57:51 +02:00
Johannes Zellner
0ee04e6ef3
Remove cloudron name usage in error.html
2015-10-20 12:55:30 +02:00
Johannes Zellner
1e4475b275
Remove cloudron name usage in naked domain page
2015-10-20 12:46:45 +02:00
Johannes Zellner
9dd9743943
Do not use cloudron name in appstatus
2015-10-20 12:41:52 +02:00
Johannes Zellner
5fbcebf80b
Stop using the cloudron name in the oauth views
2015-10-20 12:31:16 +02:00
Girish Ramakrishnan
852b016389
scheduler: do not save cronjob object in state
...
the cronjob object has lots of js stuff and stringify fails
2015-10-20 01:31:11 -07:00
Girish Ramakrishnan
73f28d7653
put back request
2015-10-20 00:20:21 -07:00
Girish Ramakrishnan
1f28678c27
scheduler: make it work
2015-10-20 00:05:19 -07:00
Girish Ramakrishnan
daba68265c
stop all containers of an app
2015-10-20 00:05:19 -07:00
Girish Ramakrishnan
6d04481c27
fix debug tag
2015-10-19 23:38:55 -07:00
Girish Ramakrishnan
ed5d6f73bb
scheduler: fix require
2015-10-19 22:42:13 -07:00
Girish Ramakrishnan
d0360e9e68
scheduler: load/save state
2015-10-19 22:41:42 -07:00
Girish Ramakrishnan
32ddda404c
explicitly specify all to 0 (this is the default)
2015-10-19 22:09:38 -07:00
Girish Ramakrishnan
41de667e3d
do not set container name (we use labels instead)
2015-10-19 22:09:38 -07:00
Girish Ramakrishnan
8530e70af6
delete all containers of an app
2015-10-19 22:09:34 -07:00
Girish Ramakrishnan
7a840ad15f
scheduler: make stopJobs async
2015-10-19 21:36:55 -07:00
Girish Ramakrishnan
682c2721d2
scheduler: kill existing tasks if they are still running
2015-10-19 21:36:23 -07:00
Girish Ramakrishnan
fb56795cbd
merge start options into hostconfig
2015-10-19 21:35:02 -07:00
Girish Ramakrishnan
15aa4ecc5d
Add docker.createSubcontainer
2015-10-19 21:33:53 -07:00
Girish Ramakrishnan
351d7d22fb
rename tasks to tasksConfig
2015-10-19 16:29:28 -07:00
Girish Ramakrishnan
79999887a9
job -> cronJob
2015-10-19 16:27:03 -07:00
Girish Ramakrishnan
25d74ed649
createContainer takes optional command
2015-10-19 16:22:35 -07:00
Girish Ramakrishnan
9346666b3e
add labels to container
2015-10-19 16:01:04 -07:00
Girish Ramakrishnan
13453552b5
createContainer only takes app object
2015-10-19 16:00:40 -07:00
Girish Ramakrishnan
ef38074b55
add asserts
2015-10-19 15:51:02 -07:00
Girish Ramakrishnan
e5e8eea7ac
make it work without app object
2015-10-19 15:45:43 -07:00
Girish Ramakrishnan
9be2efc4f2
downloadImage only requires manifest now
2015-10-19 15:37:57 -07:00
Girish Ramakrishnan
990b7a2d20
implement scheduler
...
- scan for apps every 10 minutes and schedules tasks
- uses docker.exec
- there is no way to control exec container. docker developers
feel exec is for debugging purposes primarily
- future version will be based on docker run instead
part of #519
2015-10-19 14:53:34 -07:00
Girish Ramakrishnan
8d6dd62ef4
refactor container code into docker.js
2015-10-19 14:44:01 -07:00
Girish Ramakrishnan
69d09e8133
use docker.connection
2015-10-19 14:09:20 -07:00
Girish Ramakrishnan
6671b211e0
export a connection property from docker.js
2015-10-19 11:24:21 -07:00
Girish Ramakrishnan
307e815e97
remove unused require
2015-10-19 11:18:50 -07:00
Girish Ramakrishnan
d8e2bd6ff5
Refactor docker.js to not have mac stuff
2015-10-19 11:14:11 -07:00
Girish Ramakrishnan
e74c2f686b
remove unused require
2015-10-19 11:05:31 -07:00
Girish Ramakrishnan
c7d5115a56
Remove vbox.js
...
... and all related mac code. It's totally untested at this point and
most likely doesn't work
2015-10-19 10:54:36 -07:00
Girish Ramakrishnan
774ba11a92
Move HostConfig to createContainer
...
Newer docker has obsoleted HostConfig in start container
2015-10-19 10:38:46 -07:00
Girish Ramakrishnan
322edbdc20
getByAppIdAndType
2015-10-19 08:58:07 -07:00
Johannes Zellner
c1ba551e07
Cleanup some of the html form elements
2015-10-19 10:31:19 +02:00
Johannes Zellner
9917412329
Indicate during app installation and configuration if the app is a single user app
2015-10-19 10:29:51 +02:00
Girish Ramakrishnan
2f4adb4d5f
keep addon listing alphabetical
2015-10-18 20:06:26 -07:00
Girish Ramakrishnan
b61b864094
make callback noop
2015-10-17 13:57:19 -07:00
Johannes Zellner
fa193276c9
Require exactly one user in accessRestriction for singleUser app installations
2015-10-16 20:01:45 +02:00
Johannes Zellner
0ca09c384a
Hide client secret field for simple auth
2015-10-16 19:41:50 +02:00
Johannes Zellner
a6a39cc4e6
Adapt clients.getAllWithDetailsByUserId() to new client types
2015-10-16 19:36:12 +02:00
Johannes Zellner
c9f84f6259
Show user selection for singleUser apps
2015-10-16 18:06:49 +02:00
Johannes Zellner
07063ca4f0
Adjust the webadmin to the accessRestriction changes
2015-10-16 16:14:23 +02:00
Johannes Zellner
b5cfdcf875
Fixup the unit tests for accessRestriction format change
2015-10-16 16:06:13 +02:00
Johannes Zellner
373db25077
Make accessRestriction a JSON format to prepare for group access control
2015-10-16 15:32:19 +02:00
Johannes Zellner
f8c2ebe61a
Taks accessRestriction and oauthProxy into account for an update through the cli
2015-10-16 14:50:00 +02:00
Johannes Zellner
ae23fade1e
Show oauthProxy and accessRestriction values at app installation and configuration
2015-10-16 14:50:00 +02:00
Johannes Zellner
5386c05c0d
Give developer tokens the correct scopes
2015-10-16 14:50:00 +02:00
Johannes Zellner
aed94c8aaf
roleDeveloper is no more
2015-10-16 14:50:00 +02:00
Johannes Zellner
37185fc4d5
Only allow simple auth clients through simple auth
2015-10-16 14:49:51 +02:00
Johannes Zellner
cc64c6c9f7
Test using simple auth credentials in oauth
2015-10-16 11:48:12 +02:00
Johannes Zellner
0c0782ccd7
Fixup oauth to not allow simple auth clients
2015-10-16 11:27:42 +02:00
Johannes Zellner
5bc9f9e995
use clientdb types in authorization endpoint
2015-10-16 11:22:16 +02:00
Johannes Zellner
22402d1741
Remove legacy test auth client type
2015-10-16 10:05:58 +02:00
Johannes Zellner
8f203b07a1
Fix indentation
2015-10-16 09:19:05 +02:00
Girish Ramakrishnan
9c157246b7
add type field to clients table
2015-10-15 17:35:47 -07:00
Girish Ramakrishnan
d0dfe1ef7f
remove unused variable
2015-10-15 17:35:47 -07:00
Girish Ramakrishnan
a9ccc7e2aa
remove updating clients
...
clients are immutable
2015-10-15 16:08:17 -07:00
Girish Ramakrishnan
63edbae1be
minor rename
2015-10-15 15:51:51 -07:00
Girish Ramakrishnan
8afe537497
fix typo
2015-10-15 15:32:14 -07:00
Girish Ramakrishnan
f33844d8f1
fix debug tag
2015-10-15 15:19:28 -07:00
Girish Ramakrishnan
c750d00355
ignore any tmp cleanup errors
2015-10-15 14:47:43 -07:00
Girish Ramakrishnan
bb9b39e3c0
callback can be null
2015-10-15 14:25:38 -07:00
Girish Ramakrishnan
057b89ab8e
Check error code of image removal
2015-10-15 14:06:05 -07:00
Girish Ramakrishnan
23fc4bec36
callback can be null
2015-10-15 12:06:38 -07:00
Girish Ramakrishnan
6b82fb9ddb
Remove old addon images on infra update
...
Fixes #329
2015-10-15 12:01:31 -07:00
Girish Ramakrishnan
a3ca5a36e8
update test image
2015-10-15 11:11:54 -07:00
Girish Ramakrishnan
f57c91847d
addons do not write to /var/log anymore
2015-10-15 11:00:51 -07:00
Johannes Zellner
eda4dc83a3
Do not fail in container.sh when trying to remove non-existing directories
2015-10-15 18:06:57 +02:00
Johannes Zellner
5a0bf8071e
Handle the various appId types we have by now
2015-10-15 17:57:07 +02:00
Johannes Zellner
09dfc6a34b
Get the oauth2 debug()s in shape
2015-10-15 16:55:48 +02:00
Johannes Zellner
3b8ebe9a59
Fixup the oauth tests with accessRestriction support
2015-10-15 16:50:05 +02:00
Johannes Zellner
2ba1092809
Adhere to accessRestriction for oauth authorization endpoint
2015-10-15 16:49:13 +02:00
Johannes Zellner
7c97ab5408
Revert "Since we got fully rid of the decision dialog, no need to serialze the client anymore"
...
This is now again required, due to the accesRestriction check
This reverts commit 2c9ff1ee3b .
2015-10-15 16:33:05 +02:00
Johannes Zellner
ac1991f8d1
Fix typo in oauth test
2015-10-15 15:37:56 +02:00
Johannes Zellner
2a573f6ac5
Fixup the simpleauth tests
2015-10-15 15:19:01 +02:00
Johannes Zellner
9833d0cce6
Adhere to accessRestriction in simple auth
2015-10-15 15:18:40 +02:00
Johannes Zellner
fbc3ed0213
Add apps.hasAccessTo()
2015-10-15 15:06:34 +02:00
Johannes Zellner
c916a76e6b
Prepare simpleauth test for accessRestriction
2015-10-15 13:29:44 +02:00
Johannes Zellner
ae1bfaf0c8
roleUser is gone as well
2015-10-15 12:50:48 +02:00
Johannes Zellner
0aedff4fec
roleAdmin is gone
2015-10-15 12:37:42 +02:00
Johannes Zellner
73d88a3491
Rewrite accessRestriction validator
2015-10-15 12:37:42 +02:00
Girish Ramakrishnan
5d389337cd
make /var/log readonly
...
Expect apps to redirect logs of stdout/stderr
Part of #503
2015-10-15 00:46:50 -07:00
Girish Ramakrishnan
a977597217
cleanup tmpdir in janitor
2015-10-14 23:21:03 -07:00
Girish Ramakrishnan
b3b4106b99
Add janitor tests
2015-10-14 22:50:07 -07:00
Girish Ramakrishnan
7f29eed326
fold janitor into main box code cron job
...
the volume cleaner will now also come into janitor
2015-10-14 22:39:34 -07:00
Girish Ramakrishnan
ec895a4f31
do not use -f to logrotate
...
Normally, logrotate is run as a daily cron job. It will not modify a log
multiple times in one day unless the criterion for that log is based on
the log's size and logrotate is being run multiple times each day, or
unless the -f or --force option is used.
2015-10-14 15:10:53 -07:00
Girish Ramakrishnan
fe0c1745e1
make it explicit that logrotate is run via cron in base system
2015-10-14 15:08:38 -07:00
Girish Ramakrishnan
3fc0a96bb0
Add docker volumes janitor
...
This cleans up tmp and logrotates /var/log every 12 hours.
Note that this janitor is separate from the box janitor because they
run as different users.
Fixes #503
2015-10-14 14:18:36 -07:00
Girish Ramakrishnan
c154f342c2
show restore button if we have a lastBackupId
...
This is the only way to roll back even if you have a functioning app.
Use cases include:
1. You updated and something doesn't work
2. The app is in 'starting...' state (so it's installed) but no data yet
2015-10-14 11:36:12 -07:00
Johannes Zellner
8f1666dcca
Consolidate the oauth comments
2015-10-14 16:31:55 +02:00
Johannes Zellner
9aa4750f55
Since we got fully rid of the decision dialog, no need to serialze the client anymore
2015-10-14 16:22:50 +02:00
Johannes Zellner
c52d985d45
Properly skip decision dialog
2015-10-14 16:16:37 +02:00
Johannes Zellner
376d8d9a38
Cleanup the client serialization
2015-10-14 16:15:51 +02:00
Johannes Zellner
08de0a4e79
Add token exchange tests
2015-10-14 16:15:32 +02:00
Johannes Zellner
11d327edcf
Remove unused session error route
2015-10-14 15:51:55 +02:00
Johannes Zellner
d2f7b83ea7
Add oauth callback tests
2015-10-14 15:50:00 +02:00
Johannes Zellner
72ca1b39e8
Add oauth session logout test
2015-10-14 15:38:40 +02:00
Johannes Zellner
69bd234abc
Test for unkown client_id
2015-10-14 15:30:10 +02:00
Johannes Zellner
94e6978abf
Add test for grant type requests
2015-10-14 15:08:04 +02:00
Johannes Zellner
b5272cbf4d
roleAdmin is not part of scopes anymore
2015-10-14 14:59:54 +02:00
Johannes Zellner
edb213089c
Add oauth2 test when user is already logged in with his session
2015-10-14 14:46:25 +02:00
Johannes Zellner
b772cf3e5a
Add tester tag
2015-10-14 14:46:03 +02:00
Johannes Zellner
e86d043794
The oauth callback does not need a header and footer
2015-10-14 14:36:41 +02:00
Johannes Zellner
4727187071
Also test loginForm submit with email
2015-10-14 14:31:10 +02:00
Johannes Zellner
d8b8f5424c
add loginForm submit tests
2015-10-14 14:30:53 +02:00
Johannes Zellner
8425c99a4e
Also test oauth clients with oauth proxy
2015-10-14 13:38:37 +02:00
Johannes Zellner
c023dbbc1c
Do not handle addon-simpleauth in oauth
2015-10-14 13:35:33 +02:00
Johannes Zellner
af516f42b4
Add oauth login form tests
2015-10-14 13:34:20 +02:00
Johannes Zellner
dbd8e6a08d
Add more oauth tests for the authorization endpoint
2015-10-14 12:03:04 +02:00
Johannes Zellner
c24bec9bc6
Remove unused contentType middleware
2015-10-14 11:48:57 +02:00
Johannes Zellner
9854598648
Fix typo to repair oauth and simple auth login
...
Second time breakage, time for a test ;-)
2015-10-13 21:55:02 +02:00
Girish Ramakrishnan
2cdf73adab
Use 20m of logs per app
2015-10-13 11:59:28 -07:00
Johannes Zellner
1e7e2e5e97
Remove decision dialog related route
2015-10-13 20:39:08 +02:00
Johannes Zellner
081e496878
Remove unused oauth decision dialog
2015-10-13 20:32:27 +02:00
Johannes Zellner
aaff7f463a
Cleanup the authorization endpoint
2015-10-13 18:23:32 +02:00
Girish Ramakrishnan
55f937bf51
SIMPLE_AUTH_URL -> SIMPLE_AUTH_ORIGIN
2015-10-13 08:40:41 -07:00
Johannes Zellner
d5d1d061bb
We also allow non admins to use the webadmin
2015-10-13 15:13:36 +02:00
Johannes Zellner
bc6f602891
Remove unused angular filter for accessRestrictionLabel
2015-10-13 15:11:30 +02:00
Johannes Zellner
ca461057e7
Also update the test image id
2015-10-13 14:24:53 +02:00
Johannes Zellner
b1c5c2468a
Fix test to support docker api up to 1.19 and v1.20
2015-10-13 14:24:41 +02:00
Johannes Zellner
562ce3192f
Print error when apptask.pullImage() failed
2015-10-13 13:25:43 +02:00
Johannes Zellner
3787dd98b4
Do not crash if a boxVersionsUrl is not set
...
This prevents test failures when the cron job runs
2015-10-13 13:22:23 +02:00
Johannes Zellner
6c667e4325
Remove console.log
2015-10-13 13:06:50 +02:00
Johannes Zellner
0eec693a85
Update TEST_IMAGE_TAG
2015-10-13 12:30:02 +02:00
Johannes Zellner
c3bf672c2a
Ensure we deal with booleans
2015-10-13 12:29:40 +02:00
Johannes Zellner
c3a3b6412f
Support oauthProxy in webadmin
2015-10-13 11:49:50 +02:00
Johannes Zellner
44291b842a
Fix apps-test.js
2015-10-13 10:41:57 +02:00
Johannes Zellner
36cf502b56
Addons take longer to startup
2015-10-13 10:41:57 +02:00
Johannes Zellner
2df77cf280
Fix settings-test.js
2015-10-13 10:41:57 +02:00
Johannes Zellner
a453e49c27
Fix backups-test.js
2015-10-13 10:41:57 +02:00
Johannes Zellner
e34c34de46
Fixup the apptask-test.js
2015-10-13 10:41:57 +02:00
Johannes Zellner
8dc5bf96e3
Fix apps-test.js
2015-10-13 10:41:57 +02:00
Johannes Zellner
d2c3e1d1ae
Fix database tests
2015-10-13 10:41:57 +02:00
Johannes Zellner
4eab101b78
use app.oauthProxy instead of app.accessRestriction
2015-10-13 10:41:57 +02:00
Johannes Zellner
e460d6d15b
Add apps.oauthProxy
2015-10-13 10:41:57 +02:00
Girish Ramakrishnan
3012f68a56
pullImage: handle stream error
2015-10-12 21:56:34 -07:00
Girish Ramakrishnan
1909050be2
remove redundant log
2015-10-12 21:54:25 -07:00
Girish Ramakrishnan
d4c62c7295
check for 200 instead of 201
2015-10-12 21:54:18 -07:00
Girish Ramakrishnan
4eb3d1b918
login must return 200
2015-10-12 20:21:27 -07:00
Girish Ramakrishnan
fb6bf50e48
signal redis to backup using SAVE
2015-10-12 13:30:58 -07:00
Girish Ramakrishnan
31125dedc8
add deps of image tooling
2015-10-12 11:36:46 -07:00
Girish Ramakrishnan
a2e2d70660
remove deps of the release tool
2015-10-12 11:34:25 -07:00
Johannes Zellner
d8213f99b1
Ensure we only set the visibility in the progress bar on app restore to not break the layout
2015-10-12 20:32:43 +02:00
Girish Ramakrishnan
7fe1b02ccd
moved to release/ repo
2015-10-12 11:30:04 -07:00
Johannes Zellner
7d7b759930
Add navbar with avatar and name to oauth views
2015-10-12 19:56:04 +02:00
Girish Ramakrishnan
04e27496bd
remove tmpreaper (will use systemd for this)
2015-10-12 10:52:55 -07:00
Johannes Zellner
51e2e5ec9c
Use a temporary file for the release tarball copy
...
The pipe failed for me a couple of times in a row
2015-10-12 19:37:33 +02:00
Johannes Zellner
6f2bc555e0
Make application name and cloudron name more apparent in oauth login
2015-10-12 17:26:02 +02:00
Johannes Zellner
a8c43ddf4a
Show app icon instead of cloudron avatar in oauth login
2015-10-12 16:50:49 +02:00
Johannes Zellner
3eabc27877
Make app icon url public to be used in oauth login screen
2015-10-12 16:49:55 +02:00
Johannes Zellner
cd9602e641
changes 0.0.69
2015-10-12 16:47:25 +02:00
Johannes Zellner
ad379bd766
Support the new oauth client id prefix
2015-10-12 15:18:51 +02:00
Johannes Zellner
8303991217
Revert "install specific version of python"
...
The specific version does not create /usr/bin/python but only
the exact version /usr/bin/python2.7
The meta package python is the only one creating that link and
according to https://wiki.ubuntu.com/Python/3 /usr/bin/python
will not point to version 3 anytime soon at all.
This reverts commit be128bbecfd2afe9ef2bdca603a3b26e8ccced7b.
2015-10-12 15:02:05 +02:00
Johannes Zellner
c1047535d4
Update to new manifestformat
2015-10-12 13:22:56 +02:00
Girish Ramakrishnan
12eae2c002
remove 0.0.69
2015-10-11 16:03:08 -07:00
Girish Ramakrishnan
10142cc00b
make a note of appid format
2015-10-11 14:19:38 -07:00
Girish Ramakrishnan
5e1487d12a
appId format has changed in clientdb
2015-10-11 14:16:38 -07:00
Girish Ramakrishnan
39e0c13701
apptest: remove mail addon
2015-10-11 13:53:50 -07:00
Girish Ramakrishnan
c80d984ee6
start the mail addon
2015-10-11 13:48:23 -07:00
Girish Ramakrishnan
3e474767d1
print the values otherwise it gets very confusing
2015-10-11 13:45:02 -07:00
Girish Ramakrishnan
e2b954439c
ensure redis container is stopped before removing it
...
this is required for the configure/update case where the redis container
might be holding some data in memory.
sending redis SIGTERM will make it commit to disk.
2015-10-11 12:08:35 -07:00
Girish Ramakrishnan
950d1eb5c3
remove associated volumes
...
note that this does not remove host mounts
2015-10-11 11:37:23 -07:00
Girish Ramakrishnan
f48a2520c3
remove RSTATE_ERROR
...
if startContainer failed, it will still returning success because
it running the db update result
2015-10-11 11:18:30 -07:00
Girish Ramakrishnan
f366d41034
regenerate shrinkwrap with --no-optional for ldapjs
2015-10-11 10:39:41 -07:00
Girish Ramakrishnan
b3c40e1ba7
test image is now 5.0.0
2015-10-11 10:03:42 -07:00
Girish Ramakrishnan
b686d6e011
use latest docker images
2015-10-11 10:03:42 -07:00
Girish Ramakrishnan
99489e5e77
install specific version of python
2015-10-11 10:02:44 -07:00
Johannes Zellner
5c9ff468cc
Add python to the base image
2015-10-11 18:48:24 +02:00
Johannes Zellner
bf18307168
0.0.69 changes
2015-10-11 18:19:51 +02:00
Johannes Zellner
5663198bfb
Do not log with morgan during test runs for simple auth server
2015-10-11 17:52:22 +02:00
Johannes Zellner
bad50fd78b
Merge branch 'simpleauth'
2015-10-11 17:40:10 +02:00
Johannes Zellner
9bd43e3f74
Update to new manifestformat version 1.9.0
2015-10-11 17:19:39 +02:00
Johannes Zellner
f0fefab8ad
Prefix morgan logs with source
2015-10-11 17:19:39 +02:00
Johannes Zellner
449231c791
Do not show http request logs during tests
2015-10-11 17:19:39 +02:00
Johannes Zellner
bd161ec677
Remove serving up webadmin/ in test case
2015-10-11 17:19:39 +02:00
Johannes Zellner
8040d4ac2d
Add simpleauth logging middleware
2015-10-11 17:19:39 +02:00
Johannes Zellner
06d7820566
read ldap port from config.js
2015-10-11 17:19:39 +02:00
Johannes Zellner
4818a3feee
Specify addon env vars for simple auth
2015-10-11 17:19:39 +02:00
Johannes Zellner
9fcb2c0733
Fix the check install to keep up with the base image version
2015-10-11 17:19:39 +02:00
Johannes Zellner
6906b4159a
Revert "Attach accessTokens to req for further use"
...
This reverts commit 895812df1e9226415640b74a001c1f8c1affab01.
2015-10-11 17:19:39 +02:00
Johannes Zellner
763b9309f6
Fixup the simple auth unit tests
2015-10-11 17:19:39 +02:00
Johannes Zellner
2bb4d1c22b
Remove the simpleauth route handler
2015-10-11 17:19:39 +02:00
Johannes Zellner
23303363ee
Move simple auth to separate express server
2015-10-11 17:19:39 +02:00
Johannes Zellner
79c17abad2
Add simpleAuthPort to config.js
2015-10-11 17:19:39 +02:00
Johannes Zellner
3234e0e3f0
Fixup the simple auth logout route and add tests
2015-10-11 17:19:39 +02:00
Johannes Zellner
982cd1e1f3
Attach accessTokens to req for further use
...
This helps with extracting the token, which can come
from various places like headers, body or query
2015-10-11 17:19:38 +02:00
Johannes Zellner
df39fc86a4
add simple auth login unit tests
2015-10-11 17:19:38 +02:00
Johannes Zellner
870e0c4144
Fixup the simple login routes for unknown clients
2015-10-11 17:19:38 +02:00
Johannes Zellner
57704b706e
Handle 404 in case subdomain does not exist on delete attempt
2015-10-11 17:19:38 +02:00
Johannes Zellner
223e0dfd1f
Add SIMPLE_AUTH_ORIGIN
2015-10-11 17:19:38 +02:00
Johannes Zellner
51c438b0b6
Return correct error codes
2015-10-11 17:19:38 +02:00
Girish Ramakrishnan
b3fa76f8c5
0.0.68 changes
2015-10-10 14:39:53 -07:00
Girish Ramakrishnan
93d210a754
Bump the graphite image
2015-10-10 09:57:07 -07:00
Girish Ramakrishnan
8a77242072
clear version field in rerelease
2015-10-09 13:11:53 -07:00
Girish Ramakrishnan
c453df55d6
More 0.0.67 changes
2015-10-09 12:05:03 -07:00
Girish Ramakrishnan
265ee15ac7
fix oldConfig madness
...
There is a crash when:
* App is configured. So, oldConfig now has {loc, access, portb }
* Cloudron is restored. The restore code path accesses the oldConfig.manifest.addons.
oldConfig is basically a messaging passing thing. It's not really a
db field. With that spirit, we simply pass an empty message in setup_infra.sh
2015-10-09 11:59:25 -07:00
Girish Ramakrishnan
d0da47e0b3
fix comment
2015-10-09 11:48:59 -07:00
Girish Ramakrishnan
0e8553d1a7
code path applies to upgraded cloudrons as well
2015-10-09 11:08:54 -07:00
Girish Ramakrishnan
9229dd2fd5
Add oldConfigJson in schema file
2015-10-09 11:08:16 -07:00
Girish Ramakrishnan
75d69050d5
0.0.67 changes
2015-10-09 10:06:11 -07:00
Girish Ramakrishnan
c2a8744240
fix typo
2015-10-09 10:04:50 -07:00
Girish Ramakrishnan
bc7e07f6a6
mail: not required to expose port 25
2015-10-09 09:56:37 -07:00
Girish Ramakrishnan
bfd6f8965e
print mail server ip
2015-10-09 09:50:50 -07:00
Girish Ramakrishnan
eb1e4a1aea
mail now runs on port 2500
2015-10-09 09:29:17 -07:00
Girish Ramakrishnan
dc3e8a9cb5
mail now runs on port 2500
2015-10-09 09:13:28 -07:00
Johannes Zellner
494bcc1711
prefix oauth client id and app ids
2015-10-09 11:45:53 +02:00
Johannes Zellner
7e071d9f23
add simpleauth addon hooks
2015-10-09 11:44:32 +02:00
Johannes Zellner
6f821222db
Add simple auth routes
2015-10-09 11:37:46 +02:00
Johannes Zellner
6e464dbc81
Add simple auth route handlers
2015-10-09 11:37:39 +02:00
Johannes Zellner
be8ef370c6
Add simple auth logic for login/logout
2015-10-09 11:37:17 +02:00
Johannes Zellner
39a05665b0
Update node modules to support v4.1.1
...
The sqlite3 versions we had used so far did not work with
new node versions
2015-10-09 10:15:10 +02:00
Girish Ramakrishnan
737e22116a
Reword upgrade warning
2015-10-08 16:31:44 -07:00
Girish Ramakrishnan
43e1e4829f
new test image 3.0.0
2015-10-08 16:07:14 -07:00
Girish Ramakrishnan
390285d9e5
version 0.0.66 changes
2015-10-08 13:16:23 -07:00
Girish Ramakrishnan
c95778178f
make rootfs readonly based on targetBoxVersion
2015-10-08 11:48:33 -07:00
Girish Ramakrishnan
04870313b7
Launch apps with readonly rootfs
...
We explicitly mark /tmp, /run and /var/log as writable volumes.
Docker creates such volumes in it's own volumes directory. Note
that these volumes are separate from host binds (/app/data).
When removing the container the docker created volumes are
removed (but not host binds).
Fixes #196
2015-10-08 11:33:17 -07:00
Girish Ramakrishnan
6ca040149c
run addons as readonly
2015-10-08 11:07:28 -07:00
Girish Ramakrishnan
e487b9d46b
update mail image
2015-10-08 11:06:29 -07:00
Girish Ramakrishnan
1375e16ad2
mongodb: readonly rootfs
2015-10-08 10:24:15 -07:00
Girish Ramakrishnan
312f1f0085
mysql: readonly rootfs
2015-10-08 09:43:05 -07:00
Girish Ramakrishnan
721900fc47
postgresql: readonly rootfs
2015-10-08 09:20:25 -07:00
Girish Ramakrishnan
2d815a92a3
redis: use readonly rootfs
2015-10-08 09:00:43 -07:00
Girish Ramakrishnan
1c192b7c11
pass options param in setup call
2015-10-08 02:08:27 -07:00
Girish Ramakrishnan
8ef15df7c0
0.0.65 changes
2015-10-07 18:49:53 -07:00
Girish Ramakrishnan
4a887336bc
Do not send app down mails for dev mode apps
...
Fixes #501
2015-10-07 18:46:48 -07:00
Girish Ramakrishnan
8f6521f942
pass addon options to all functions
2015-10-07 16:10:08 -07:00
Girish Ramakrishnan
fbdfaa4dc7
rename setup and teardown functions of oauth addon
2015-10-07 15:55:57 -07:00
Girish Ramakrishnan
bf4290db3e
remove token addon, its a relic of the past
2015-10-07 15:44:55 -07:00
Johannes Zellner
94ad633128
Also unset the returnTo after login
2015-10-01 16:26:17 +02:00
Johannes Zellner
c552917991
Reset the target url after oauth login
...
This is required for the cloudron button to work for users
which are not logged in
2015-10-01 16:16:29 +02:00
Johannes Zellner
a7ee8c853e
Keep checkInstall in sync
2015-09-30 16:12:51 +02:00
Girish Ramakrishnan
29e4879451
fix test image version
2015-09-29 20:22:38 -07:00
Girish Ramakrishnan
8b92344808
redirect stderr
2015-09-29 19:23:39 -07:00
Girish Ramakrishnan
0877cec2e6
Fix EE leak warning
2015-09-29 14:40:23 -07:00
Girish Ramakrishnan
b1ca577be7
use newer test image that dies immediately on stop/term
2015-09-29 14:33:07 -07:00
Girish Ramakrishnan
9b484f5ac9
new version of mysql prints error with -p
2015-09-29 14:13:58 -07:00
Girish Ramakrishnan
b6a9fd81da
refactor our test docker image details
2015-09-29 13:59:17 -07:00
Girish Ramakrishnan
109f9567ea
0.0.64 changes
2015-09-29 13:21:33 -07:00
Girish Ramakrishnan
f19113f88e
rename test iamge under cloudron/
2015-09-29 12:52:54 -07:00
Girish Ramakrishnan
3837bee51f
retry pulling image
...
fixes #497
2015-09-29 12:47:03 -07:00
Girish Ramakrishnan
748eadd225
stop apps and installer when retiring cloudron
...
we cannot put this in stop.sh because that is called during update.
2015-09-29 11:58:14 -07:00
Girish Ramakrishnan
b8e115ddf6
move images script
2015-09-28 23:58:00 -07:00
Girish Ramakrishnan
11d4df4f7d
fix loop (by actually using nextPage link)
2015-09-28 23:55:31 -07:00
Girish Ramakrishnan
0c285f21c1
rework images script
2015-09-28 23:47:13 -07:00
Girish Ramakrishnan
89c3296632
debug the status code as well
2015-09-28 23:18:50 -07:00
Girish Ramakrishnan
db55f0696e
stringify object when appending to string
2015-09-28 23:10:09 -07:00
Girish Ramakrishnan
03d4ae9058
new base image 0.4.0
2015-09-28 19:33:58 -07:00
Girish Ramakrishnan
f8b41b703c
Use fqdn to generate domain name of txt records
2015-09-28 17:20:59 -07:00
Girish Ramakrishnan
c9bf017637
0.0.63 changes
2015-09-28 17:00:50 -07:00
Girish Ramakrishnan
2a989e455c
Ensure TXT records are added as dotted domains
...
Fixes #498
2015-09-28 16:35:58 -07:00
Girish Ramakrishnan
cd24decca0
Send dns status requests in series
...
And abort status checking after the first one fails. Otherwise, this
bombards the appstore unnecessarily. And checks for status of other
things unnecessarily.
2015-09-28 16:23:39 -07:00
Johannes Zellner
0d78150f10
Log forwarding is no more
2015-09-28 14:33:06 +02:00
Johannes Zellner
f36946a8aa
Forward the backup trigger status code and error message
2015-09-28 14:20:10 +02:00
Girish Ramakrishnan
5c51619798
Version 0.0.62 changes
2015-09-26 00:04:52 -07:00
Girish Ramakrishnan
f39842a001
ldap: allow non-anonymous searches
...
Add LDAP_BIND_DN and LDAP_BIND_PASSWORD that allow
apps to bind before a search. There appear to be two kinds of
ldap flows:
1. App simply binds using cn=<username>,$LDAP_USERS_BASE_DN. This
works swimmingly today.
2. App searches the username under a "bind_dn" using some admin
credentials. It takes the result and uses the first dn in the
result as the user dn. It then binds as step 1.
This commit tries to help out the case 2) apps. These apps really
insist on having some credentials for searching.
2015-09-25 21:28:47 -07:00
Girish Ramakrishnan
a022bdb30d
set default version to null to override commander built-in
2015-09-22 22:58:27 -07:00
Girish Ramakrishnan
2cfb91d0ce
allow version to be specified in various commands
2015-09-22 22:55:55 -07:00
Girish Ramakrishnan
2a39526a4c
Remove old app ids from updatechecker state
...
Fixes #472
2015-09-22 22:46:14 -07:00
Girish Ramakrishnan
ded5d4c98b
debug message when notification is skipped
2015-09-22 22:41:42 -07:00
Girish Ramakrishnan
a0ca59c3f2
Fix typo
2015-09-22 20:22:17 -07:00
Girish Ramakrishnan
5885d76b89
Version 0.0.61 changes
2015-09-22 16:15:43 -07:00
Girish Ramakrishnan
53cfc49807
Save version instead of boolean so we get notified when version changes
...
part of #472
2015-09-22 16:11:15 -07:00
Girish Ramakrishnan
942eb579e4
save/restore notification state of updatechecker
...
part of #472
2015-09-22 16:11:04 -07:00
Girish Ramakrishnan
5cb1a2d120
0.0.60 changes
2015-09-22 13:04:45 -07:00
Girish Ramakrishnan
5819cfe412
Fix progress message
2015-09-22 13:02:09 -07:00
Johannes Zellner
5cb62ca412
Remove start/stop buttons in webadmin
...
Fixes #495
2015-09-22 22:00:42 +02:00
Johannes Zellner
df10c245de
app.js is no more
2015-09-22 22:00:42 +02:00
Girish Ramakrishnan
4a804dc52b
Do a complete backup for updates
...
The backup cron job ensures backups every 4 hours which simply does
a 'box' backup listing. If we do only a 'box' backup during update,
this means that this cron job skips doing a backup and thus the apps
are not backed up.
This results in the janitor on the CaaS side complaining that the
app backups are too old.
Since we don't stop apps anymore during updates, it makes sense
to simply backup everything for updates as well. This is probably
what the user wants anyway.
2015-09-22 12:51:58 -07:00
Girish Ramakrishnan
53fa339363
0.0.59 changes
2015-09-21 21:56:16 -07:00
Girish Ramakrishnan
5f0bb0c6ce
0.0.58 changes
2015-09-21 16:26:03 -07:00
Girish Ramakrishnan
ed2f25a998
better debugs
2015-09-21 16:02:58 -07:00
Girish Ramakrishnan
7510c9fe29
Fix typo
2015-09-21 15:57:06 -07:00
Girish Ramakrishnan
78a1d53728
copy old backup as failed/errored apps
...
This ensures that
a) we don't get emails from janitor about bad app backups
b) that the backups are persisted over the s3 lifecycle
Fixes #493
2015-09-21 15:03:10 -07:00
Girish Ramakrishnan
e9b078cd58
add backups.copyLastBackup
2015-09-21 14:14:43 -07:00
Girish Ramakrishnan
dd8b928684
aws: add copyObject
2015-09-21 14:02:00 -07:00
Girish Ramakrishnan
3dec6ac9f1
0.0.57 changes
2015-09-21 11:12:09 -07:00
Girish Ramakrishnan
185b574bdc
Add custom apparmor profile for cloudron apps
...
Docker generates an apparmor profile on the fly under /etc/apparmor.d/docker.
This profile gets overwritten on every docker daemon start.
This profile allows processes to ptrace themselves. This is required by
circus (python process manager) for reasons unknown to me. It floods the logs
with
audit[7623]: <audit-1400> apparmor="DENIED" operation="ptrace" profile="docker-default" pid=7623 comm="python3.4" requested_mask="trace" denied_mask="trace" peer="docker-default"
This is easily tested using:
docker run -it cloudron/base:0.3.3 /bin/bash
a) now do ps
b) journalctl should show error log as above
docker run --security-opt=apparmor:docker-cloudron-app -it cloudron/base:0.3.3 /bin/bash
a) now do ps
b) no error!
Note that despite this, the process may not have ability to ptrace since it does not
have CAP_PTRACE. Also, security-opt is the profile name (inside the apparmor config file)
and not the filename.
References:
https://groups.google.com/forum/#!topic/docker-user/xvxpaceTCyw
https://github.com/docker/docker/issues/7276
https://bugs.launchpad.net/ubuntu/+source/docker.io/+bug/1320869
This is an infra update because we need to recreate containers to get the right profile.
Fixes #492
2015-09-21 11:01:44 -07:00
Girish Ramakrishnan
a89726a8c6
Add custom debug.formatArgs to remove timestamp prefix in logs
...
Fixes #490
See also:
https://github.com/visionmedia/debug/issues/216
2015-09-21 09:05:14 -07:00
Girish Ramakrishnan
c80aca27e6
remove unnecessary supererror call
2015-09-21 09:04:16 -07:00
Girish Ramakrishnan
4c9ec582dc
0.0.56 changes
2015-09-18 14:47:57 -07:00
Girish Ramakrishnan
029acab333
use correct timezone in updater
...
fixes #491
2015-09-18 14:46:44 -07:00
Girish Ramakrishnan
4f9f10e130
timezone detection is based on browser location/ip and not cloudron region intentionally
2015-09-18 13:40:22 -07:00
Girish Ramakrishnan
9ba11d2e14
print body on failure
2015-09-18 12:03:48 -07:00
Girish Ramakrishnan
23a5a1f79f
timezone is already determined automatically using activation
2015-09-18 12:02:36 -07:00
Girish Ramakrishnan
e8dc617d40
print tz for debugging
2015-09-18 10:51:52 -07:00
Girish Ramakrishnan
28b000c820
admin tool is now merged into caas tool
2015-09-17 21:25:07 -07:00
Girish Ramakrishnan
d56794e846
clear backup progress when initiating backup
...
this ensures that tools can do:
1. backup
2. wait_for_backup
without the synchronous clear, we might get the progress state of
an earlier backup.
2015-09-17 21:17:59 -07:00
Girish Ramakrishnan
30320e0ac6
Wait for backup to complete
...
Fixes #351
2015-09-17 16:44:44 -07:00
Girish Ramakrishnan
88b682a317
take ip as first argument instead of --ip
2015-09-17 16:40:06 -07:00
Girish Ramakrishnan
2663ec7da0
cloudron.backup does not wait for backup to complete
2015-09-17 16:35:59 -07:00
Girish Ramakrishnan
eec4ae98cd
add comment for purpose on internal server
2015-09-17 16:27:46 -07:00
Girish Ramakrishnan
6c5a5c0882
remove tail-stream
2015-09-17 16:21:18 -07:00
Girish Ramakrishnan
1d27fffe44
remove ununsed requires
2015-09-17 16:21:03 -07:00
Girish Ramakrishnan
a3383b1f98
remove logs route
...
most of this stuff doesn't work anyways since we moved to systemd
2015-09-17 15:44:05 -07:00
Girish Ramakrishnan
f9c2b0acd1
remove cloudronLogin
...
alternative: admin/admin ssh <ip>
2015-09-17 15:34:17 -07:00
Girish Ramakrishnan
a9444ed879
rename login to ssh
2015-09-17 15:34:04 -07:00
Girish Ramakrishnan
8d5a3ecd69
admin: remove the cloudron chooser
...
This needlessly ties down this tool to digitalocean
2015-09-17 15:29:44 -07:00
Girish Ramakrishnan
c31a0f4e09
Store dates as iso strings in database
...
ideally, the database schema should be TIMESTAMP
2015-09-17 13:51:55 -07:00
Girish Ramakrishnan
44ff676eef
store dates as iso strings
2015-09-17 13:48:20 -07:00
Girish Ramakrishnan
4bb017b740
verify next version exists
2015-09-17 12:11:14 -07:00
Girish Ramakrishnan
0f2435c308
Version 0.0.55 changes
2015-09-16 17:02:22 -07:00
Girish Ramakrishnan
739db23514
Use the default timezone in settings
...
Fixes #485
2015-09-16 16:36:08 -07:00
Girish Ramakrishnan
8598fb444b
store timezone in config.js (part of provision data)
2015-09-16 15:54:56 -07:00
Girish Ramakrishnan
0cd56f4d4c
configure cloudron to use UTC
...
local timezone should be tracked by the webadmin/box code
2015-09-16 13:17:32 -07:00
Girish Ramakrishnan
0b630ff504
Remove debug that is flooding the logs
2015-09-16 10:50:15 -07:00
Girish Ramakrishnan
84169dea3d
Do not set process.env.NODE_TLS_REJECT_UNAUTHORIZED
...
Doing so will affect all https requests which is dangerous.
We have these options to solve this:
1. Use superagent.ca(). Appstore already provides wildcard certs
for dev, staging signed with appstore_ca. But we then need to
send across the appstore_ca cert across in the provision call.
This is a bit of work.
2. Convert superagent into https.request calls and use the
rejectUnauthorized option.
3. Simply use http. This is what is done in this commit.
Fixes #488
2015-09-16 10:36:03 -07:00
Girish Ramakrishnan
e328ec2382
0.0.54 changes
2015-09-16 10:35:59 -07:00
Girish Ramakrishnan
d83b5de47a
reserve the ldap and oauthproxy port
2015-09-16 10:12:59 -07:00
Girish Ramakrishnan
2719c4240f
Get oauth proxy port from the configs
2015-09-16 10:06:34 -07:00
Girish Ramakrishnan
4b5ac67993
Revert "Disable rsyslog"
...
This reverts commit 3c5db59de2b6c2ef8891ecba54496335b5e2d55f.
Don't revert this. Maybe some system services use this.
2015-09-16 09:48:47 -07:00
Johannes Zellner
d749756b53
Do not show the update action button in non mobile view
2015-09-16 09:36:46 +02:00
Johannes Zellner
0401c61c15
Add tooltip text for the app action icons
2015-09-16 09:36:22 +02:00
Johannes Zellner
34f45da2de
Show indicator when app update is available
...
Fixes #489
2015-09-16 09:28:43 +02:00
Girish Ramakrishnan
baecbf783c
journalctl seems to barf on this debug
2015-09-15 20:50:22 -07:00
Girish Ramakrishnan
2f141cd6e0
Make the times absurdly high but that is how long in takes
2015-09-15 18:56:25 -07:00
Girish Ramakrishnan
1296299d02
error is undefined
2015-09-15 18:27:09 -07:00
Girish Ramakrishnan
998ac74d32
oldConfig.location can be null
...
If we had an update, location is not part of oldConfig. if we now do
an infra update, location is undefined.
2015-09-15 18:08:29 -07:00
Girish Ramakrishnan
b4a34e6432
Explicity debug the fields
...
for some reason, journalctl barfs on this line
2015-09-15 14:55:20 -07:00
Girish Ramakrishnan
cb73218dfe
Disable rsyslog
2015-09-15 14:32:47 -07:00
Girish Ramakrishnan
5523c2d34a
Disable forwarding to syslog
2015-09-15 14:29:16 -07:00
Girish Ramakrishnan
01889c45a2
Fix typo
2015-09-15 14:04:30 -07:00
Girish Ramakrishnan
e89b4a151e
0.0.52 is folded into 0.0.53
2015-09-15 11:57:50 -07:00
Girish Ramakrishnan
ec235eafe8
fix staging with stripped releases
2015-09-15 11:25:03 -07:00
Girish Ramakrishnan
d99720258a
gray out unreachable releases
2015-09-15 11:17:59 -07:00
Girish Ramakrishnan
3f064322e4
strip unreachable releases when processing
2015-09-15 11:11:56 -07:00
Girish Ramakrishnan
11592279e2
fix regexp for non-dev
2015-09-15 10:41:36 -07:00
Girish Ramakrishnan
31b4923eb2
better output
2015-09-15 10:33:36 -07:00
Girish Ramakrishnan
cfdfb9a907
release: add edit command
2015-09-15 09:48:05 -07:00
Girish Ramakrishnan
e7a21c821e
0.0.53 changes
2015-09-14 22:20:13 -07:00
Girish Ramakrishnan
e70c9d55db
apptask: retry for external error as well
2015-09-14 21:45:27 -07:00
Girish Ramakrishnan
268aee6265
Return busy code for 420 response
2015-09-14 21:44:44 -07:00
Girish Ramakrishnan
255422d5be
0.0.52 changes
2015-09-14 17:28:31 -07:00
Girish Ramakrishnan
1ba7b0e0fb
context is raw text
2015-09-14 17:25:27 -07:00
Girish Ramakrishnan
72788fdb11
add note on how to test the oom
2015-09-14 17:20:30 -07:00
Girish Ramakrishnan
435afec13c
Print OOM context
2015-09-14 17:18:11 -07:00
Girish Ramakrishnan
2cb1877669
Do not reconnect for now
2015-09-14 17:10:49 -07:00
Girish Ramakrishnan
edd672cba7
fix typo
2015-09-14 17:07:44 -07:00
Girish Ramakrishnan
991f37fe05
Provide app information if possible
2015-09-14 17:06:04 -07:00
Girish Ramakrishnan
c147d8004b
Add appdb.getByContainerId
2015-09-14 17:01:04 -07:00
Girish Ramakrishnan
cdcc4dfda8
Get notification on app oom
...
currently, oom events arrive a little late :
https://github.com/docker/docker/issues/16074
fixes #489
2015-09-14 16:51:32 -07:00
Girish Ramakrishnan
2eaba686fb
apphealthmonitor.js is not executable
2015-09-14 16:51:32 -07:00
Girish Ramakrishnan
236032b4a6
Remove supererror setup in oauthproxy and apphealthmonitor
2015-09-14 16:49:10 -07:00
Girish Ramakrishnan
5fcba59b3e
set memory limits for addons
...
mysql, postgresql, mongodb - 100m each
mail, graphite, redis (each instance) - 75m
For reference, in yellowtent:
mongo - 5m
postgresql - 33m
mysql - 3.5m
mail: 26m
graphite - 26m
redis - 32m
2015-09-14 13:47:45 -07:00
Girish Ramakrishnan
6efd8fddeb
fix require paths
2015-09-14 13:00:03 -07:00
Girish Ramakrishnan
02b4990cb1
Version 0.0.51 changes
2015-09-14 12:24:22 -07:00
Girish Ramakrishnan
8aff2b9e74
remove oauthproxy systemd configs
2015-09-14 12:02:38 -07:00
Girish Ramakrishnan
fbae432b98
merge oauthproxy server into box server
2015-09-14 11:58:28 -07:00
Girish Ramakrishnan
9cad7773ff
refactor code to prepare for merge into box server
2015-09-14 11:28:49 -07:00
Girish Ramakrishnan
4adf122486
oauthproxy: refactor for readability
2015-09-14 11:22:33 -07:00
Girish Ramakrishnan
ea47c26d3f
apphealthmonitor is not a executable anymore
2015-09-14 11:09:58 -07:00
Girish Ramakrishnan
f57aae9545
Fix typo in assert
2015-09-14 11:09:41 -07:00
Girish Ramakrishnan
cdeb830706
Add apphealthmonitor.stop
2015-09-14 11:02:06 -07:00
Girish Ramakrishnan
0c9618f19a
Add ldap.stop
2015-09-14 11:01:35 -07:00
Girish Ramakrishnan
1cd9d07d8c
Merge apphealthtask into box server
...
We used to run this as a separate process but no amount of node/v8 tweaking
makes them run as standalone with 50M RSS.
Three solutions were considered for the memory issue:
1. Use systemd timer. apphealthtask needs to run quiet frequently (10 sec)
for the ui to get the app health update immediately after install.
2. Merge into box server (this commit)
3. Increase memory to 80M. This seems to make apphealthtask run as-is.
2015-09-14 10:52:11 -07:00
Girish Ramakrishnan
f028649582
Rename app.js to box.js
2015-09-14 10:43:47 -07:00
Johannes Zellner
11bf39374c
0.0.50 changes
2015-09-14 12:37:39 +02:00
Johannes Zellner
d57236959a
choose aws subdomain backend for test purpose
2015-09-13 22:02:04 +02:00
Johannes Zellner
ebe975f463
Also send data with the domain deletion
2015-09-13 22:02:04 +02:00
Johannes Zellner
a94267fc98
Use caas.js for subdomain business
2015-09-13 22:02:04 +02:00
Johannes Zellner
f186ea7cc3
Add initial caas.js
2015-09-13 22:02:04 +02:00
Girish Ramakrishnan
29e05b1caa
make janitor a systemd timer
...
one process lesser
2015-09-11 18:43:51 -07:00
Girish Ramakrishnan
6945a712df
limit node memory usage
...
node needs to be told how much space it can usage, otherwise it keeps
allocating and we cannot keep it under 50M. keeping old space to 30M,
lets the memory hover around 40M
there are many options to v8 but I haven't explored them all:
--expose_gc - allows scripts to call gc()
--max_old_space_size=30 --max_semi_space_size=2048 (old/new space)
node first allocates new objects in new space. if these objects are in use
around for some time, it moves them to old space. the idea here is that it
runs gc aggressively on new space since new objects die more than old ones.
the new space is split into two halves of equal size called semi spaces.
--gc_interval=100 --optimize_for_size --max_executable_size=5 --gc_global --stack_size=1024
http://erikcorry.blogspot.com/2012/11/memory-management-flags-in-v8.html
http://jayconrod.com/posts/55/a-tour-of-v8-garbage-collection
https://code.google.com/p/chromium/issues/detail?id=280984
http://stackoverflow.com/questions/30252905/nodejs-decrease-v8-garbage-collector-memory-usage
http://www.appfruits.com/2014/08/running-node-js-on-arduino-yun/
note: this is not part of shebang because linux shebang does not support args! so we cannot
pass node args as part of shebang.
2015-09-10 21:24:36 -07:00
Girish Ramakrishnan
04cf382de5
systemctl stop
2015-09-10 20:45:53 -07:00
Girish Ramakrishnan
03048d7d2f
set memorylimit for crashnotifier as well
2015-09-10 14:19:44 -07:00
Girish Ramakrishnan
38884bc0e6
0.0.49 changes
2015-09-10 11:40:58 -07:00
Girish Ramakrishnan
a4d0394d1a
Revert "Move ssh to port 919"
...
This reverts commit 4e4890810f3a22e7ec990cc44381a2c243044d99.
This change is not done yet
2015-09-10 11:40:27 -07:00
Girish Ramakrishnan
28b768b146
Fix app autoupdater logic
...
The main issue was that app.portBindings is never null but { }
2015-09-10 11:39:29 -07:00
Girish Ramakrishnan
8292e78ef2
Move ssh to port 919
2015-09-10 10:32:59 -07:00
Girish Ramakrishnan
c1e4dceb01
ssh is now on port 919
2015-09-10 10:08:40 -07:00
Johannes Zellner
6243404d1d
0.0.48 changes
2015-09-10 14:39:30 +02:00
Johannes Zellner
954d14cd66
Warn the user when he performs an upgrade instead of update
...
Fixes #481
2015-09-10 14:33:00 +02:00
Johannes Zellner
2f5e9e2e26
We do have global rest error handler which take care of re-login
2015-09-10 14:16:59 +02:00
Johannes Zellner
b3c058593f
Force reload page if version has changed
...
Fixes #480
2015-09-10 13:58:27 +02:00
Johannes Zellner
3e47e11992
Ensure the stylesheets are in correct order
...
Fixes #484
2015-09-10 13:32:33 +02:00
Girish Ramakrishnan
6fe67c93fe
0.0.47 changes
2015-09-09 17:03:13 -07:00
Girish Ramakrishnan
8c7dfdcef2
Wait upto 3 seconds for the app to quit
...
Otherwise systemd will kill us and we get crash emails.
Fixes #483
2015-09-09 16:57:43 -07:00
Girish Ramakrishnan
c88591489d
make apps test work
2015-09-09 15:51:56 -07:00
Girish Ramakrishnan
719404b6cf
lint
2015-09-09 15:03:43 -07:00
Girish Ramakrishnan
f2c27489c8
test: make unregister subdomain test work
2015-09-09 14:36:09 -07:00
Girish Ramakrishnan
d6a0c93f2f
test: make register subdomain work
2015-09-09 14:32:05 -07:00
Girish Ramakrishnan
c64d5fd2e3
error is already Error
2015-09-09 14:26:53 -07:00
Girish Ramakrishnan
5b62aeb73a
make aws endpoint configurable for tests
2015-09-09 12:03:47 -07:00
Girish Ramakrishnan
7e83f2dd4a
intercept delete calls to test image
2015-09-09 11:32:09 -07:00
Girish Ramakrishnan
ed48f84355
give taskmanager couple of seconds to kill all processes
2015-09-09 10:39:38 -07:00
Girish Ramakrishnan
f3d15cd4a5
fix initialization of apps-test
2015-09-09 10:22:17 -07:00
Girish Ramakrishnan
8c270269db
remove dead code
2015-09-09 09:28:06 -07:00
Johannes Zellner
bea605310a
Use memoryLimit from manifest for graphs if specified
2015-09-09 17:11:54 +02:00
Johannes Zellner
8184894563
Remove upgrade view altogether
2015-09-09 16:47:13 +02:00
Johannes Zellner
47a87cc298
Remove upgrade link in the menu
2015-09-09 16:46:28 +02:00
Johannes Zellner
553a6347e6
Actually hand the backupKey over in an update
2015-09-09 12:37:09 +02:00
Girish Ramakrishnan
422b65d934
0.0.46 changes
2015-09-09 01:00:12 -07:00
Girish Ramakrishnan
a35ebd57f9
call iteratorDone when finished
2015-09-09 00:43:42 -07:00
Girish Ramakrishnan
97174d7af0
make cloudron-test pass
2015-09-08 22:13:50 -07:00
Girish Ramakrishnan
659268c04a
provide default backupPrefix for tests
2015-09-08 21:16:50 -07:00
Girish Ramakrishnan
67d06c5efa
better debug messages
2015-09-08 21:11:46 -07:00
Girish Ramakrishnan
6e6d8c0bc5
awscredentials is now POST
2015-09-08 21:02:21 -07:00
Girish Ramakrishnan
658af3edcf
disable failing subdomains test
...
This needs aws mock
2015-09-08 20:38:52 -07:00
Girish Ramakrishnan
9753d9dc7e
removeUser takes a userId and not username
2015-09-08 16:38:02 -07:00
Girish Ramakrishnan
2fa3a3c47e
0.0.45 changes
2015-09-08 12:58:06 -07:00
Girish Ramakrishnan
4e331cfb35
retry registering and unregistering subdomain
2015-09-08 12:51:25 -07:00
Girish Ramakrishnan
a1fa94707b
Remove ununsed error codes
2015-09-08 11:28:29 -07:00
Girish Ramakrishnan
88f1107ed6
Remove unused AWSError
2015-09-08 11:26:35 -07:00
Girish Ramakrishnan
27e4810239
0.0.44 changes
2015-09-08 10:31:02 -07:00
Girish Ramakrishnan
e97b9fcc60
Do not start apptask for apps that are installed and running
2015-09-08 10:24:39 -07:00
Girish Ramakrishnan
71fe643099
Check if we have reached concurrency limit before locking
2015-09-08 10:20:34 -07:00
Johannes Zellner
74874a459d
Remove ... for labels while showing the progress bar
2015-09-08 15:49:10 +02:00
Johannes Zellner
7c5fc17500
Cleanup linter issues in updatechecker.js
2015-09-08 10:03:37 +02:00
Girish Ramakrishnan
cbdae3547b
0.0.43 changes
2015-09-07 23:13:14 -07:00
Girish Ramakrishnan
a5d122c0b3
Leave a note on singleshot After= behavior
...
"Actually oneshot is also a bit special and that is where RemainAfterExit comes in. For oneshot, systemd waits for the process to exit before it starts any follow-up units (and with multiple ExecStarts I assume it waits for all of them). So that automatically leads to the scheme in berbae's last post. However, with RemainAfterExit, the unit remains active even though the process has exited, so this makes it look more like "normal" service with "
2015-09-07 22:37:23 -07:00
Girish Ramakrishnan
26aefadfba
systemd: fix crashnotifier
2015-09-07 21:40:01 -07:00
Girish Ramakrishnan
51a28842cf
systemd: pass the instance name as argument
2015-09-07 21:16:22 -07:00
Girish Ramakrishnan
210c2f3cc1
Output some logs in crashnotifier
2015-09-07 21:10:00 -07:00
Girish Ramakrishnan
773c326eb7
systemd: just wait for 5 seconds for box to die
2015-09-07 20:58:14 -07:00
Girish Ramakrishnan
cb2fb026c5
systemd: do not restart crashnotifier
2015-09-07 20:54:58 -07:00
Girish Ramakrishnan
47b662be09
Remove unnecessary alias
2015-09-07 20:53:26 -07:00
Girish Ramakrishnan
a4731ad054
200m is a more sane memory limit
2015-09-07 20:48:29 -07:00
Girish Ramakrishnan
aa33938fb5
systemd: fix config files
2015-09-07 20:46:32 -07:00
Girish Ramakrishnan
edfe8f1ad0
disable pager when collecting logs
2015-09-07 20:27:27 -07:00
Girish Ramakrishnan
41399a2593
Make crashnotifier.js executable
2015-09-07 20:15:13 -07:00
Girish Ramakrishnan
2a4c467ab8
systemd: Fix crashnotifier
2015-09-07 20:14:37 -07:00
Girish Ramakrishnan
1ee09825a0
stop systemd target instead of supervisor
2015-09-07 20:11:19 -07:00
Girish Ramakrishnan
6be6092c0e
Add memory limits on services
2015-09-07 19:16:34 -07:00
Girish Ramakrishnan
e76584b0da
Move from supervisor to systemd
...
This removes logrotate as well since we use systemd logging
2015-09-07 14:31:25 -07:00
Girish Ramakrishnan
0a679da968
Type belongs to service
2015-09-07 14:10:34 -07:00
Girish Ramakrishnan
59d174004e
box code has moved to systemd
2015-09-07 11:19:16 -07:00
Girish Ramakrishnan
d0d0d95475
0.0.42 changes
2015-09-05 09:21:59 -07:00
Girish Ramakrishnan
b3816615db
run upto 5 apptasks in parallel
...
fixes #482
2015-09-05 09:17:46 -07:00
Johannes Zellner
b08a6840f5
changes for 0.0.41
2015-08-31 21:49:37 -07:00
Johannes Zellner
212d0bd55a
Revert "Add hack for broken app backup tarballs"
...
This reverts commit 9723951bfc .
2015-08-31 21:44:24 -07:00
Girish Ramakrishnan
77ada9c151
Copy upgrade flag
2015-08-31 19:23:43 -07:00
Girish Ramakrishnan
712ada940e
Add hack for broken app backup tarballs
2015-08-31 18:58:38 -07:00
Girish Ramakrishnan
222e6b6611
0.0.40 changes
2015-08-31 09:32:12 -07:00
Johannes Zellner
ba690c6346
Add missing records argument
2015-08-30 23:00:01 -07:00
Johannes Zellner
e910e19f57
Fix debug tag
2015-08-30 22:54:52 -07:00
Johannes Zellner
0c2532b0b5
Give default value to config.dnsInSync
2015-08-30 22:35:44 -07:00
Johannes Zellner
9c9b17a5f0
Remove cloudron.config prior to every test run
2015-08-30 22:35:44 -07:00
Johannes Zellner
816dea91ec
Assert for dns record values
2015-08-30 22:35:44 -07:00
Johannes Zellner
c228f8d4d5
Merge admin dns and mail dns setup
...
This now also checks if the mail records are in sync
2015-08-30 22:35:43 -07:00
Johannes Zellner
05bb99fad4
give dns record changeIds as a result for addMany()
2015-08-30 22:35:43 -07:00
Johannes Zellner
51b2457b3d
Setup webadmin domain on the box side
2015-08-30 22:35:43 -07:00
Girish Ramakrishnan
ed71fca23e
Fix css
2015-08-30 22:25:18 -07:00
Girish Ramakrishnan
20e8e72ac2
reserved blocks are used
2015-08-30 22:24:57 -07:00
Girish Ramakrishnan
13fe0eb882
Only display one donut for memory usage
2015-08-30 22:13:01 -07:00
Girish Ramakrishnan
e0476c9030
Reboot is a post route
2015-08-30 21:38:54 -07:00
Girish Ramakrishnan
70c93c7be7
Provision only once
2015-08-30 21:10:57 -07:00
Girish Ramakrishnan
b73fc70ecf
limit systemd journal size
2015-08-30 21:04:39 -07:00
Johannes Zellner
eab33150ad
0.0.39 changes
2015-08-30 17:23:47 -07:00
Girish Ramakrishnan
fca82fd775
Display upto 600mb for apps
2015-08-30 17:21:44 -07:00
Johannes Zellner
37c8ba8ddd
Reduce logging for aws credentials
2015-08-30 17:03:10 -07:00
Johannes Zellner
f87011b5c2
Also always check for dns propagation
2015-08-30 17:00:23 -07:00
Johannes Zellner
7f149700f8
Remove wrong optimization for subdomain records
2015-08-30 16:54:33 -07:00
Johannes Zellner
78ba9070fc
use config.appFqdn() to handle custom domains
2015-08-30 16:29:09 -07:00
Johannes Zellner
e31e5e1f69
Reuse dnsRecordId for record status id
2015-08-30 15:58:54 -07:00
Johannes Zellner
31d9027677
Query dns status with aws statusId
2015-08-30 15:51:33 -07:00
Johannes Zellner
debcd6f353
aws provides uppercase properties
2015-08-30 15:47:08 -07:00
Johannes Zellner
5cb1681922
Fixup the zonename comparison
2015-08-30 15:37:18 -07:00
Johannes Zellner
9074bccea0
Move subdomain management from appstore to box
2015-08-30 15:29:14 -07:00
Girish Ramakrishnan
21c16d2009
0.0.38 changes
2015-08-28 11:21:43 -07:00
Girish Ramakrishnan
56413ecce6
Account for ext4 reserved space
...
2G - ram sawp
1G - backup swap
2G - reserved
root@yellowtent:/# du -hcs bin
13M bin
13M total
root@yellowtent:/# du -hcs boot
70M boot
70M total
root@yellowtent:/# du -hcs etc
6.3M etc
6.3M total
root@yellowtent:/# du -hcs lib
530M lib
530M total
root@yellowtent:/# du -hcs var
634M var
634M total
root@yellowtent:/# du -hcs root
33G root
33G total
Filesystem Size Used Avail Use% Mounted on
udev 990M 0 990M 0% /dev
tmpfs 201M 960K 200M 1% /run
/dev/vda1 40G 38G 0 100% /
tmpfs 1001M 0 1001M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 1001M 0 1001M 0% /sys/fs/cgroup
/dev/loop0 33G 7.9G 24G 25% /home/yellowtent/data
tmpfs 201M 0 201M 0% /run/user/0
2015-08-28 10:46:24 -07:00
Girish Ramakrishnan
291798f574
Pass along aws config for updates
2015-08-27 22:45:04 -07:00
Girish Ramakrishnan
b104843ae1
Add missing quotes to cloudron.conf
2015-08-27 20:15:04 -07:00
Girish Ramakrishnan
e94f2a95de
Remove ununsed checkData
2015-08-27 18:51:02 -07:00
Girish Ramakrishnan
c2a43b69a9
Just pass the req.body through
...
The metadata has things like restoreUrl and restoreKey which should not be
passed through anyways
2015-08-27 18:49:54 -07:00
Girish Ramakrishnan
dd062c656f
Fix failing test
2015-08-27 11:43:36 -07:00
Girish Ramakrishnan
ae2eb718c6
check if response has credentials object
2015-08-27 11:43:02 -07:00
Girish Ramakrishnan
7ac26bb653
Fix backup response
2015-08-27 11:19:40 -07:00
Girish Ramakrishnan
41a726e8a7
Fix backup test
2015-08-27 11:17:36 -07:00
Girish Ramakrishnan
4b69216548
bash: quote the array expansion
2015-08-27 10:13:05 -07:00
Girish Ramakrishnan
99395ddf5a
bash: quoting array expansion because thats how it is
2015-08-27 09:49:44 -07:00
Girish Ramakrishnan
5f9fa5c352
bash: empty array expansion barfs with set -u
2015-08-27 09:33:40 -07:00
Girish Ramakrishnan
9013331917
Fix coding style
2015-08-27 09:30:32 -07:00
Girish Ramakrishnan
3a8f80477b
getSignedDownloadUrl must return an object with url and sessionToken
2015-08-27 09:26:19 -07:00
Girish Ramakrishnan
c90e0fd21e
do-resize resizes the disk it seems
2015-08-26 23:38:01 -07:00
Girish Ramakrishnan
6744621415
Print the detected ram and disk size
2015-08-26 22:54:23 -07:00
Girish Ramakrishnan
a6680a775f
Start with 8gb instead
2015-08-26 16:02:51 -07:00
Girish Ramakrishnan
5a67be2292
Change ownership only of installer/
2015-08-26 16:01:45 -07:00
Girish Ramakrishnan
c8b2b34138
Always resize the data volume
2015-08-26 15:40:48 -07:00
Girish Ramakrishnan
af8f4676ba
systemd does not use /etc/default/docker
2015-08-26 15:32:40 -07:00
Girish Ramakrishnan
b51cb9d84a
Remove redundant variable
2015-08-26 15:22:55 -07:00
Girish Ramakrishnan
ec7a61021f
create single btrfs partition
...
apps and data consume space from the same btrfs partition now
2015-08-26 15:19:57 -07:00
Girish Ramakrishnan
8d0d19132e
Add missing variable
2015-08-26 13:51:32 -07:00
Girish Ramakrishnan
d2bde5f0b1
Leave 5G for the system
2015-08-26 13:17:42 -07:00
Girish Ramakrishnan
3f9ae5d6bf
refactor size calculation
2015-08-26 12:22:32 -07:00
Girish Ramakrishnan
9b97e26b58
Use fallocate everywhere
2015-08-26 12:15:47 -07:00
Girish Ramakrishnan
219032bbbb
Dynamically size the home and docker partitions
2015-08-26 11:31:58 -07:00
Johannes Zellner
f0fd4ea45c
Fixup tests after removing provisioning routes
2015-08-26 11:04:02 -07:00
Johannes Zellner
23a5a275f8
Reread box config from args.data
2015-08-26 11:04:02 -07:00
Johannes Zellner
813c680ed0
pass full box data to the update
2015-08-26 10:59:17 -07:00
Girish Ramakrishnan
3a1bfa91d1
Create app and data partitions dynamically
2015-08-26 09:59:45 -07:00
Johannes Zellner
a0eccd615f
Send new version to update to to the installer
2015-08-26 09:42:48 -07:00
Johannes Zellner
59be539ecd
make restoreapp.sh support aws session tokens
2015-08-26 09:14:15 -07:00
Johannes Zellner
a04740114c
Generate app restore urls locally
2015-08-26 09:11:28 -07:00
Girish Ramakrishnan
a4f77dfcd0
Create systemd service to allocate swap
...
This can be used to make the swap creation dynamic based on the
ram in the cloudron
2015-08-26 09:11:05 -07:00
Johannes Zellner
60b5d71c74
appBackupIds are not needed for backup url generation
2015-08-26 09:06:45 -07:00
Girish Ramakrishnan
795ba3e365
Not sure why this is here
2015-08-26 00:07:15 -07:00
Girish Ramakrishnan
83ef4234bc
Fix typo
2015-08-25 23:43:42 -07:00
Girish Ramakrishnan
b12b464462
Set RemainAfterExit
...
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=750683
2015-08-25 23:43:04 -07:00
Girish Ramakrishnan
04726ba697
Restore iptables before docker
2015-08-25 23:27:44 -07:00
Girish Ramakrishnan
4d607ada9d
Make installer a systemd service
2015-08-25 23:25:42 -07:00
Johannes Zellner
0a8b4b0c43
Load our style sheet as early as possible
2015-08-25 21:59:01 -07:00
Johannes Zellner
2c7cf9faa1
0.0.37 changes
2015-08-25 20:50:57 -07:00
Johannes Zellner
ec21105c47
use backupKey from userData
2015-08-25 18:44:52 -07:00
Girish Ramakrishnan
444258e7ee
backupKey is a function
2015-08-25 18:37:51 -07:00
Johannes Zellner
e6fd05c2bd
Support optional aws related userData
2015-08-25 17:52:01 -07:00
Johannes Zellner
9fdcd452d0
Use locally generate signed urls for app backup
2015-08-25 17:52:01 -07:00
Johannes Zellner
f39b9d5618
Support session tokens in backupapp.sh
2015-08-25 17:52:00 -07:00
Johannes Zellner
76e4c4919d
Only federated tokens need session token
2015-08-25 17:52:00 -07:00
Johannes Zellner
d1f159cdb4
Also send the restoreKey for the backup done webhook
2015-08-25 17:52:00 -07:00
Johannes Zellner
c63065e460
Also send the sessionToken when using the pre-signed url
2015-08-25 17:52:00 -07:00
Johannes Zellner
124c1d94a4
Translate the federated credentials
2015-08-25 17:52:00 -07:00
Johannes Zellner
e9161b726a
AWS credential creation returns 201
2015-08-25 17:52:00 -07:00
Johannes Zellner
fd0d27b192
AWS credentials are now dealt with a level down
2015-08-25 17:52:00 -07:00
Johannes Zellner
50064a40fe
Use dev bucket for now as a default
2015-08-25 17:52:00 -07:00
Johannes Zellner
c9bc5fc38e
Use signed urls for upload on the box side
2015-08-25 17:52:00 -07:00
Johannes Zellner
58f533fe50
Add config.aws().backupPrefix
2015-08-25 17:52:00 -07:00
Johannes Zellner
efcdffd8ff
Add getSignedUploadUrl() to aws.js
2015-08-25 17:52:00 -07:00
Johannes Zellner
22793c3886
move aws-sdk from dev to normal dependencies
2015-08-25 17:52:00 -07:00
Johannes Zellner
797ddbacc0
Return aws credentials from config.js
2015-08-25 17:52:00 -07:00
Johannes Zellner
e011962469
refactor backupBoxWithAppBackupIds()
2015-08-25 17:52:00 -07:00
Johannes Zellner
b376ad9815
Add webhooks.js
2015-08-25 17:51:59 -07:00
Johannes Zellner
77248fe65c
Construct backupUrl locally
2015-08-25 17:51:59 -07:00
Johannes Zellner
1dad115203
Add initial aws object to config.js
2015-08-25 17:51:59 -07:00
Johannes Zellner
8812d58031
Add backupKey to config
2015-08-25 17:51:59 -07:00
Johannes Zellner
fff7568f7e
Add aws.js
2015-08-25 17:51:59 -07:00
Johannes Zellner
ff6662579d
Fix typo in backupapp.sh help output
2015-08-25 17:51:59 -07:00
Girish Ramakrishnan
0cf9fbd909
Merge data into args
2015-08-25 15:55:52 -07:00
Girish Ramakrishnan
7efa2fd072
Make update route work
2015-08-25 15:54:15 -07:00
Girish Ramakrishnan
9adf5167c9
Remove apiServerOrigin
2015-08-25 15:25:03 -07:00
Girish Ramakrishnan
4978984d75
Remove provision, restore, update routes
2015-08-25 15:09:35 -07:00
Girish Ramakrishnan
3b7ef4615a
installer does not announce anymore
2015-08-25 15:06:39 -07:00
Girish Ramakrishnan
af8f4b64c0
Use userData from metadata API
2015-08-25 15:05:16 -07:00
Girish Ramakrishnan
848b745fcb
Fix boolean logic
2015-08-25 12:24:02 -07:00
Girish Ramakrishnan
93042d862d
Fix CHANGES
2015-08-25 11:27:49 -07:00
Girish Ramakrishnan
ba5424c250
0.0.37 changes
2015-08-25 11:09:09 -07:00
Girish Ramakrishnan
afdde9b032
Disable forwarding from containers to metadata IP
2015-08-25 10:46:23 -07:00
Girish Ramakrishnan
9a35c40b24
Add force argument
...
This fixes crash when auto-updating apps
2015-08-25 10:01:20 -07:00
Girish Ramakrishnan
1f1e6124cd
oldConfig can be null during a restore/upgrade
2015-08-25 09:59:44 -07:00
Girish Ramakrishnan
a033480500
More 0.0.36 changes
2015-08-24 23:31:28 -07:00
Girish Ramakrishnan
033df970ad
Update manifestformat@1.7.0
2015-08-24 22:56:02 -07:00
Girish Ramakrishnan
dd80a795a0
Read memoryLimit from manifest
2015-08-24 22:44:35 -07:00
Girish Ramakrishnan
1eec6a39c6
Show upto 200mb
2015-08-24 22:39:06 -07:00
Girish Ramakrishnan
14333e2910
Enable memory accounting
2015-08-24 22:34:51 -07:00
Girish Ramakrishnan
dd6b8face9
Set app memory limit to 200MB (includes 100 MB swap)
2015-08-24 21:58:19 -07:00
Girish Ramakrishnan
288de7e03a
Add RSTATE_ERROR
2015-08-24 21:58:19 -07:00
Girish Ramakrishnan
a760ef4d22
Rebase addons to use base image 0.3.3
2015-08-24 10:19:18 -07:00
Girish Ramakrishnan
20df96b6ba
Add v0.0.36 changes
2015-08-24 09:37:20 -07:00
Johannes Zellner
0dd745bce4
Fix form submit with enter for update form
2015-08-22 17:21:25 -07:00
Johannes Zellner
d4d5d371ac
Use POST heartbeat route instead of GET
2015-08-22 16:51:56 -07:00
Johannes Zellner
205bf4ddbd
Offset the footer in apps view
2015-08-20 23:50:52 -07:00
Girish Ramakrishnan
4ab84d42c6
Delete image only if it changed
...
This optimization won't work if we have two dockerImage with same
image id....
2015-08-19 14:24:32 -07:00
Girish Ramakrishnan
ee74badf3a
Check for dockerImage in manifest in install/update/restore routes
2015-08-19 11:08:45 -07:00
Girish Ramakrishnan
aa173ff74c
restore without a backup is the same as re-install
2015-08-19 11:00:00 -07:00
Girish Ramakrishnan
a7729e1597
Add v0.0.35 changelog
2015-08-18 23:46:25 -07:00
Girish Ramakrishnan
b584fc33f5
CN of admin group is admins
2015-08-18 16:35:52 -07:00
Girish Ramakrishnan
15c9d8682e
Base image is now 0.3.3
2015-08-18 15:43:50 -07:00
Girish Ramakrishnan
361be8c26b
containerId can be null
2015-08-18 15:43:50 -07:00
Girish Ramakrishnan
4db9a5edd6
Clean up the old image and not the current one
2015-08-18 10:01:15 -07:00
Johannes Zellner
bcc878da43
Hide update input fields and update button if it is blocked by apps
2015-08-18 16:59:36 +02:00
Johannes Zellner
79f179fed4
Add note, why sendError() is required
2015-08-18 16:53:29 +02:00
Johannes Zellner
a924a9a627
Revert "remove obsolete sendError() function"
...
This reverts commit 5d9b122dd5 .
2015-08-18 16:49:53 +02:00
Girish Ramakrishnan
45d444df0e
leave a note about force_update
2015-08-17 21:30:56 -07:00
Girish Ramakrishnan
92461a3366
Remove ununsed require
2015-08-17 21:23:32 -07:00
Girish Ramakrishnan
032a430c51
Fix debug message
2015-08-17 21:23:27 -07:00
Girish Ramakrishnan
a6a3855e79
Do not remove icon for non-appstore installs
...
Fixes #466
2015-08-17 19:37:51 -07:00
Girish Ramakrishnan
29c3233375
0.0.34 changes
2015-08-17 10:12:09 -07:00
Girish Ramakrishnan
2386545814
Add a note why oldConfig can be null
2015-08-17 10:05:07 -07:00
Johannes Zellner
2059152dd3
remove obsolete sendError() function
2015-08-17 14:55:56 +02:00
Johannes Zellner
32d2c260ab
Move appstore badges out of the way for the app titles
2015-08-17 11:50:31 +02:00
Johannes Zellner
384c7873aa
Correctly mark apps pending for approval
...
Fixes #339
2015-08-17 11:50:08 +02:00
Girish Ramakrishnan
d0eab70974
0.0.33 changes
2015-08-13 16:06:52 -07:00
Girish Ramakrishnan
f3cbb91527
fetch the latest codes to generate the change log
2015-08-12 21:54:47 -07:00
Girish Ramakrishnan
9772cfe1f2
0.0.32 changes
2015-08-12 20:33:36 -07:00
Girish Ramakrishnan
3557e8a125
Use constants from the box repo
2015-08-12 19:57:01 -07:00
Girish Ramakrishnan
9e0bb6ca34
Use latest images
2015-08-12 19:04:37 -07:00
Johannes Zellner
bb74eef601
more changes for 0.0.31
2015-08-12 17:45:13 +02:00
Girish Ramakrishnan
d1db38ba8e
Add 0.0.31 changes
2015-08-11 17:01:11 -07:00
Girish Ramakrishnan
e9af9fb16b
0.0.30 changes
2015-08-10 21:38:22 -07:00
Girish Ramakrishnan
fd74be8848
Update docker to 1.7.0
2015-08-10 19:17:21 -07:00
Girish Ramakrishnan
926fafd7f6
Add 0.0.29 changelog
2015-08-10 18:24:36 -07:00
Girish Ramakrishnan
c51c715cee
Use systemctl
2015-08-10 17:57:24 -07:00
Girish Ramakrishnan
aa80210075
Update base image to 15.04
2015-08-10 17:57:24 -07:00
Johannes Zellner
768654ae63
Version 0.0.28 changelog
2015-08-10 15:33:47 +02:00
Girish Ramakrishnan
6efb291449
0.0.27 changes
2015-08-08 19:13:13 -07:00
Girish Ramakrishnan
7a431b9b83
0.0.26 changes
2015-08-06 14:07:07 -07:00
Johannes Zellner
c78d09df66
Do not install optional dependencies for production
...
This was needed due to the dtrace-provider failures as optional
deps for ldapjs and bunyan
2015-08-05 17:37:09 +02:00
Johannes Zellner
7d30d9e867
Use shrinkwrap instead of package.json for node module cache
2015-08-05 17:36:51 +02:00
Girish Ramakrishnan
d3fb244cef
list ldap as 0.0.25 change
2015-08-04 16:29:49 -07:00