Blake Harnden
177f27372e
fixed wrong variable used for configuring service in grpcutils
2020-02-25 11:30:26 -08:00
Blake Harnden
f1a7c10e91
Merge branch 'develop' into enhancement/xy-to-lonlat
2020-02-21 16:43:18 -08:00
Blake Harnden
a3c7ed8012
update emaneevent logging to debug, fixed emaneevent thread stop logic, fixed node data conversion for lon,lat,alt values
2020-02-21 16:42:23 -08:00
Blake Harnden
95c32ddd28
initial geo location conversion using pyproj
2020-02-21 15:54:55 -08:00
Blake Harnden
1375af51cb
added grpc to get emane event channel being used
2020-02-14 16:22:28 -08:00
Blake Harnden
ebafa228ff
added files/directories to grpc set_node_service
2020-02-14 13:40:10 -08:00
Blake Harnden
71aeb98bb9
updates to grpc add_link to return created interface data
2020-02-14 13:18:05 -08:00
Blake Harnden
6020496b6f
fixed sdt issue core gui, fixed sdt message sending for python3
2020-02-05 14:40:37 -08:00
Blake Harnden
45fb32c834
renamed config service dependency finder method to startup_paths, added pydocs to config service related methods
2020-01-27 11:44:00 -08:00
Blake Harnden
d7d0a55fd2
updates to support saving config services to xml, loading config services from xml, retrieving config services from coretk when joining a session
2020-01-21 17:32:12 -08:00
Blake Harnden
0ea2f73a80
added modes to config services that allows them to decide sets of configurations
2020-01-21 14:00:55 -08:00
Blake Harnden
80a4955bd4
updated coretk to working order for configuring config services from coretk
2020-01-21 11:58:43 -08:00
Blake Harnden
da107cc1d9
updates to config services dialogs in coretk, initial working state for running config services from the coretk gui
2020-01-21 10:35:46 -08:00
Blake Harnden
83e7853821
fixed protobuf generation to avoid grpc generation for files with no definitions, added service config tab display to coretk
2020-01-20 16:25:56 -08:00
Blake Harnden
a4f3abf27c
updated config service grpc to return default templates and config, added logic to check for local custom templates
2020-01-20 15:54:47 -08:00
Blake Harnden
7b5df11dc7
added files to config services, added default logic for creating files from templates, added new method to provide extra data to templates, updated gui to display templates raw
2020-01-20 15:02:04 -08:00
Blake Harnden
0e6d1535db
added grpc to get current config services for a node
2020-01-19 19:27:57 -08:00
Blake Harnden
0af6a7a620
improved gitignore for generated proto files, added new initial separate config service proto, incorporated into grpc api
2020-01-18 13:52:15 -08:00
Blake Harnden
f4ddf310a8
removed rtype and param typing from doc strings to help avoid maintaining duplicate information provided by type hints
2020-01-16 11:00:57 -08:00
Blake Harnden
dcabd8d6f8
updates to add type hinting to uses of Callable
2020-01-15 11:56:23 -08:00
Blake Harnden
dafd5dff9f
merged latest from develop
2020-01-14 22:19:49 -08:00
Blake Harnden
d4bce0d25c
updated grpc client to have a proxy flag, updated coretk script to have a flag to enable proxy, disabled by default
2020-01-14 22:15:00 -08:00
Blake Harnden
03c4d8768d
finished grpc server func type hints
2020-01-13 21:33:15 -08:00
Blake Harnden
c0fcc91d10
added type hinting for core.nodes
2020-01-13 14:08:49 -08:00
Blake Harnden
4e71759ac9
updates for typing functions on top level modules
2020-01-13 10:06:18 -08:00
Blake Harnden
ab3659183e
function typing for some of the grpc code
2020-01-11 23:49:51 -08:00
Blake Harnden
583a552bdb
disable grpc client from using proxy settings
2020-01-10 20:25:34 -08:00
Blake Harnden
de493c810a
changes to replace MacAddress usage and remove ipaddress module altogether
2020-01-08 17:33:49 -08:00
Blake Harnden
fd10663323
changes to replaces known usages of ipaddress, leaving only ipaddress.MacAddress
2020-01-08 13:25:00 -08:00
Blake Harnden
769572de02
added get_interfaces to grpc client
2020-01-07 12:03:51 -08:00
Blake Harnden
6d68034177
updated start proto to return exception strings, updated grpc start session to exist early when a failure is found, updated coretk ui to not switch ui to running when start fails and display error dialog
2019-12-20 15:11:34 -08:00
Blake Harnden
513eaf2b76
improved coretk gui alerts to display alert text when selected, fixed merged code for adding a check to cleanup interfaces, updated session.exceptions to use enums directly
2019-12-20 10:51:52 -08:00
Blake Harnden
8eb4df7b1d
updated linkconfig to support asymmetric links, updated grpc start session to provide asymmetric links, since they currently depend on being processed as a link edit
2019-12-18 22:09:00 -08:00
Blake Harnden
69494b600f
fixes for parsing grpc throughputs
2019-12-16 13:26:55 -08:00
Blake Harnden
44df926fb9
updated events streamed from sessions to include session id for easy identification
2019-12-16 12:21:03 -08:00
Blake Harnden
424f69bb15
updated grpc throughputs to only check a specific session and verify the data being collected and sent is for that session, fixed data from throughputs being in hex getting converted to int, updated coretk to only run throughputs when enabled, updated grpc streams to return the stream to allow it being canceled
2019-12-16 11:14:05 -08:00
Blake Harnden
85521e8c8f
added grpc to get current service configurations, fixed bug for core daemon not using custom service configs
2019-12-13 18:17:42 -08:00
Blake Harnden
47cc20b567
updates to grpc event streaming, client can now listen to a subset of desired events
2019-12-13 16:11:58 -08:00
Blake Harnden
9d988a4b13
fixed issue in grpc get emane model configs that would allow key collision
2019-12-13 14:18:13 -08:00
Blake Harnden
9ada94107e
changes to grpc get emane model configs to return the interface value and actual node id, instead of coded value that would need to be parsed
2019-12-13 14:03:41 -08:00
Blake Harnden
9b16f272b8
added get wlan configs, made use of it in coretk, updated node context to allow wlan config during runtime
2019-12-13 11:48:36 -08:00
Blake Harnden
b993fadedb
removed grpc check for getting a node service file, it will return the default value when not currently set
2019-12-13 11:24:35 -08:00
Blake Harnden
819954a695
updated grpc node positions to use floats, avoids needing to deal with int conversions
2019-12-13 10:47:23 -08:00
Blake Harnden
d343bd0655
updated gui to display custom icons if set, updated grpc to send custon icon and image data when present
2019-12-13 08:48:40 -08:00
Huy Pham
2344e026ff
check emulation light, fix one line of backend code
2019-12-12 16:17:33 -08:00
Blake Harnden
45a23a6c14
updated usage of time.time to time.monotonic or time.perf_counter due to time.time possibly rolling backwards
2019-12-06 09:42:41 -08:00
Blake Harnden
d1db5e4b4e
added some data for node events to have a source field to help distinguish what originates from the gui or not
2019-11-27 12:55:39 -08:00
Blake Harnden
da203d578e
fixed issue with node event tests when position is None
2019-11-27 09:15:19 -08:00
Blake Harnden
8b7d651d06
fixed issue with nod emobility location calculations being forced to use ints
2019-11-27 09:05:37 -08:00
Blake Harnden
9445b63bd2
removed saving default configurations for wlan and mobility by default, updated session.add_node to set default configurations for wlan and emane
2019-11-21 12:29:33 -08:00
Blake Harnden
aa718817d0
updates to implement working observer widgets
2019-11-11 13:23:02 -08:00
Blake Harnden
18c9904d58
modified grpc set node service and node service file to use messages for their config, updated start session to leverage these messages to set them when starting a session
2019-11-11 10:19:30 -08:00
Blake Harnden
ea39f8fc6f
updated corehandlers.py to no longer use threading.isAlive, which is pending deprecation
2019-10-30 15:49:08 -07:00
Blake Harnden
79dfbaa3ec
switched session.metadata to just be a standard dict, fixed shutdown service issue during session.data_collect
2019-10-30 13:27:12 -07:00
Blake Harnden
fe95f246d4
added grpc get/set session metadata
2019-10-30 12:01:01 -07:00
bharnden
c0516255f2
added emane model configs and mobility configs to grpc.StartSession
2019-10-29 14:40:37 -07:00
bharnden
adbab066c9
added wlan configs to grpc.StartSession
2019-10-29 13:37:37 -07:00
bharnden
de936ea315
added hook creation and set location to grpc.StartSession
2019-10-29 12:35:07 -07:00
bharnden
4e03dc6888
updates to grpc StartSession, added utility threadpool function to help improve speed when running certain tasks, made use of utility threadpool function where needed
2019-10-29 10:25:39 -07:00
bharnden
236ac7919a
moved grpc utility functions into grpcutils, updated StartSession to threadpool node and link creation
2019-10-28 23:11:15 -07:00
Blake Harnden
934ea96558
changes to support a simpler start/stop session API
2019-10-28 15:18:57 -07:00
bharnden
fff281a452
removed master from corehandlers and session, since it will not be needed any more
2019-10-25 22:06:30 -07:00
bharnden
5c12651e4e
updates to session.clear to clear out all configuration data as well, updated session.shutdown to use clear, updated tests to account for this
2019-10-24 13:05:02 -07:00
bharnden
7366738023
updated network to network link to not look for Rj45, since that wont happen, removed unwanted grpc client function
2019-10-23 11:24:50 -07:00
bharnden
68be311c7a
updated usages of super to use python3 variation
2019-10-23 09:51:52 -07:00
bharnden
6a0a9e7698
updated all classes to be created without using (object), in python3 all classes are new style classes
2019-10-23 09:31:34 -07:00
bharnden
14d759667c
refactored session.update_node to session.edit_node to match grpc call
2019-10-22 20:55:06 -07:00
bharnden
cb81095b64
refactored NodeData and NodeOptions to use server instead of emulation_server
2019-10-22 20:50:01 -07:00
Blake Harnden
ab0abd65aa
modified session.add_node parameter node_options, to just be options
2019-10-22 15:31:50 -07:00
Blake Harnden
f39b7e9f96
updated open_xml functionality, grpc open_xml can optionally start now, added opened files to grpc get_sessions
2019-10-22 12:08:55 -07:00
Blake Harnden
0a689a3e96
updates to grpc to provide a consistent config response, mapping config ids to ConfigOptions
2019-10-22 09:57:41 -07:00
Blake Harnden
233ca92fd2
update grpc to allow for configuring and created distributed nodes
2019-10-21 12:51:38 -07:00
Blake Harnden
78f981463d
renamed utils.check_cmd to utils.cmd, updated host_cmd to allow for shell commands for output redirection
2019-10-21 10:32:42 -07:00
Blake Harnden
3fc0ca5cec
fix to get_node over grpc to avoid issues with nodes that dont have services
2019-10-21 09:51:52 -07:00
bharnden
6006710c32
changed net_cmd to host_cmd and node_net_cmd to cmd, for simpler more logical naming
2019-10-18 23:28:09 -07:00
Blake Harnden
73b2eff312
fix for corehandlers.py session_clients access
2019-10-18 16:25:38 -07:00
Blake Harnden
5633d4d18b
converted format strings to f strings
2019-10-18 12:55:35 -07:00
Blake Harnden
07b4408076
f string updates to all but services complete
2019-10-18 12:44:13 -07:00
Blake Harnden
da946f1f56
removing builtins imports
2019-10-17 15:02:24 -07:00
Blake Harnden
6edd6a7fdb
first pass at removing all python2 specific dependencies, updating python requirements.txt/setup.py/Pipfiles/Makefiles, and removing python2 compat imports
2019-10-17 14:52:31 -07:00
Blake Harnden
5d5ffb70c2
update to grpc edit_node to allow editing icon and broadcasting a node update for all to listen to a change
2019-10-17 13:00:20 -07:00
bharnden
8a3183c8b3
Merge branch 'enhancement/distributed-flask' of https://github.com/coreemu/core into enhancement/distributed-flask
2019-10-17 12:13:26 -07:00
Blake Harnden
e94a6d1afa
separated distributed session logic into its own class to help reduce session.py size as it is already too big
2019-10-17 11:10:59 -07:00
Blake Harnden
774dd8330c
removed broker.py
2019-10-16 20:26:14 -07:00
Blake Harnden
0b8bc7bd13
updated corehandlers to allow sdt snooping to help mimic previous behavior
2019-10-15 15:02:38 -07:00
Blake Harnden
b2d2705849
removed broker from session, updated most places using broker to use alternative logic to compensate where needed
2019-10-15 14:13:42 -07:00
bharnden
1b428c120b
merged latest from develop
2019-10-12 14:39:29 -07:00
bharnden
4e4fcddd00
added grpc api for creating emane link/unlink messages, which will be sent to the gui for being added/removed
2019-10-12 08:56:39 -07:00
bharnden
fee56302a1
fix for wlan configuration issues
2019-10-12 08:03:20 -07:00
bharnden
5b3308a231
updated linkconfig to use string commands, fixed issues for wlan configuration
2019-10-11 22:27:04 -07:00
Blake Harnden
02ef91242e
initial changes to convert all commands to be string based for consistency
2019-10-11 16:36:57 -07:00
Blake Harnden
4a6d69bb09
removing cmd_output function from utils and nodes
2019-10-11 09:34:49 -07:00
Blake Harnden
f6cdeb23de
changes to update commands to leverage either node_net_cmd/net_cmd
2019-10-10 15:25:12 -07:00
Jeff Ahrenholz
0bbb686bda
fix exception when trying to run Python script from GUI
2019-10-08 13:05:37 -07:00
Blake Harnden
a798774f18
updates to tone down warning logs to debug in broker.py and session.py
2019-09-30 12:58:13 -07:00
Blake Harnden
1fb99e8690
converted info to debug for some corehandlers logging
2019-09-30 10:06:10 -07:00
bharnden
503fa754a9
updates to fail early for required executables that are not in PATH
2019-09-27 23:29:15 -07:00
bharnden
050297587d
consolidated EmaneNode and EmaneNet, renaming EmaneNode to EmaneNet
2019-09-27 22:31:56 -07:00
Blake Harnden
b961a8a959
updated broker.py logging to not be as noisy by default
2019-09-27 15:31:19 -07:00
bharnden
b14012e5e9
removed node map file and utilities, added formal class methods to session objects and added checks for specific classes where needed
2019-09-26 13:00:12 -07:00
Huy Pham
b333859d86
finish up server.py and fix 2 broken links
2019-09-16 12:55:00 -07:00
Huy Pham
edcb3d3472
updates on python comments 4:20pm friday
2019-09-13 16:21:07 -07:00
Huy Pham
813ddc10c6
Merge branch 'develop' into pydocupdates
2019-09-13 11:07:43 -07:00
Huy Pham
1843b5f709
further updates to python docs and docs files
2019-09-13 11:07:04 -07:00
Blake Harnden
32bfa4b2f9
fixed exception catches for get_node expecting KeyError to expect CoreError
2019-09-12 15:48:09 -07:00
Huy Pham
2bfcc9ef24
Merge branch 'develop' into pydocupdates
2019-09-12 10:24:23 -07:00
Huy Pham
b43a686d6b
initial documentation improvements
2019-09-12 10:23:46 -07:00
bharnden
0d5692e7e8
updates to try and clean up info logging, moved some statements to debug
2019-09-11 15:05:05 -07:00
bharnden
3776e1dda7
moved emane dependent tests into subdir, moved pytest config into setup.cfg, added CoreError and made use of in session.py
2019-09-11 13:12:42 -07:00
bharnden
dee91e97bf
changes to fix flake8 issues
2019-09-10 21:01:51 -07:00
bharnden
1fc8d647c3
added flake8/black, pre-commit integration for flake8/black, and black formatting changes
2019-09-10 15:10:24 -07:00
bharnden
d5055f85d3
pass over files using isort
2019-09-10 14:20:51 -07:00
Blake Harnden
bcd2584eb8
grpc - add rpc to get local non-core interfaces
2019-07-12 13:02:15 -07:00
Blake Harnden
02668c9c3c
grpc - initial support for container node types
2019-07-11 13:09:04 -07:00
Blake Harnden
0d24ca3387
grpc support for docker/lxc
2019-07-10 13:58:27 -07:00
bharnden
836133c97d
reverting a change that caused switching sessions within gui to break
2019-07-05 09:00:14 -07:00
Blake Harnden
ca10ef4e9e
finished initial pass on adding tests to help run through and validate tlv message handling
2019-06-25 12:29:46 -07:00
Blake Harnden
4f4605163f
fixed issues executing xml from gui, added more tests for testing message handling
2019-06-24 15:49:12 -07:00
Blake Harnden
05c6233908
added utility method to replace execfile for python2/3 support
2019-06-21 09:29:19 -07:00
Blake Harnden
c57089284f
updates to rename utils.hash to utils.hashkey to avoid builtin conflict
2019-06-21 08:51:56 -07:00
Blake Harnden
a5f26e664a
updated logic for creating tunnel keys to use a consistent hashing method, since the builtin hash is not guaranteed in python3 as it was before in python2
2019-06-20 13:22:20 -07:00
Blake Harnden
b5acdf0c3d
updated tests for running distributed to working order and adding simple emane case
2019-06-19 17:34:33 -07:00
Blake Harnden
948b1126ba
changes to support not modifying controlnet configuration messages and avoid issues with setting the master meane config when dealing with distributed emane
2019-06-18 10:33:16 -07:00
bharnden
0af3629ac6
corefx - fixed some issues loading xml due to grpc change, updated subnet logic to help handle loaded scenarios. grpc - fixed issue when loading network links
2019-06-15 10:42:55 -07:00
Blake Harnden
6288e11bcc
grpc - fixed issue when handling wlan configurations
2019-06-14 14:14:00 -07:00
Blake Harnden
fca79fcf94
small change for possibility of runtime mobility configuration
2019-06-11 15:55:11 -07:00
Blake Harnden
38c58d9603
fixed tlv api changing wlan config during runtime, fixed for grpc as well and added grpc test
2019-06-11 13:11:36 -07:00
bharnden
191d392c46
updated grpc node x,y types, added new grpc session position type, grpc updated link options to use int, fixed corehandlers handling of dup, fixed corexml type handling for link options, updated mobility config types to correlate with link options
2019-06-08 16:56:39 -07:00
Blake Harnden
e62ae42bdc
merged latest from master
2019-06-07 10:05:40 -07:00
Blake Harnden
db7bfe12bd
pass on updated pydocs to reflect path changes
2019-06-07 08:59:16 -07:00
bharnden
d1114bd804
fixed byte/str issue in coreapi tlv mac addr
2019-06-04 10:55:08 -07:00
bharnden
f5efecabf0
byte string fix in coreapi, different approach to urlparse compatibility to avoid other issues
2019-06-03 21:22:11 -07:00
Kevin Larson
c4c1a10f05
Added compatible idioms for configparser and queue to support both python2 and python3
2019-06-03 18:22:25 -07:00
Blake Harnden
597bd21994
updated logging.warn to logging.warning due to deprecation in python3, fixed python 2/3 filter issue in tests, fixed utf decoding for some missed popen commands
2019-06-03 14:36:21 -07:00
Blake Harnden
69b1297002
updated protobuf to use string instead of bytes for 2/3 compatibility for now, updated default service in grpc tests, fixed byte string issues for python3 in coreapi
2019-06-03 13:34:54 -07:00
Blake Harnden
7efec88e79
merged latest from develop
2019-06-03 13:06:11 -07:00
Blake Harnden
bb5e68ad8b
2/3 fixes for ip address and mac byte handling
2019-06-03 11:49:43 -07:00
bharnden
7a0edd5927
fixed bad logic introduced into interface setparams, fixed grpc edit link test
2019-06-02 22:20:00 -07:00
bharnden
3de37f0f5e
fixed basestring check for 2/3 compatibility
2019-06-02 19:23:49 -07:00
bharnden
ecc63f4abb
updates to support 2/3 along with not using vcmd c extension
2019-06-02 19:06:25 -07:00
bharnden
864c7b69a1
updated Queue and ConfigParser to use 2/3 compatible imports
2019-05-05 21:49:42 -07:00
bharnden
b58d32c156
updated socketserver to 2/3 compliant
2019-05-05 21:37:45 -07:00
bharnden
1e98175e35
refactored usages of iteritems, itervalues, and iterkeys to be 2/3 compliant
2019-05-05 21:23:43 -07:00
bharnden
8d6bf54a16
removed usage of longs, updated int instance checking and octal constants to be 2/3 compliant
2019-05-05 17:11:07 -07:00
bharnden
e58cbe9421
added future library to support python2/3, updated xrange calls to leverage builtins range
2019-05-05 16:19:12 -07:00
bharnden
66e603906a
updates to layout core module packages in a more logical way, including renaming methods from objects to nodes and nodes.objid to nodes.id
2019-04-29 23:31:47 -07:00
bharnden
37f747c212
Update coreapi.py
...
fixed get_tlv using enumerated type instead of value
2019-02-12 20:38:00 -08:00
bharnden
05a5574155
cleanup of core.api, core.emulator, core.pnodes
2018-10-11 14:49:22 -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
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
67d451c3e9
fixed old log imports and dont bail out on tdma model exception
2017-08-08 09:17:09 -07:00
Blake J. Harnden
e4b280196b
switched to making use of logzero for logging, provides nicer color output, and an easier path to switch to rotating log files
2017-08-07 11:58:51 -07:00
Blake J. Harnden
4d21314798
fixed renaming issue with sessionid to session_id
2017-08-02 12:25:57 -07:00
Blake J. Harnden
97f3c3a070
fixed issue with sending the wrong type flag from cleaning up configuration request code in services
2017-05-05 15:14:27 -07:00
Blake J. Harnden
8ade6f4f02
fixed bug with unpacking objects introduced while cleaning things up, added a basic gui broker test that depends on an existing daemon running
2017-05-03 15:29:15 -07:00
Blake J. Harnden
4ae7958a63
quick base to try and help flesh out documentation under core.*
2017-05-03 09:30:49 -07:00
Blake J. Harnden
00f4ebf5a9
initial commit after bringing over cleaned up code and testing some examples
2017-04-25 08:45:34 -07:00
Rod A Santiago
d17ed889d2
remerged with git pending fix to distributed configuration problem
2016-10-19 16:21:06 -07:00
Rod A Santiago
5d0aa4ac1a
Reverted changes due to merge with github commits made on Oct 12. An issue with distributed deployment seem to have been introduced in those commits.
2016-10-19 13:09:21 -07:00
Tom Goff
d33147154c
daemon: Add an instantiation-complete CORE API event type.
...
Have CORE servers send an instantiation-complete event after a session
has completed instantiating. Only enter the runtime state after
instantiation-complete events have been received form all servers.
2016-10-12 17:36:59 +00:00
Rod A Santiago
c66914ec21
daemon: added option API TLVs so that per-interface parameters are kept for EMANE models when a single node has multiple interfaces of the same EMANE model type but different model parameters
2016-04-20 08:33:58 -07:00
tgoff0
db03927892
daemon: Fix encoding MAC addresses for CORE API messages.
2015-03-09 15:20:33 +00:00
ahrenholz
a9ea208a08
added reconfigure event type, for re-generating service config files
...
added new Event Message handling for starting mobility model or reconfiguring
a service during runtime
(Boeing r1806)
2013-12-05 23:44:25 +00:00
ahrenholz
536ff20fff
change API version to 1.23
...
change jitter to 64-bit value to align with delay in Link Message
added unidirectional link flag TLV to Link Message
(Boeing r1795)
2013-12-02 21:08:00 +00:00
ahrenholz
f9e7c36204
(Boeing r1776)
...
bump CORE API version number to 1.22
2013-09-25 17:35:56 +00:00
ahrenholz
f8f46d28be
initial import (Boeing r1752, NRL r878)
2013-08-29 14:21:13 +00:00