Commit graph

619 commits

Author SHA1 Message Date
Blake J. Harnden
4a9c751935 refactored service boot path discovery to be more robust, still based on services provided alone 2018-08-01 10:13:57 -07:00
Blake J. Harnden
23f5d7fb8c moved core markdown documentation to live within to repo, this will eventually be the docs hosted on github and allow them to be versioned with the code 2018-07-31 12:57:30 -07:00
Blake J. Harnden
adfa835886 added xml hook test 2018-07-27 16:31:33 -07:00
Blake J. Harnden
6d11f5d63d Merge branch 'rel/5.2' of git-ssh.web.boeing.com:Boeing-CORE/CORE into rel/5.2 2018-07-27 16:11:12 -07:00
Blake J. Harnden
8009572fc0 fixed issue with corexml and loading hooks 2018-07-27 16:10:47 -07:00
Kevin Larson
07dfb48c86 Merge branch 'rel/5.2' of https://git.web.boeing.com/Boeing-CORE/CORE into rel/5.2 2018-07-26 12:25:54 -07:00
Kevin Larson
d1364c888d Updated ip commands to use constants.IP_BIN 2018-07-26 12:25:12 -07:00
Blake J. Harnden
f1863a874d removed unwanted logging 2018-07-25 15:24:54 -07:00
Blake J. Harnden
9ce28da658 fixed bug with custom service files using the same dict across instances of the class 2018-07-25 09:37:59 -07:00
Blake J. Harnden
087a0f011b added back in core emane address creation, only when not external 2018-07-24 13:34:33 -07:00
Blake J. Harnden
e3e25463eb removed line sending service load errors to the gui and it interferes with current coresendmsg 2018-07-19 16:45:05 -07:00
Blake J. Harnden
5bb23c1d93 fixed issue and determined better way to generate boot dependency paths for services 2018-07-12 20:04:04 -07:00
Blake J. Harnden
a6f2b9d7c1 removed emane transport definitions from external configurations 2018-07-12 15:28:26 -07:00
Blake J. Harnden
3d59a68299 refactored how getters for configurations worked, to avoid setting defaults and causing undesireable states 2018-07-11 21:34:21 -07:00
Blake J. Harnden
b03662dbeb removed emane nodes netif install and setaddrs, install was always skipped and setaddrs is done by zebra/quagga 2018-07-11 09:24:44 -07:00
Blake J. Harnden
bfbee35a53 updates to support external transport configuration and an emane transport service to generate and run emanetransport for a configured external transport model 2018-07-11 09:19:06 -07:00
Blake J. Harnden
bf222cd5b4 fixed issue with OvsCtrlNet startup ordering and variable definition 2018-07-09 08:37:45 -07:00
Blake J. Harnden
bf8b7c6d5f small updates to conf.py documentation 2018-07-06 14:58:59 -07:00
Blake J. Harnden
aed3126a6a changed corexml log statement 2018-07-06 14:51:28 -07:00
Blake J. Harnden
5b0ed13e78 fixed linkconfig parameter name to match other linkconfig signatures 2018-07-06 14:40:51 -07:00
Blake J. Harnden
3fb8ae0439 updated versioning to 5.2 2018-07-06 14:26:33 -07:00
Blake J. Harnden
90f95c633f removed old script file from 5.1 merge 2018-07-06 14:09:03 -07:00
Blake J. Harnden
d988ff86d1 added documentation to emanexml 2018-07-06 11:56:09 -07:00
Blake J. Harnden
875a880250 refactored emane xml configurations into an isolated file, using lxml 2018-07-06 11:41:32 -07:00
Blake J. Harnden
f115b1a847 emane xml fully generated from lxml apis, removed xml functions embedded within emane nodes, emane manager, and emane models. Started consolidating emanexml logic into its own module, when it makes sense 2018-07-03 18:49:36 -07:00
Blake J. Harnden
ae94c78fbb updated emane model xml to leverage lxml 2018-07-03 12:48:54 -07:00
Blake J. Harnden
4ccb1ed9f3 working lxml based save/load 2018-07-03 09:50:14 -07:00
Blake J. Harnden
d05bc9240a initial code to leverage lxml to create xml for saving and loading core sessions 2018-06-28 16:30:55 -07:00
Blake J. Harnden
1d355d98ec added more services tests 2018-06-25 08:41:23 -07:00
Blake J. Harnden
bb533406a6 refactored service methods to be shorter, updated some logging to debug, added some more service tests 2018-06-22 15:47:02 -07:00
Blake J. Harnden
8186f3716c refactored service function names 2018-06-22 14:41:06 -07:00
Blake J. Harnden
0efcd910db removed node boot/validate methods, since it was using a circular reference to run a CoreService method 2018-06-22 11:59:16 -07:00
Blake J. Harnden
37517c45f4 changed some logging from info to debug, removed startindex and depends from services 2018-06-22 08:16:59 -07:00
Blake J. Harnden
0aca9d7809 changes to remove the need to pass services separately, when the node has access to them directly, also made a couple CoreServices methods more consistent to have the node as first param and service second 2018-06-21 14:56:30 -07:00
Blake J. Harnden
b868454b5e updates to use dependency based startup logic 2018-06-21 11:20:08 -07:00
Blake J. Harnden
08956e7b93 making use of threadpools to boot each node and boot the services within a node 2018-06-20 16:18:30 -07:00
Blake J. Harnden
ed4e6f0f00 removed startup service 2018-06-20 13:07:43 -07:00
Blake J. Harnden
3443937ff2 updated service load errors to be warnings 2018-06-20 13:04:13 -07:00
Blake J. Harnden
c6d2ca6b02 made use of threadpool for starting services, refactored services to support 3 validation models (blocking, non-blocking, timer) 2018-06-20 12:59:07 -07:00
Blake J. Harnden
37ce407460 added logic to help provide dependent service ordering 2018-06-19 18:36:53 -07:00
Blake J. Harnden
bf47e5fc0d added service executable check, added error message to gui for service load errors 2018-06-19 09:19:49 -07:00
Blake J. Harnden
e80736061f refactored service interaction use names with a _, and cleanup up some of the CoreServices methods 2018-06-15 14:03:27 -07:00
Blake J. Harnden
0bf9c99910 updated service manager to use a dict and throw and error on duplicate service names 2018-06-14 12:50:48 -07:00
Blake J. Harnden
82c3d57dd3 setup a simple default way for dealing with configurable options and added conifg group opbjects as a better way to access the same information formatted within a string 2018-06-14 08:41:48 -07:00
Blake J. Harnden
8e3cd0e013 refactored modelmanager getmodels to get_models 2018-06-13 16:23:51 -07:00
Blake J. Harnden
25cfb21586 added modelmanager for both mobility and emane to leverage and reduce duplicate logic 2018-06-13 16:17:47 -07:00
Blake J. Harnden
a52e454111 renamed dict variable in ConfigurationManager 2018-06-13 12:39:50 -07:00
Blake J. Harnden
7dbc2c40f8 added documentation to configuration classes 2018-06-13 12:32:01 -07:00
Blake J. Harnden
3a39432fc7 refactored configs back to be able to provide instance conifgurations for sessions 2018-06-13 11:59:50 -07:00
Blake J. Harnden
eb415aa4d4 merged session config/options together 2018-06-12 08:37:39 -07:00
Blake J. Harnden
bb8c3fe275 moved send_objects from session to corehandlers, since it was used for tlv messaging specifically 2018-06-11 12:58:42 -07:00
Blake J. Harnden
7199044809 removed all checks from within specific config handlers 2018-06-11 12:34:19 -07:00
Blake J. Harnden
981e48ed30 removed the emane manager from post_startup on emane models, it was not needed, since we can access it from our local session object, if needed 2018-06-11 12:26:51 -07:00
Blake J. Harnden
52230bc026 refactored configuration managers and options into a single class, now the models that can be configured will deal with and handle configurations for nodes themselves 2018-06-11 12:26:12 -07:00
Blake J. Harnden
1b843e2868 updated logic so emane will always use the last model configured for a node, fixes issue when using gui and configuring multiple models 2018-06-08 14:21:41 -07:00
Blake J. Harnden
044e7de5e3 update to support consistently retrieving the last set configuration 2018-06-08 13:53:16 -07:00
Blake J. Harnden
52bfd1edf4 refactored get_config_types to get_all_configs and NewConfigurableManager back to ConfigurableManager 2018-06-08 10:30:41 -07:00
Blake J. Harnden
f6656f0245 added some initial tests for conf objects 2018-06-08 10:25:56 -07:00
Blake J. Harnden
b696cf16e9 updates to make how core_handlers handles model config messages a bit simpler 2018-06-07 16:55:44 -07:00
Blake J. Harnden
4b9cf996d1 updates to account for config messages in core handlers that dont contain all configuration options 2018-06-07 15:32:16 -07:00
Blake J. Harnden
7abf4bca16 updates to get all tests working with config changes 2018-06-07 12:57:32 -07:00
Blake J. Harnden
e4aaebfefb fixed xml 0.0 failing 2018-06-07 09:09:56 -07:00
Blake J. Harnden
2ede43e3ae initial commit with things working for the most part 2018-06-06 14:51:45 -07:00
bharnden
9f9dfbf6c2
Update coreemu.py
set umask 0 to replicate previous behavior
2018-05-30 21:20:52 -07:00
bharnden
ec04f457e0
Update corehandlers.py
fixes #162
2018-05-24 16:28:26 -07:00
bharnden
c3d0b01b7f Merge branch 'rel/5.1' 2018-05-22 20:44:26 -07:00
stuartmarsden
aa6b83f29b fix netem 0% loss and duplicate issue 2018-05-20 23:14:29 +04:00
stuartmarsden
67a78828c3
update_link had wrong arg order 2018-05-20 22:21:19 +04:00
Blake J. Harnden
181a47b8ca updates to some log statements and fix to avoid an exception for finding enpoints in xml 2018-05-01 12:28:20 -07:00
Blake J. Harnden
f5bff494c7 refactored new apis to sit under the emulator module, also reverted moving files under a legacy module to help avoid breaking code using core internals for 5.0+ 2018-05-01 10:40:25 -07:00
Blake J. Harnden
9cb1513933 fixed refactoring bug in broker.py 2018-04-30 16:28:00 -07:00
Blake J. Harnden
44781d0aec set default logging to INFO, cleaned up logging to help isolate debug type messages to DEBUG level, fixed issue with shutdown 2018-04-27 12:09:31 -07:00
Blake J. Harnden
ba3669712a updated gui test to working order, moved distributed test to a sub directory to be ignored by default, added pytest.ini to ignore distributed directory by default 2018-04-27 10:12:01 -07:00
Blake J. Harnden
fe4c21bad4 updates to how and where the node map is populated, now done in CoreEmu and CoreEmu provides a method for updating the map if desired 2018-04-26 16:05:47 -07:00
Blake J. Harnden
164f02e5ac better handling for deleting node directories 2018-04-26 15:52:34 -07:00
Blake J. Harnden
4a2810e9b2 removed issue with double loading services from core-daemon, fixed exceptions noted as not an error previously and updated code to more gracefully handle those cases, fixed issue with add_node when setting node.ype for all nodes 2018-04-26 14:26:39 -07:00
Blake J. Harnden
dc751dde2b removed session manager, since CoreEmu does this now, set future examples to serve as API examples, removed netns examples that are replaced by these API variations 2018-04-26 13:06:18 -07:00
Blake J. Harnden
8644e9d61e moved future core server and handler code to act as the default core-daemon, updated future examples and tests to leverage new api 2018-04-25 16:33:58 -07:00
Blake J. Harnden
f431895357 removed unused code, updated delete session to shutdown session as well and return if session was deleted or not 2018-04-25 11:55:47 -07:00
Blake J. Harnden
c0b450789a updates to make future apis a bit better, updated handlers and all tests to account for changes 2018-04-25 10:55:48 -07:00
Blake J. Harnden
3ea885e2eb refactored some future naming to be more consistent, added new data objects to pass into coreemu api to help make scripting easier, set sessions to master by default now 2018-04-24 16:24:54 -07:00
Blake J. Harnden
1404ca19c5 added some test cases based on future api interactions, node add/delete/update link add/delete/update 2018-04-23 15:46:08 -07:00
Blake J. Harnden
8f0364c44b Merge branch 'rel/5.1' into core-future 2018-04-20 21:48:32 -07:00
Blake J. Harnden
c65baa9298 update to add a way to avoid loading parent service classes, that inherit from CoreService that should not be loaded on their own 2018-04-20 21:40:55 -07:00
Blake J. Harnden
ac2b64aaaf updates to remove restriction for emane in general and emane 1.2.1, should support at leat 1.0.1 possibly further back and can run without emane again, updated gui to ask users to install emane when not preset on the emane models panel 2018-04-20 21:22:08 -07:00
Blake J. Harnden
424c08c5e0 updates to drive most core logic from CoreEmu and Sessions themselves instead of outside code, updated an example to leverage new API, fixed issues testing when executing a script 2018-04-20 17:00:47 -07:00
Blake J. Harnden
93394b042a slight update to clean up some future link handling code 2018-04-19 17:19:31 -07:00
Blake J. Harnden
d8796b377f initial working code for consolidated logic into a future session object, for dealing with nodes/links 2018-04-19 14:25:45 -07:00
Blake J. Harnden
9fe57c6089 initial toy code for future core api changes/improvements 2018-04-17 14:30:34 -07:00
Blake J. Harnden
7e03202ba4 remove old utility examples for now 2018-04-16 14:00:04 -07:00
Blake J. Harnden
b6d891f124 updated emane manager to parse config options from manifest, updates to denote core specific configurations within emane models, update to account for manifest parsing of INETADDR 2018-04-02 14:00:28 -07:00
Blake J. Harnden
1ac95d7dca added markdown annotated example emane model file 2018-03-30 15:39:19 -07:00
Blake J. Harnden
4d01a49ec2 updated emane model phy/mac parsing to account for values that support multiple values into a param list 2018-03-30 14:53:02 -07:00
Blake J. Harnden
405614bbd8 added metaclass to reduce emane model code, fixed broken emaneuniversal references 2018-03-30 12:52:10 -07:00
Blake J. Harnden
fd32e1cf78 added support for emane manifest parsing into core compatible information, refactoring of emane code to align with its usage 2018-03-30 12:08:33 -07:00
Blake J. Harnden
8963ef51e3 fixed bypass unique phy doc under refactored code 2018-03-29 15:13:16 -07:00
Blake J. Harnden
beb5be2ee9 reverted to using class variables for emane models due to inheritence from config class 2018-03-29 14:38:32 -07:00
Blake J. Harnden
19ccd6a63b testing hack for class propery 2018-03-29 14:14:59 -07:00
Blake J. Harnden
4f978f5b96 fixed some emane naming issues 2018-03-29 14:04:15 -07:00
Blake J. Harnden
4df0d78cae resolved circular import withthe universal model 2018-03-29 13:48:40 -07:00