pierky / arouteserver

A tool to automatically build (and test) feature-rich configurations for BGP route servers.
https://arouteserver.readthedocs.org/
GNU General Public License v3.0
288 stars 46 forks source link

Alice-LG Reject Reason Support #57

Closed nicko170 closed 4 years ago

nicko170 commented 4 years ago

Supports alice-lg reject reasons nicely, whilst keeping show routes all filtered working to keep birdwatcher happy.

Problem was with just tagging the community and accepting the route, everything in the looking glass was "imported".

Probably needs some more documentation for the new option, along with openbgpd support - have only tested on bird.

pierky commented 4 years ago

Hello, thanks for this PR. I'm working on it right now to see how it works and if it's feasable to extend it to OpenBGPD too.

pierky commented 4 years ago

Hello @nicko170, I've continued your work on the "dev" branch. I've basically completed the static testing and extended the integration tests which were already present for BIRD reject and tag policies to the new tag_and_reject one.

Could you please have a look at what I did on the following files? It's basically just a couple of statements describing how the new feature works and how to configure it. Do they make sense to you?

https://github.com/pierky/arouteserver/compare/dev#diff-8a4f4d0fb9878f81254777137fade8ddR478

https://github.com/pierky/arouteserver/compare/dev#diff-f9a508efa04703cba22c4685aac2a2acR485

This is how a config file would look like: https://github.com/pierky/arouteserver/blob/29da4f1e77df4207f2681d7bcb8d9867f6f81453/tests/live_tests/scenarios/global/configs/BasicScenario_BIRDIPv4_TagAndReject/bird16.conf I haven't changed the way the template that you proposed works, so I believe that you already knows the outcome.

The full test suite is now running, it will take some time. Assuming that everything will work as expected, I'll push out an alpha release of the new version soon, probably later today or tomorrow, so that you can install it.

pierky commented 4 years ago

Hello again @nicko170, version 0.25.0a2 is released on the test instance of PyPi. If you want to test it you can use the hints reported in here https://arouteserver.readthedocs.io/en/latest/INSTALLATION.html#development-and-pre-release-versions

In case you test it, please let me know your thoughts.

Thanks

nicko170 commented 4 years ago

Thanks for finishing it up. I’ll have to have a look at how you did the tests so I can get them atleast passing next time ;-)

The configuration option description makes sense to me, and I think explains it well.

I haven’t tested from pypi yet, but I will do so today and revert back soonish.

Thank you!!

pierky commented 4 years ago

Thanks for finishing it up. I’ll have to have a look at how you did the tests so I can get them atleast passing next time ;-)

Hehe good luck! :-P I should have done better to comment the tests. Just in case you wanna drop your findings into some comments within the code, the project will appreciate that much 😉

nicko170 commented 4 years ago

I've pointed my tooling at 0.25.0a2 and it's working fantastically, thank you.

I actually think this is the last change I need specifically for my environment - everything else is working perfectly!

pierky commented 4 years ago

Thanks a lot @nicko170, I've spun up the pipeline that eventually will officially release the new version, which includes your PR.