Girish Ramakrishnan
24dcb1b79c
typo
2019-09-23 15:31:09 -07:00
Girish Ramakrishnan
b401c3d930
Make schedule task take the command as arg
2019-09-23 14:18:14 -07:00
Girish Ramakrishnan
890a7cfb37
runState is not used for task anymore
2019-09-23 13:49:38 -07:00
Girish Ramakrishnan
38a0cdc0be
Make the repair re-issue the install command
...
Otherwise, repairing a repair has to be handled
2019-09-23 13:21:25 -07:00
Girish Ramakrishnan
bf122f0f56
Allow uninstall in error state
2019-09-23 10:40:22 -07:00
Girish Ramakrishnan
a89482d4fa
Send the error as a task argument
...
Note that if apptask dies, we will automatically restart the repair
task with the args.
2019-09-22 22:50:35 -07:00
Girish Ramakrishnan
0cd4f133aa
Do not configure/restore errored apps automatically
2019-09-22 22:44:28 -07:00
Girish Ramakrishnan
217632354f
Allow repair in non-errored state
2019-09-22 21:56:07 -07:00
Girish Ramakrishnan
f3341f4b7f
Make start/stop just a installation code
...
the runState now just tracks if an app is stopped.
2019-09-22 01:01:52 -07:00
Girish Ramakrishnan
ff1f448860
Fixup repair route
...
* Do not allow scheduling tasks in error state
* Only repair is allowed in error state
* Use the error object to track what to 'repair' (like the lastState)
* If uninstall failed, repair will do uninstall
* If move dir failed, repair will do move dir
2019-09-22 00:04:25 -07:00
Girish Ramakrishnan
9a22ba3af7
Add repair route
...
this is specifically for the case where some task failed and user
wants to get it back.
2019-09-19 23:13:44 -07:00
Girish Ramakrishnan
2942da78de
Add TASK_ERROR reason code
2019-09-19 23:13:13 -07:00
Girish Ramakrishnan
101d09eeb3
Typo in event log
2019-09-16 13:01:35 -07:00
Girish Ramakrishnan
00f949f156
Add overwriteDns arg to install & clone
...
this is useful in e2e
2019-09-16 09:31:34 -07:00
Girish Ramakrishnan
3198926cd6
return null for default dataDir
2019-09-15 22:06:03 -07:00
Girish Ramakrishnan
7dfe40739e
Remove apps.getAppConfig
2019-09-10 15:41:35 -07:00
Girish Ramakrishnan
9f0d1b515c
Add param to overwrite DNS
2019-09-10 15:41:32 -07:00
Girish Ramakrishnan
2691d46d50
migrate: only pass the old data dir
2019-09-10 15:15:20 -07:00
Girish Ramakrishnan
78c8f1de71
Add specific installation states to help out UI
2019-09-10 14:25:12 -07:00
Girish Ramakrishnan
cc5daa428d
Fix location change event log
2019-09-10 13:57:58 -07:00
Girish Ramakrishnan
3e2189aeed
Remove obsolete configure route
2019-09-09 22:08:08 -07:00
Girish Ramakrishnan
79f9963792
Add robotsTxt tests
2019-09-09 21:52:01 -07:00
Girish Ramakrishnan
6f53723169
test data dir migration
2019-09-09 21:25:39 -07:00
Girish Ramakrishnan
d8cb100fc0
Add mailbox test
2019-09-09 16:34:48 -07:00
Girish Ramakrishnan
5f9b2f1159
Add env and debug mode tests
2019-09-09 15:46:29 -07:00
Girish Ramakrishnan
801ca7eda1
Break down the configure route
2019-09-09 14:35:52 -07:00
Girish Ramakrishnan
45a2d3745c
Fix app eventlog
2019-09-06 14:47:44 -07:00
Girish Ramakrishnan
57fa457596
Typo in error handling
2019-09-03 15:55:57 -07:00
Girish Ramakrishnan
de1e218ce9
Return BAD_FIELD if dataDir conflicts
2019-09-03 15:17:48 -07:00
Girish Ramakrishnan
e117ee2bef
Cleanup app error codes
...
1. The error classes (like AppsError) now take a 3rd argument details.
We can attach anything in this 3rd argument and this gets sent in the
REST response as well.
2. The HttpError class is now HttpError(statusCode, errorOrMessage). If
it's an error object, it will take the message and other things which
were attached above from it and send them across. Previously, we used to
mark this case an internal error all the time.
3. AppsError only has generic codes now. The UI code then simply checks
for additional information that we attached to show errors. For example,
BAD_FIELD will have a field: 'xx' indicating which field is at fault.
ALREADY_EXISTS has information on which domain or port caused a problem.
The advantage here is we can drop all these error codes that are
specific to each model code.
4. Maybe some day, we can remove all these error classes and have only
one generic class. AppsError right now is pretty generic already. We can
use that error code everywhere... No need to translate errors also
everywhere.
5. Finally, in the router code, I have this function toHttpError (in
apps.js) which is also so much cleaner than what we have now. We keep
writing the same stuff over and over.
2019-09-03 10:39:02 -07:00
Girish Ramakrishnan
a9e101d9f4
Add note on why it is BAD_STATE
2019-09-02 13:55:43 -07:00
Girish Ramakrishnan
a2f8203a42
Add location conflict error code
2019-09-02 12:42:28 -07:00
Girish Ramakrishnan
b9ee127775
Send detail in apps error
2019-09-02 12:41:32 -07:00
Girish Ramakrishnan
5fd129e509
send reason code as part of details
2019-09-01 21:22:46 -07:00
Girish Ramakrishnan
d59c1f53b9
apps: add detail to http error messages
2019-09-01 18:35:06 -07:00
Girish Ramakrishnan
d2f38c1abc
Remove unused error code
2019-09-01 17:39:07 -07:00
Girish Ramakrishnan
c0a1db6941
Send details as part of AppsError
...
the last mile module has been updated to pipe through additional properties.
2019-09-01 13:42:25 -07:00
Girish Ramakrishnan
dd0fb8292c
Move state enums to the model code
2019-08-30 13:21:51 -07:00
Girish Ramakrishnan
4fd04fa349
Add proper error codes
2019-08-30 12:42:38 -07:00
Girish Ramakrishnan
c22cdb8d81
Return error object in the API
2019-08-30 11:34:04 -07:00
Girish Ramakrishnan
9391a934c3
Do not update on uninstall
2019-08-29 14:38:42 -07:00
Girish Ramakrishnan
bb62e6a318
clear taskId in the parent process
2019-08-29 13:43:45 -07:00
Girish Ramakrishnan
9cf833dab2
Use taskId instead of states to check bad state
...
a) this is because, we have install state and run state.
b) we have to put taskId as part of the transaction to prevent race
2019-08-29 13:15:40 -07:00
Girish Ramakrishnan
c98f625c4c
Make force update as task arg
2019-08-29 10:59:05 -07:00
Girish Ramakrishnan
f3008064e4
Fix installation states
...
App operations can only be done in 'installed' or 'error' state.
If some other operation is in progress, you have to cancel it first.
This guarantees that the old app command got killed.
2019-08-29 10:14:23 -07:00
Girish Ramakrishnan
1faee00764
Better progress text when waiting for other tasks
...
Fixes #630
2019-08-28 22:13:50 -07:00
Girish Ramakrishnan
6a7fc17c60
Make restore/configure use scheduleTask
2019-08-28 15:36:50 -07:00
Girish Ramakrishnan
9f1210202a
port taskmanager to use tasks
2019-08-28 15:17:53 -07:00
Girish Ramakrishnan
fef9e0a5c1
Handle app task crashes
2019-08-28 13:19:47 -07:00
Girish Ramakrishnan
b84b033bf3
typo
2019-08-28 12:51:00 -07:00