Enhance ORI Networking integration
Summary
The ORI interface in the onmetal-api project includes support for load balancers, NAT gateways, and alias prefixes. While these features can be useful in certain scenarios, they add significant complexity to the codebase and make it harder to maintain and extend the ORI interface. Additionally, these features are not required for all use cases of the ORI interface, which means that some users may be burdened with unnecessary complexity.
This issue suggests trimming down the ORI interface to remove load balancers, NAT gateways, and alias prefixes. By doing so, we can simplify the codebase and make it easier to use, maintain and implement the ORI interface.
Motivation
The motivation for this issue is to simplify the ORI interface in the onmetal-api project. Currently, the ORI interface includes support for load balancers, NAT gateways, and alias prefixes, which adds significant complexity to the codebase. An ORI machine implementor should not have to care about these details but the overall networking integration instead.
By trimming down the ORI interface to remove support for load balancers, NAT gateways, and alias prefixes, we can simplify the codebase and make it easier to use and maintain. This will benefit all users of the onmetal- api project.
Proposed Changes
The proposed changes to the ORI interface include:
- Removing load balancers, NAT gateways, and alias prefixes from the ORI interface
- Update
machinepoollet,machinebrokerand the internal controllers
Testing
To ensure that these changes do not introduce any regressions, we will perform the following tests:
- Unit tests for the ORI interface will be updated to reflect the changes
- Integration tests for the ORI interface will be updated to reflect the changes
- Manual testing will be performed to ensure that the ORI interface works as expected without load balancers, NAT gateways, and alias prefixes
Conclusion
By trimming down the ORI interface to remove support for load balancers, NAT gateways, and alias prefixes, we can simplify the codebase and make it easier to use and maintain the ORI interface.