Zaid Abdulla
624cf01270
Support caching in MongoDB instead of Redis
2017-05-08 10:44:42 -07:00
Zaid Abdulla
84e79bda9e
Fix bug in testing preconditions and events
...
The bug occurs when the session was serialized and deserialized as a
result of requests coming through a new TCP connection.
Resolves : #219
2017-03-29 17:28:42 -07:00
Zaid Abdulla
1a5fd65f4e
Show warning when failing to parse attributes
2017-03-18 22:20:17 -07:00
Zaid Abdulla
e137645286
Update license headers
2017-03-10 16:04:28 -08:00
Zaid Abdulla
366fb2adf0
Remove RequestDownload from GetRPCMethodsResponse
...
Because RequestDownload method is no longer supported.
2017-03-10 15:03:24 -08:00
Zaid Abdulla
7cfafdcd74
Rename config FS_IP to FS_HOSTNAME
2017-03-09 20:50:39 -08:00
Zaid Abdulla
59d412155b
Unify currentRequest and sessionData structures
2017-02-25 16:24:53 -08:00
Zaid Abdulla
0097a75cab
Better logging
...
Separated log streams for access log (defaults to stdout) and general
log (defaults to stderr). Added support for writing logs to a file.
Improved formatting and added support for JSON formatted logs.
2017-02-19 10:22:50 -08:00
Zaid Abdulla
3223e9733a
Optimize PathSet for V8
...
PathSet.find has been rewritten without using ES6 generators in order
to avoid V8's TurboFan/Crankshift optimization bailout.
2017-02-15 02:19:02 -08:00
Zaid Abdulla
9dd8b26d53
Fix maximum call stack size exceeded error
2017-01-17 13:13:50 -08:00
Zaid Abdulla
2e40ef8622
Better preset loop detection
...
The RPC and iteration counts are now reset for every cycle.
2017-01-12 23:30:27 -08:00
Zaid Abdulla
310114a500
Some fixes in tasks
2017-01-10 01:54:04 -08:00
Zaid Abdulla
12aa43c379
Better implementation for async loop control
2017-01-05 18:22:24 -08:00
Zaid Abdulla
133d9ebc99
A few bug fixes
2017-01-04 13:55:20 -08:00
Zaid Abdulla
33b01d68ca
Support add/remove objects from presets and tasks
2016-12-29 13:04:11 -08:00
Zaid Abdulla
2ca3ec86a8
Move default provisions to a separate file
...
And reuse the same set of default provisions for presets and tasks.
2016-12-28 16:14:54 -08:00
Zaid Abdulla
ee40a44339
Remove use of domains for error handling
2016-12-23 17:32:08 -08:00
Zaid Abdulla
63407be19b
Generate faults in precondition testing stage
...
Also, queue applicable provisions to any existing fault in order to
be processed later.
2016-12-21 19:44:56 -08:00
Zaid Abdulla
c4880b636b
Fault when provisions repeat indefinitely
2016-12-10 16:01:25 -08:00
Zaid Abdulla
9f85ead558
Turn errors from scripts and extensions into faults
2016-12-04 19:04:22 -08:00
Zaid Abdulla
3d221afc27
Implement support for download RPC
...
This uses special parameters (Downloads.) to trigger file download
making it poossible to use from scripts declaratively.
Resolves : #171
2016-11-30 16:27:01 -08:00
Zaid Abdulla
f9c5272ce0
A number of fixes in sandbox and declaration processing
2016-11-10 07:07:51 -08:00
Zaid Abdulla
044734b567
Some events related fixes
2016-11-03 14:42:38 -07:00
Zaid Abdulla
737266eae5
Replace Mongo query in preset precondition with flat filters
2016-11-01 18:20:19 -07:00
Zaid Abdulla
600ca58b99
Major restructuring and optimization
2016-10-24 18:26:19 -07:00
Zaid Abdulla
942d929476
Implement support for reboot and factory reset methods
2016-09-07 00:07:04 -07:00
Zaid Abdulla
46870db18d
Some bug fixes
2016-09-06 23:53:46 -07:00
Zaid Abdulla
ad38a7ccb1
Restructuring and optimization in provision processing
2016-09-06 02:38:08 -07:00
Zaid Abdulla
41fb97adef
Use variable to store active sessions
...
Keep session data in process for as long as the TCP connectoin is
open. Use redis if connection closes before the session is over.
2016-08-29 00:17:01 -07:00
Zaid Abdulla
e6aab4229d
A few fixes
2016-08-26 00:14:29 -07:00
Zaid Abdulla
62fca64268
Include device ID and channel in faults
2016-08-23 21:01:03 -07:00
Zaid Abdulla
67bcd7e526
New and improved fault management
...
This introduces the concept of "channel". Presets may belong to different
channels such that if one preset causes a fault, only presets belonging
to the same channel will be paused. Presets in other channels will continue
to be applied.
2016-08-23 01:06:25 -07:00
Zaid Abdulla
a1ce53bf03
Implement preset triggers on device events
2016-07-20 08:47:37 +03:00
Zaid Abdulla
d9f8b1c695
Implement cron-like scheduling for presets
2016-07-20 07:03:24 +03:00
Zaid Abdulla
1537603945
Implement path alias unpacking
2016-07-20 03:29:19 +03:00
Zaid Abdulla
e5a21d2b40
Massive restructuring to use flat data model representation
...
Good luck reading this commit!
2016-07-12 04:51:24 +03:00
Zaid Abdulla
4187b812f3
Implement compatibility shim for tasks
...
Tasks need to be deprecated and replaced with a better solution. This
patch adds support for tasks until a better approach is implemented.
2016-04-20 02:35:56 +03:00
Zaid Abdulla
48d9adbaff
Scripting in presets
...
User defined scripts can now be used in presets allowing dynamic values
and complex provisioning workflow.
2016-03-26 02:16:37 +03:00
Zaid Abdulla
1bdfef1537
Fix crash caused by wrong variable name
...
Resolves #137 .
2016-03-07 14:53:01 +03:00
Zaid Abdulla
19fea2ac72
Use the new session implementation
2016-03-06 04:41:10 +03:00
Zaid Abdulla
1beb872710
Fix bug causing constant refreshing of custom commands
2015-12-20 02:16:13 +03:00
Zaid Abdulla
1c5b100561
Ensure customCommand init tasks triggered by inform run after any refreshObject task.
2015-07-05 01:40:02 +03:00
Zaid Abdulla
141102908c
Fixed device updates being processed twice potentially impacting performance.
2014-08-20 23:37:07 +03:00
Zaid Abdulla
76b67d9f54
Fixed crash in debug mode caused by incorrect debug directory path.
2014-08-16 09:23:14 +03:00
Zaid Abdulla
70b0dbad29
Added a config option to set Path attribute in Set-Cookie header.
2014-08-07 00:48:05 +03:00
Zaid Abdulla
ee9a35b9b3
Ability to specify per device, per product class, or per oui configuration. Reimplemented Libxmljs options on the new configuration system.
2014-08-06 00:45:24 +03:00
Zaid Abdulla
97700eb6c8
Use OUI instead of manufacturer to identify firmware files.
2014-08-01 00:47:01 +03:00
Zaid Abdulla
32c56f8ff1
Accept configuration from environment variables or command line arguments. Unified cluster and HTTP server code for CWMP, NBI, and FS.
2014-07-31 01:44:53 +03:00
Zaid Abdulla
db6eae2aee
Queue device updates and commit them using fewer database queries for better performance. Partial updates caused by faulty tasks will no longer be committed in order to avoid messing the device model.
2014-07-24 01:49:04 +03:00
Zaid Abdulla
1c902af363
Wait for connections to MongoDB and redis to be established on startup. Added configuration option to specify redis DB.
2014-07-19 06:54:09 +03:00