Commit Graph

777 Commits

Author SHA1 Message Date
Herbert Wolverson
20808d76dc Support ExceptionCPE structure in the common network graph, and apply on node add. That makes it work across all integrations.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-29 10:37:57 -05:00
Herbert Wolverson
9c1998fc56 Move 'excluded sites' checks out of the UISP system and into the common system. Add unit tests to ensure that it works.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-29 10:25:01 -05:00
Herbert Wolverson
3474373424 Support IPv4 to IPv6 mapping via Mikrotik at the common API level.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-29 10:12:33 -05:00
Herbert Wolverson
cbcf0b124f Excluded sites are skipped
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-29 09:35:07 -05:00
Herbert Wolverson
2609bd20d0 Rename 'Shaper Root' to '', to match with what Robert told me about un-mapped circuits needing to go to the top.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-29 09:26:18 -05:00
Herbert Wolverson
c1f267fd1d Ugly (read can be made nicer) implementation of flat strategy for UISP integration.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-29 09:24:02 -05:00
Herbert Wolverson
5f3b30cf52 Remove ShapedDevices that don't have any IPv4 or IPv6 addresses.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-29 08:50:55 -05:00
Herbert Wolverson
2ae08ef4aa Circuit list is generated in ShapedDevices.csv. Not thoroughly tested yet.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 14:48:29 -05:00
Herbert Wolverson
e212d70ca9 Site/AP bandwidth limits from integrationUISPbandwidths.csv are implemented once again.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 13:46:06 -05:00
Herbert Wolverson
e1283e61bb Change graph test unit test to display the example network file
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 12:54:14 -05:00
Herbert Wolverson
1c544ce342 Add unit test that creates the example network file and compares the result.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 12:23:25 -05:00
Herbert Wolverson
52425d35a9 Refactor the convoluted steps into a prepareTree function and make individual steps private methods.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 12:04:48 -05:00
Herbert Wolverson
757596aa4f Add unit testing and cleanup naming on generated sites.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 11:42:04 -05:00
Herbert Wolverson
cfc136de8f Add auto-promotion of client with child sites; a new site is inserted and the children rearranged to preserve speed limits in a sane manner (so a shared relay can have X for one customer, Y for another and Z as a limit)
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 11:33:16 -05:00
Herbert Wolverson
a155862bc9 Basic network json generation is working, needs tweaking.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 10:52:25 -05:00
Herbert Wolverson
e2b3bc9d15 Add network.json existence check
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 09:23:18 -05:00
Herbert Wolverson
591a6fd5aa Add routine to fix unconnected nodes, clean up the UISP REST query system a bit.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 09:16:39 -05:00
Herbert Wolverson
eb3bb0466a Check for graphviz being available and return safely if it isn't
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-28 07:51:33 -05:00
Herbert Wolverson
23419d83f5 Forgot a file 2022-10-27 16:25:06 -05:00
Herbert Wolverson
8ffd4caf52 Starting to use general graph theory to map networks, using UISP as the test-bed. Not ready for use.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-27 16:24:42 -05:00
Robert Chacón
f1ae19991a
Handle cases where device is AP but has no reported capacity 2022-10-27 14:21:00 -06:00
Robert Chacón
bd5244b4ae
Merge pull request #142 from thebracket/integration-common-ips
Add integrationCommon.py - shared functionality
2022-10-27 11:13:45 -06:00
Herbert Wolverson
448d731b1d Add testIP.py and testdata folder
Adds unit tests that cover all of the code-paths used
by the integrationCommon.py shared functionality.
Adds a directory containing test data, so as to not
require a specific ispConfig.py file or pollute the
ispConfig.example.py with test data.

Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-27 09:41:39 -05:00
Herbert Wolverson
532be33d64 Add integrationCommon.py - shared functionality
Creates a new integrationCommon.py file for shared functionality
between integrations.

Move isInAllowedSubnets into the shared file. Add a reciprocal
isInIgnoredSubnets file to utilize the configuration file's
"ignoreSubnets" field.

