Commit graph

514 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
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
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
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
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
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
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
Blake J. Harnden
9ce8233bc3 effort to consolidate logic for emane models, to avoid redundancy for defining a new model 2018-03-29 13:32:06 -07:00
Blake J. Harnden
2b2548a927 fixed typo during cleanup pass 2018-03-27 23:14:04 -07:00
Blake J. Harnden
b7327a5798 pass over emane code to cleanup methods and some documentation 2018-03-28 13:58:49 -07:00
Blake J. Harnden
ef48052d41 fixed bad logging and updated commeffect to default to connectivity being on, same as emane default 2018-03-27 08:24:28 -07:00
Blake J. Harnden
fcedf68b55 Merge branch 'rel/5.1' into emane-cleanup 2018-03-25 23:47:01 -07:00
Blake J. Harnden
64f501ac79 fixed issue with configuring a couple nrl services, fixed other issues with coresendmsg 2018-03-26 14:36:43 -07:00
Blake J. Harnden
79e1726433 removed swap file and added to gitignore 2018-03-25 22:18:37 -07:00
Blake J. Harnden
2ede524ec3 updated tdma schedule file option to leverage gui file widget 2018-03-25 22:16:52 -07:00
Blake J. Harnden
1f2c78d54a got tdma working, leveraging an example tdma schedule that will be included with packaging 2018-03-25 22:08:22 -07:00
Blake J. Harnden
162cb20e14 Merge branch 'emane-cleanup' of git-ssh.web.boeing.com:Boeing-CORE/CORE into emane-cleanup 2018-03-26 10:33:22 -07:00
Blake J. Harnden
45f041604a adding support to start the tdma schedule after emane startup 2018-03-26 10:27:39 -07:00
Blake J. Harnden
e4652f6879 tweaks to support latest 80211 config values 2018-03-23 13:00:46 -07:00
Blake J. Harnden
615b723270 merged latest from rel/5.1 2018-03-23 10:33:13 -07:00
Blake J. Harnden
44363b0500 removed daemonize code that is not needed for services, cleaned up need for logrotate, removed some logging that was not useful 2018-03-23 09:57:37 -07:00
Blake J. Harnden
68f6b6af9b fixed new 80211 config 2018-03-22 22:18:27 -07:00
Blake J. Harnden
987e6f4f50 update to find programs from path instead of being hardcoded when build 2018-03-21 23:07:34 -07:00
Blake J. Harnden
4987019cf8 fix to account for emane 1.2.1, until later cleanup 2018-03-21 22:58:07 -07:00
Blake J. Harnden
ef28d998dc Merge branch 'emane-cleanup' of git-ssh.web.boeing.com:Boeing-CORE/CORE into emane-cleanup 2018-03-21 19:08:53 -07:00
Blake J. Harnden
7ae3385ff0 alphabetizing emane options 2018-03-22 09:58:23 -07:00
Blake J. Harnden
1a867b9d1b added debug logging for utility commands that are ran 2018-03-21 19:08:47 -07:00
Blake J. Harnden
86afded824 updated emane options to contain all nakagami settings for display within ui, sorted options 2018-03-21 14:24:33 -07:00
Blake J. Harnden
b6cfc2085c attempt to update physical configuration 2018-03-21 12:54:13 -07:00
Tom Goff
02538522a4 daemon: Add support for EMANE 1.2.1. 2018-03-21 15:25:06 -04:00
Blake J. Harnden
802393725e added new emane platform options from older versions and latest 1.2.1 2018-03-21 11:58:01 -07:00
Blake J. Harnden
36082ea32e Merge branch 'emane-cleanup' of git-ssh.web.boeing.com:Boeing-CORE/CORE into emane-cleanup 2018-03-20 19:07:08 -07:00
Blake J. Harnden
ba8b73af41 added some more logging to emane setup/startup 2018-03-21 09:57:08 -07:00
Blake J. Harnden
f5498d0889 Merge branch 'rel/5.1' into emane-cleanup 2018-03-20 14:49:32 -07:00
Blake J. Harnden
5403b10cef update to set CORE_STATE_DIR to /var 2018-03-20 14:49:17 -07:00
Blake J. Harnden
952cd2ffbd Merge branch 'rel/5.1' into emane-cleanup 2018-03-20 14:39:32 -07:00
Blake J. Harnden
5629ea0245 fixed issue with bad pathing for quagga run state dir 2018-03-20 14:38:48 -07:00
Blake J. Harnden
79b2fa8468 forgot to remove a line of old emane code in rfpipe 2018-03-20 14:35:00 -07:00
Blake J. Harnden
2142586112 initial pass to remove support for legacy emane code and focus on newer releases 2018-03-19 16:33:36 -07:00
Blake J. Harnden
bc1ef88f82 small fix to coresendmsg and client disconnects no longer log as an exception 2018-03-16 13:10:34 -07:00
Blake J. Harnden
d46aaa1005 Merge branch 'rel/5.1' of git-ssh.web.boeing.com:Boeing-CORE/CORE into rel/5.1 2018-03-16 13:01:23 -07:00
Blake J. Harnden
0e38304b18 updated tcp handler to not timeout and block waiting for messages 2018-03-16 13:01:05 -07:00
Blake J. Harnden
34ce98213d removed udp server due to the hackiness of its interactions with trying to re-use tcp code 2018-03-16 13:00:03 -07:00
Blake J. Harnden
ee5bbdd949 convenience method created for dealing with udp server cases 2018-03-16 12:39:23 -07:00
Blake J. Harnden
7260f823cb updates for dispatching replies from udp handler 2018-03-16 12:18:15 -07:00
Blake J. Harnden
76524abbc2 adjustment for getting session from udp client 2018-03-16 12:13:30 -07:00
Blake J. Harnden
02bcdf617d attempt to correct udp handler 2018-03-16 11:46:05 -07:00
Blake J. Harnden
4e5ee1b3ee removed aux server/handler code 2018-03-16 11:26:44 -07:00
Blake J. Harnden
e0bbeaf79c update to logging in relation to core 2018-03-16 09:39:44 -07:00
Blake J. Harnden
cd7fd43978 updates to support emane 1.2.1 2018-03-16 09:33:43 -07:00
Blake J. Harnden
188f9420ca added a convenience target for generating all documentation based on existing google code example, fixed a few issues with doc strings 2018-03-15 14:31:07 -07:00
Blake J. Harnden
6210e70c80 initial cleanup passing over all makefiles and configure.ac 2018-03-13 16:20:50 -07:00
Blake J. Harnden
a5370ee28c initial commit removing all related xen code, docs, files 2018-03-07 15:47:14 -08:00
Blake J. Harnden
bc1e3e70c9 initial pass at removing bsd and code related to using bsd nodes 2018-03-07 12:54:19 -08:00
Blake J. Harnden
ec79c7dba3 removed some exceptions that were logged but ignore within services 2018-03-05 09:20:49 -08:00
Blake J. Harnden
974559843a defined custom core command error that defaults to printing command output as well 2018-03-02 16:22:20 -08:00
Blake J. Harnden
29a3496eda expose command exceptions within emane and mobility 2018-03-02 15:54:27 -08:00
Blake J. Harnden
fbc749849c updates to expose exceptions from physical nodes as well 2018-03-02 14:12:57 -08:00
Blake J. Harnden
a8ee7f35d6 updates to check_cmd to just return output, as status is pointless 2018-03-02 13:57:50 -08:00
Blake J. Harnden
43554cbb62 initial effort to remove swallowing exceptions within internal code 2018-03-02 13:39:44 -08:00
Blake J. Harnden
cd77875e64 switched pnodes to check commands ran for configuration 2018-03-02 09:36:29 -08:00
Blake J. Harnden
513bb7e263 fixed issue with refactored mute_detach 2018-03-02 09:20:50 -08:00
Blake J. Harnden
00b3c97448 further removal and refactoring of methods used within misc/utils.py 2018-03-02 09:15:52 -08:00
Blake J. Harnden
6211b09585 further cleanup in regards the commands that are being used within core 2018-03-01 16:23:58 -08:00
Blake J. Harnden
870d87804b updated commands that return output to strip it before returning 2018-03-01 13:46:09 -08:00