Oof, didn't test with OIDC, my bad.
Not an OIDC expert, so would be nice if someone else chimes in, but it
works as advertised with a simple keycloak server setup.
Consider:
Tested-by: Gabriel Goller
___
pve-devel mailing list
pve-
Typos and errors introduced by previous commit.
Fixes: 99c75561ae98 ("update Italian translations")
Signed-off-by: Gabriel Goller
---
it.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/it.po b/it.po
index e3128c5ba04b..95997e333272 100644
--- a/it.po
+
If you want to take this in with this release, I can send a new version,
but I'd like to wait a bit to be honest.
The Summary looks currently a bit rough, even with the scrollbar. Also
we can't differentiate between a dhcp ip-address or an address set
manually on the container itself (and we alwa
On 08.04.2025 12:18, Thomas Lamprecht wrote:
Am 08.04.25 um 12:06 schrieb Gabriel Goller:
On 07.04.2025 19:46, Thomas Lamprecht wrote:
Am 08.01.25 um 15:38 schrieb Gabriel Goller:
adds a call to /nodes/{node}/lxc/{vmid}/interfaces and merges the
returned data with the existing configuration
On 07.04.2025 19:46, Thomas Lamprecht wrote:
Am 08.01.25 um 15:38 schrieb Gabriel Goller:
adds a call to /nodes/{node}/lxc/{vmid}/interfaces and merges the
returned data with the existing configuration. This will update the
IPv4 and IPv6 address, as well as the interface name (in case the
From: Stefan Hanreich
The fabrics patch series moved some generic network types into its own
crate, so they can be reused across crates. Migrate proxmox-firewall
to use the new proxmox-network-types crate instead of
proxmox_ve_config.
Signed-off-by: Stefan Hanreich
Signed-off-by: Gabriel
also need to add a special case in encode_value for the interface
key of nodes, since they require special handling when encoding
because they are arrays.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/API2/Network/SDN.pm | 7
Add SDN fabric support with OpenFabric and OSPF configuration parsing.
Implements PerlSectionConfig wrapper and Perl module exports for fabric
configuration management.
Signed-off-by: Gabriel Goller
---
pve-rs/Cargo.toml | 6 -
pve-rs/Makefile | 1 +
pve-rs/src/lib.rs
Add function to generate /etc/network/interfaces configuration for OpenFabric
nodes:
- Auto-create dummy interfaces with proper router-id
- Configure interface addresses and IP forwarding
- Support for both IPv4 and IPv6 addressing on both dummy and other
interfaces
Signed-off-by: Gabriel
On 02.04.2025 11:50, Christoph Heiss wrote:
Some comments inline - did the review mostly in tandem with testing the
UI, to get a better context.
On Fri Mar 28, 2025 at 6:13 PM CET, Gabriel Goller wrote:
[..]
diff --git a/www/manager6/dc/Config.js b/www/manager6/dc/Config.js
index 74728c8320e9
On 31.03.2025 10:44, Shannon Sterz wrote:
On Fri Mar 28, 2025 at 6:13 PM CET, Gabriel Goller wrote:
[snip]
I agree with everthing above.
+
+Router-ID Selection
+^^^
+
+Each node in a fabric needs a unique router ID, which is an IPv4 (or IPv6 in
+OpenFabric) address in dotted
Remove line-break on sdn "pending configuration" message on removed sdn
objects.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
www/manager6/Utils.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/www/manager6/
types. This way we could reuse proxmox-frr on
different products, without dragging product-specific types with us.
Signed-off-by: Gabriel Goller
---
Cargo.toml | 1 +
proxmox-frr/Cargo.toml | 22 +++
proxmox-frr/debian/changelog | 5
proxmo
On 03.04.2025 10:30, Friedrich Weber wrote:
On 28/03/2025 18:12, Gabriel Goller wrote:
This series allows the user to add fabrics such as OpenFabric and OSPF over
their clusters.
Overview
This series allows the user to create routed networks ('fabrics') across their
clust
This custom serializer will serialize all the FRR types into a string,
which is the FRR config.
Signed-off-by: Gabriel Goller
---
proxmox-frr/src/lib.rs| 2 +
proxmox-frr/src/serializer.rs | 192 ++
2 files changed, 194 insertions(+)
create mode 100644
On 04.04.2025 12:55, Hannes Duerr wrote:
On 3/28/25 18:12, Gabriel Goller wrote:
This series allows the user to add fabrics such as OpenFabric and OSPF over
their clusters.
Overview
This series allows the user to create routed networks ('fabrics') across their
clusters, wh
From: Stefan Hanreich
Signed-off-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
www/manager6/data/PermPathStore.js | 2 ++
1 file changed, 2 insertions(+)
diff --git a/www/manager6/data/PermPathStore.js
b/www/manager6/data/PermPathStore.js
index 72da2e9da4a1..4654d51654c1 100644
ctive Zone / VNet
Plugins, instead of in the EVPN controller, but this was beyond the
scope of this already quite large patch series.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN/Controllers/EvpnPlugin.pm
ControllerPlugin – that's why the frr generation
has also been factored out.
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
PVE/API2/Network.pm | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/PVE/API2/Network.pm b/PVE/API2/Network.pm
index 12ee6cc
On 04.04.2025 14:53, Hannes Duerr wrote:
On 4/4/25 14:48, Gabriel Goller wrote:
On 04.04.2025 12:55, Hannes Duerr wrote:
On 3/28/25 18:12, Gabriel Goller wrote:
This series allows the user to add fabrics such as OpenFabric
and OSPF over
their clusters.
Overview
This series allows
synchronization frequency), and HelloMultiplier (neighbor failure detection).
Added `is_ipv6` flag to support FRR's command prefixing requirements during
serialization for IPv6-specific commands (we need to add a 'ipv6' prefix
to some commands).
Signed-off-by: Gabriel Goller
---
pro
From: Stefan Hanreich
Add CRUD endpoints for manipulating OpenFabric nodes. They are
implemented in proxmox-perl-rs.
Signed-off-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
src/PVE/API2/Network/SDN/Fabrics/Makefile | 2 +-
.../Network/SDN/Fabrics/OpenFabricNode.pm | 181
Add initial documentation for the openfabric and ospf options.
Signed-off-by: Gabriel Goller
---
pvesdn.adoc | 206
1 file changed, 206 insertions(+)
diff --git a/pvesdn.adoc b/pvesdn.adoc
index 5d5d27bfbc1f..414f39c5109e 100644
--- a
. Add a test that covers that scenario.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
.../expected_controller_config| 22 +++
.../isis_standalone/expected_sdn_interfaces | 1 +
.../zones/evpn/isis_standalone
Add functionality for managing OpenFabric fabrics:
- Implement Rust-backed Perl module PVE::RS::SDN::Fabrics::OpenFabric
- Add CRUD methods for fabric, node, and interface configuration
- Support fabric-specific parameters (hello-intervals, router-id, etc.)
Signed-off-by: Gabriel Goller
---
pve
Hanreich
Signed-off-by: Gabriel Goller
---
.../expected_controller_config| 72
.../openfabric_fabric/expected_sdn_interfaces | 56
.../zones/evpn/openfabric_fabric/interfaces | 6 ++
.../zones/evpn/openfabric_fabric/sdn_config | 85
configuration before writing it to the /etc/network/interfaces.d/sdn
file.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN.pm | 68 --
src/PVE/Network/SDN/Fabrics.pm | 14 +++
src/PVE
Add CRUD functions for managing OSPF fabrics.
Signed-off-by: Gabriel Goller
---
pve-rs/Makefile| 1 +
pve-rs/src/sdn/mod.rs | 1 +
pve-rs/src/sdn/ospf.rs | 217 +
3 files changed, 219 insertions(+)
create mode 100644 pve-rs/src/sdn/ospf.rs
CRUD methods for perlmod that call the helper functions defined earlier.
Also add a method that returns the FRR daemons to be enabled and a
method that generates FRR configuration after validating it.
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
pve-rs/src/sdn/ospf.rs
Add a few screenshots for the sdn->fabrics panel:
* fabric overview
* openfabric fabric creation
* ospf fabric creation
* openfabric node creation
* ospf node creation
Signed-off-by: Gabriel Goller
---
create_fabrics_screenshots | 197 +
1 file chan
.
This requires a few changes in the controller API, so that they now
append to a passed perl hash, instead of directly writing their own
configuration which is now handled externally by the SDN module.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
From: Stefan Hanreich
Add CRUD endpoints for OpenFabric fabrics. The logic is handled by
proxmox-perl-rs itself, the endpoints are just proxying the Rust
implementation.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/API2/Network/SDN
We call perlmod rust functions directly from pve-network.
Signed-off-by: Gabriel Goller
---
debian/control | 3 +++
1 file changed, 3 insertions(+)
diff --git a/debian/control b/debian/control
index 34b736676766..bfa81566a0e4 100644
--- a/debian/control
+++ b/debian/control
@@ -6,11 +6,13
respective hash of the
Frr module.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN.pm | 18 +-
src/PVE/Network/SDN/Fabrics.pm | 17 +
src/PVE/Network/SDN/Frr.pm | 64 ++
3
every node, and
to change the name we would need to modify ever node's config as well.)
Co-authored-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
www/manager6/Makefile | 1 +
www/manager6/sdn/fabrics/ospf/FabricEdit.js | 40 +
2 files change
are
used mainly for setting interface or node-specific properties, otherwise
the global fabric-specific properties should be used.
Co-authored-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
www/manager6/Makefile | 1 +
.../sdn/fabrics/openfabric/InterfacePanel.js
.
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
proxmox-serde/src/lib.rs | 84
1 file changed, 84 insertions(+)
diff --git a/proxmox-serde/src/lib.rs b/proxmox-serde/src/lib.rs
index c162834905c2..705ad430c953 100644
--- a/proxmox
Add integration tests for the full cycle from section-config to FRR
config file for both openfabric and ospf.
Signed-off-by: Gabriel Goller
---
proxmox-ve-config/Cargo.toml | 3 +
proxmox-ve-config/debian/control | 2 +
.../tests/fabric/cfg
the interface entries and also moved the protocol to
the column (instead of having two root nodes for each protocol).
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
www/manager6/Makefile | 1 +
www/manager6/dc/Config.js | 8 +
www/manager6/sdn/FabricsView.js
thanks @Thomas)
frr (external)
--
* got this one merged: https://github.com/FRRouting/frr/pull/18242, so we
*could* automatically add dummy interfaces
Big thanks to Stefan Hanreich for his help and support throughout this series!
proxmox:
Gabriel Goller (1):
se
From: Stefan Hanreich
Add CRUD endpoints for the ospf fabric and node section types. They
are implemented in proxmox-perl-rs.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/API2/Network/SDN/Fabrics/Makefile | 2 +-
src/PVE/API2
From: Stefan Hanreich
Add CRUD endpoints for OSPF nodes. They are implemented in
proxmox-perl-rs.
Signed-off-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
src/PVE/API2/Network/SDN/Fabrics/Makefile| 2 +-
src/PVE/API2/Network/SDN/Fabrics/OSPFNode.pm | 163 +++
2
From: Stefan Hanreich
Extends PVE.sdn.Fabric.InterfacePanel to add OSPF-specific interface
properties including passive mode and unnumbered network-type. Passive
is hidden by default to reduce UI complexity, as it's rarely used.
Co-authored-by: Stefan Hanreich
Signed-off-by: Gabriel G
-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN.pm | 7 ++-
src/PVE/Network/SDN/Fabrics.pm | 2 +-
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/PVE/Network/SDN.pm b/src/PVE/Network/SDN.pm
index
he key to the node section is called the `NodeId` and consist of two
parts: `test`, which is the fabric, and `pve0`, which is the nodename.
The validation checks if the `test` fabric exists.
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
proxmox-ve-config/src/sdn/fabric/
This is the main openfabric configuration. It is used to parse from the
section-config file (`/etc/pve/sdn/fabrics/openfabric.cfg`) and is also
returned from the api.
Signed-off-by: Gabriel Goller
---
Cargo.toml| 4 +-
proxmox-ve-config/Cargo.toml
-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN.pm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/PVE/Network/SDN.pm b/src/PVE/Network/SDN.pm
index 68f9e0fffbfe..c9c45b1c07ea 100644
--- a/src/PVE/Network/SDN.pm
configurations
Note that the `ospfd` daemon only supports IPv4 so we only have IPv4
addresses for OSPF. In a follow-up we could also support the `ospf6d`
daemon, which supports IPv6.
Signed-off-by: Gabriel Goller
---
pve-rs/src/sdn/ospf.rs | 56 +-
1 file
Add function to generate /etc/network/interfaces configuration for OpenFabric
nodes:
- Auto-create dummy interfaces with proper router-id
- Configure interface addresses and IP forwarding
- Support for both IPv4 and IPv6 addressing on both dummy and other
interfaces
Signed-off-by: Gabriel
From: Stefan Hanreich
Signed-off-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
src/PVE/AccessControl.pm | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/PVE/AccessControl.pm b/src/PVE/AccessControl.pm
index 47f2d38b09c7..7b2dae35448d 100644
--- a/src/PVE/AccessControl.pm
This is the main configuration for OSPF. It is used to parse the section
config file and is returned from the api.
Signed-off-by: Gabriel Goller
---
proxmox-ve-config/src/sdn/fabric/ospf/mod.rs | 219 +++
1 file changed, 219 insertions(+)
create mode 100644 proxmox-ve-config
This custom serializer will serialize all the FRR types into a string,
which is the FRR config.
Signed-off-by: Gabriel Goller
---
proxmox-frr/src/lib.rs| 2 +
proxmox-frr/src/serializer.rs | 192 ++
2 files changed, 194 insertions(+)
create mode 100644
int". The
other options are also not that interesting.
Signed-off-by: Gabriel Goller
---
proxmox-frr/src/lib.rs | 20 ++
proxmox-frr/src/ospf.rs | 135
2 files changed, 155 insertions(+)
create mode 100644 proxmox-frr/src/ospf.rs
diff --git a/pr
route-ids will be distibuted, but won't be pingable,
because because the source address is wrong. By rewriting the source we
guarantee that a ping will always find it's way back to the source
router-id.
Signed-off-by: Gabriel Goller
---
proxmox-frr/src/lib.rs | 1 +
proxm
the local
dummy_interface.
* ip-protocol statements
These add the route-map to the protocol and all the routes from the
protocol are going through the route-map.
Signed-off-by: Gabriel Goller
---
proxmox-ve-config/Cargo.toml| 5 +
proxmox-ve-config/debian/control
From: Stefan Hanreich
With the package bumped to 10.2.1 we need to generate the
configuration with the matching version, otherwise frr-reload.py fails
to create a delta of the configuration because of the version
mismatch.
Signed-off-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
src
: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
www/manager6/Makefile| 1 +
www/manager6/sdn/fabrics/NodeEdit.js | 224 +++
2 files changed, 225 insertions(+)
create mode 100644 www/manager6/sdn/fabrics/NodeEdit.js
diff --git a/www/manager6/Makefile b/www
fabrics, that will be used by the upcoming fabric API modules.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/API2/Network/SDN/Fabrics/Common.pm | 126 +
src/PVE/API2/Network/SDN/Fabrics/Makefile | 9 ++
2 files
warning without disabling the field,
allowing users to remove the SDN interface configuration while preserving
the underlying one
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
www/manager6/Makefile | 1 +
www/manager6/sdn/fabrics/Common.js | 292
check the loopback_ip of every node, and for the Name we would need to
modify the config of every node).
Co-authored-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
www/manager6/Makefile | 1 +
.../sdn/fabrics/openfabric/FabricEdit.js | 37
also need to add a special case in encode_value for the interfaces
key of nodes, since they require special handling when encoding
because they are arrays.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/API2/Network/SDN.pm | 7
From: Stefan Hanreich
Add generic component to add and edit Fabrics. The Properties for every
protocol are stored in different components and each extend this one.
Co-authored-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
www/manager6/Makefile | 1 +
www/manager6
Remove line-break on sdn "pending configuration" message on removed sdn
objects.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
www/manager6/Utils.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/www/manager6/
and CSNP Interval
* Network Entity Title (used as Router IDs in IS-IS / OpenFabric)
Signed-off-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
Cargo.toml | 4 +
proxmox-sdn-types/Cargo.toml | 14 +
proxmox-sdn-types/debian/changelog | 5
generating the configuration in the controller directly. It can
also reload the FRR daemon.
Change the tests to use this new API as well, so they use the new
methods for generating the frr configuration.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
From: Stefan Hanreich
This module adds the basic functionality required for the sdn fabrics
feature. It includes helpers for reading and writing the configuration
files via perlmod.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE
Add generic FRR types that contain openfabric and ospf variants. Also
add the FrrConfig, which holds the whole FRR configuration in a single
struct, which will then be serialized.
Signed-off-by: Gabriel Goller
---
proxmox-frr/src/lib.rs | 82 +-
1 file
, so they are included in the task log for
debugging purposes.
Signed-off-by: Stefan Hanreich
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN/Frr.pm | 62 ++
1 file changed, 62 insertions(+)
diff --git a/src/PVE/Network/SDN/Frr.pm b/src/PVE/Network/SDN
Add perlmod methods that call the previously introduced CRUD helpers.
Also add a method that returns the FRR daemons to be enabled by
pve-network and a method to validate and generate the FRR config.
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
pve-rs/src/sdn/openfabric.rs
Add the sdn fabrics config files. These are split into two, as we
currently support two fabric types: ospf and openfabric. They hold the
whole configuration for the respective protocols. They are read and
written by pve-network.
Signed-off-by: Gabriel Goller
---
src/PVE/Cluster.pm | 2 ++
src
Add SDN fabric support with OpenFabric and OSPF configuration parsing.
Implements PerlSectionConfig wrapper and Perl module exports for fabric
configuration management.
Signed-off-by: Gabriel Goller
---
pve-rs/Cargo.toml | 6 -
pve-rs/Makefile | 1 +
pve-rs/debian
Add conversion helpers for FRR interfaces. We can't put these in eg.
`TryInto` implementations, as we need a tupel and tupels are foreign
types. Create a simple conversion function that converts the OpenFabric
and OSPF interfaces to FRR interfaces.
Signed-off-by: Gabriel Goller
---
.../sr
,
automatically
added as a "type" property
These allow us to be somewhat generic over the protocol type (in e.g.
permissions).
Signed-off-by: Gabriel Goller
---
proxmox-ve-config/src/sdn/fabric/mod.rs | 111
1 file changed, 111 insertions(+)
create mode 100644 proxmox
types. This way we could reuse proxmox-frr on
different products, without dragging product-specific types with us.
Signed-off-by: Gabriel Goller
---
Cargo.toml | 3 ++
proxmox-frr/Cargo.toml | 23
proxmox-frr/debian/changelog | 5
proxmo
d-off-by: Gabriel Goller
---
proxmox-frr/src/lib.rs | 114 +
1 file changed, 114 insertions(+)
diff --git a/proxmox-frr/src/lib.rs b/proxmox-frr/src/lib.rs
index e69de29bb2d1..e3986d6f2046 100644
--- a/proxmox-frr/src/lib.rs
+++ b/proxmox-frr/src/lib.rs
@@
On 03.04.2025 11:16, Christoph Heiss wrote:
On Fri Mar 28, 2025 at 6:13 PM CET, Gabriel Goller wrote:
[..]
diff --git a/www/manager6/sdn/fabrics/openfabric/NodeEdit.js
b/www/manager6/sdn/fabrics/openfabric/NodeEdit.js
new file mode 100644
index ..f2d204c22542
--- /dev/null
+++ b
On 02.04.2025 11:26, Friedrich Weber wrote:
+commonColumns: [
+ {
+ text: gettext('Status'),
+ dataIndex: 'status',
+ width: 30,
+ renderer: function(value, metaData, record) {
+ let icon = record.data.statusIcon || '';
+
[snip]
+Name:: This is the name of the OpenFabric fabric and can be at most 8
characters long.
+
+Loopback Prefix:: CIDR (IPv4 or IPv6) network range (e.g., 10.0.0.0/24) used
to verify that
+all router-IDs in the fabric are contained within this prefix.
+
+Hello Interval:: Controls how frequentl
On 02.04.2025 10:49, Christoph Heiss wrote:
On Fri Mar 28, 2025 at 6:13 PM CET, Gabriel Goller wrote:
[..]
+
+Installation
+
+
+We use the FRR implementations of OpenFabric and OSPF, so first you need to
+install `frr` and the `frr-pythontools` package:
Rather try to avoid first
bump, still applies
___
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
On 31.03.2025 15:48, Christoph Heiss wrote:
On Fri Mar 28, 2025 at 6:13 PM CET, Gabriel Goller wrote:
This is the main openfabric configuration. It is used to parse from the
section-config file (`/etc/pve/sdn/fabrics/openfabric.cfg`) and is also
returned from the api.
Signed-off-by: Gabriel
> serde::de::IntoDeserializer<'de, E> for SomeString
| ^^^ ^^^
|
= help: for further information visit
https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
468
ere:
https://datatracker.ietf.org/doc/html/rfc1142#section-7.1.1
Signed-off-by: Gabriel Goller
---
proxmox-network-types/src/lib.rs | 1 +
proxmox-network-types/src/net.rs | 382 +++
2 files changed, 383 insertions(+)
create mode 100644 proxmox-network-types/src/net.rs
diff --git
ControllerPlugin – that's why the frr generation
has also been factored out.
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
PVE/API2/Network.pm | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/PVE/API2/Network.pm b/PVE/API2/Network.pm
index 12ee6cc
-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
www/manager6/Makefile | 2 +
.../sdn/fabrics/openfabric/NodeEdit.js| 205 +
www/manager6/sdn/fabrics/ospf/NodeEdit.js | 207 ++
3 files changed, 414 insertions
ctive Zone / VNet
Plugins, instead of in the EVPN controller, but this was beyond the
scope of this already quite large patch series.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN/Controllers/EvpnPlugin.pm | 289 --
d-off-by: Gabriel Goller
---
proxmox-frr/src/lib.rs | 114 +
1 file changed, 114 insertions(+)
diff --git a/proxmox-frr/src/lib.rs b/proxmox-frr/src/lib.rs
index e69de29bb2d1..926ca42917a9 100644
--- a/proxmox-frr/src/lib.rs
+++ b/proxmox-frr/src/lib.rs
@@
CRUD methods for perlmod that call the helper functions defined earlier.
Also add a method that returns the FRR daemons to be enabled and a
method that generates FRR configuration after validating it.
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
pve-rs/src/sdn/ospf.rs
synchronize link-state
databases between OpenFabric neighbors.
- HelloMultiplier: Factor (range 2-100) applied to HelloInterval to
determine how long to wait before declaring a neighbor down when no
Hello packets are received.
Signed-off-by: Gabriel Goller
---
proxmox-network-types/src
following patch.
Signed-off-by: Gabriel Goller
---
.../src}/address.rs | 14 +-
proxmox-network-types/src/lib.rs | 1 +
proxmox-ve-config/Cargo.toml | 1 +
proxmox-ve-config/src/firewall/cluster.rs | 3 +--
proxmox-ve-config
From: Stefan Hanreich
Add CRUD endpoints for the ospf fabric and node section types.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/API2/Network/SDN/Fabrics/Makefile | 2 +-
src/PVE/API2/Network/SDN/Fabrics/Ospf.pm | 345
Add integration tests for the full cycle from section-config to FRR
config file for both openfabric and ospf.
Signed-off-by: Gabriel Goller
---
proxmox-ve-config/tests/fabric/helper.rs | 44 ++
proxmox-ve-config/tests/fabric/main.rs| 80 +++
.../resources
Add the sdn fabrics config files. These are split into two, as we
currently support two fabric types: ospf and openfabric. They hold the
whole configuration for the respective protocols. They are read and
written by pve-network.
Signed-off-by: Gabriel Goller
---
src/PVE/Cluster.pm | 2 ++
src
Add CRUD functions for managing OSPF fabrics.
Signed-off-by: Gabriel Goller
---
pve-rs/Makefile| 1 +
pve-rs/src/sdn/mod.rs | 1 +
pve-rs/src/sdn/ospf.rs | 208 +
3 files changed, 210 insertions(+)
create mode 100644 pve-rs/src/sdn/ospf.rs
.
This requires a few changes in the controller API, so that they now
append to a passed perl hash, instead of directly writing their own
configuration which is now handled externally by the SDN module.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
synchronization frequency), and HelloMultiplier (neighbor failure detection).
Added `is_ipv6` flag to support FRR's command prefixing requirements during
serialization for IPv6-specific commands (we need to add a 'ipv6' prefix
to some commands).
Signed-off-by: Gabriel Goller
---
proxmox
-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN.pm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/PVE/Network/SDN.pm b/src/PVE/Network/SDN.pm
index 68f9e0fffbfe..c9c45b1c07ea 100644
--- a/src/PVE/Network/SDN.pm
er to delete the fabrics, or revalidate stuff).
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
www/manager6/Makefile | 2 +
.../sdn/fabrics/openfabric/FabricEdit.js | 71 +++
www/manager6/sdn/fabrics/ospf/FabricEdit.js
respective hash of the
Frr module.
Signed-off-by: Stefan Hanreich
Co-authored-by: Gabriel Goller
Signed-off-by: Gabriel Goller
---
src/PVE/Network/SDN.pm | 15 +++
src/PVE/Network/SDN/Fabrics.pm | 18 +
src/PVE/Network/SDN/Frr.pm | 49 ++
3
warning without disabling the field,
allowing users to remove the SDN interface configuration while preserving
the underlying one
Signed-off-by: Gabriel Goller
Co-authored-by: Stefan Hanreich
---
www/manager6/Makefile | 1 +
www/manager6/sdn/fabrics/Common.js | 285
1 - 100 of 272 matches
Mail list logo