Add a new function, isIpv4Permitted that combines calls to the
two to return true if an IP address is both allowed and not
ignored, and false otherwise.

Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-27 08:52:24 -05:00
rchac
981b2e5b19 Update cpumap-pping 2022-10-24 19:07:51 -06:00
Robert Chacón
12ca4b6dc8
Update README.md 2022-10-23 18:18:08 -06:00
Robert Chacón
e24f76db43
Update README.md 2022-10-22 16:49:12 -06:00
rchac
abd9f23674 Update cpumap-pping 2022-10-22 14:54:06 -06:00
rchac
0821df4f76 remove cpumap-pping from gitignore 2022-10-22 14:48:29 -06:00
rchac
7307fd7e40 change Switch from xdp-cpumap-tc to cpumap-pping 2022-10-21 22:57:46 -06:00
rchac
c86395bb66 Switch from xdp-cpumap-tc to cpumap-pping 2022-10-21 22:49:50 -06:00
Robert Chacón
298f4aca4c
Update influxDBdashboardTemplate.json 2022-10-21 13:44:22 -06:00
Robert Chacón
1c0da184ec
Merge pull request #138 from thebracket/uisp-integration-unused-routerorstation
shapeRouterOrStation is never used - remove it
2022-10-21 08:35:44 -06:00
Herbert Wolverson
0320798071 shapeRouterOrStation is defined in ispConfig.example.py and imported into integrationUISP.py - but is never accessed. This PR removes it, since it doesn't do anything.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-21 09:31:53 -05:00
Robert Chacón
b270a1c693
Update README.md 2022-10-21 08:21:17 -06:00
Robert Chacón
3bd3311e26
Update README.md 2022-10-21 07:58:11 -06:00
Robert Chacón
f661d8ba74
Implement bug fix https://github.com/rchac/LibreQoS/pull/137 2022-10-21 07:56:51 -06:00
Robert Chacón
798fd39da7
Merge pull request #137 from thebracket/uisp-integration-check-site-none
Uisp integration: check ap['device']['site'] for None
2022-10-21 07:52:34 -06:00
Herbert "TheBracket
a44d7ce36f
Merge branch 'rchac:main' into uisp-integration-check-site-none 2022-10-21 06:48:45 -07:00
Herbert Wolverson
6154215867 Running integrationUISP.py against our controller resulted in a crash. Two devices didn't yield proper site information in their ap['device']['site'] record. Both devices were not-yet associated with UISP, so they didn't *have* site information yet. This commit adds a test for this condition, and emits a warning instead of crashing.
Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-21 08:48:03 -05:00
Robert Chacón
127d28b976
Update README.md 2022-10-21 07:40:25 -06:00
Robert Chacón
840c8484f8
Update README.md 2022-10-21 07:36:32 -06:00
Robert Chacón
625574a0f1
Update README.md 2022-10-21 07:35:27 -06:00
Robert Chacón
e15233c3fc
Merge pull request #136 from thebracket/uisp-13-example-fix
UISPbaseUrl vs uispBaseUrl
2022-10-21 07:05:57 -06:00
Robert Chacón
c4e1fe6f57
Update README.md 2022-10-21 06:59:50 -06:00
Herbert Wolverson
fe3c850206 integrationUISP.py imports "UISPbaseURL" from ispConfig.py, but
ispConfig.py lists the example URL as "uispBaseUrl".

Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
2022-10-21 07:57:37 -05:00
Robert Chacón
2261610723
Update LibreQoS.py 2022-10-20 15:59:34 -06:00
Robert Chacón
5aab722ab4
Added toggle for using binpacking module (for flat networks) 2022-10-20 15:54:24 -06:00
Robert Chacón
d858e7da67
Make Mbps explicit 2022-10-20 15:14:24 -06:00
Robert Chacón
bb1cf8c4e4
Make Mbps explicit 2022-10-20 15:14:03 -06:00