Commit graph

77 commits

Author SHA1 Message Date
Thomas Lamprecht 8f4f5d2074 bump version to 0.11.2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-09 08:16:43 +02:00
Thomas Lamprecht f49d3689d7 bump version to 0.11.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-08 15:35:16 +02:00
Thomas Lamprecht 1fd6496b5e bump version to 0.11.0
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-08 13:52:06 +02:00
Jing Luo via pve-devel f79f21a1bc d/control: break the circular build-dependency with pve-firewall, and more
Currently pve-network has a (versioned) build-dep of pve-firewall, which has
a (versioned) runtime dependency of a newer version of libpve-network-perl,
which is not available because it has not been built. It turns out that
pve-firewall is only needed in testing, so let's only pull it in if
we don't use the "nocheck" build profile so that we can actually build
pve-network from source.

perl is a build-essential so no need to add it in build-deps.

Fixes: cbc70c81b9
Signed-off-by: Jing Luo <jing@jing.rocks>
Link: https://lore.proxmox.com/mailman.599.1732342430.391.pve-devel@lists.proxmox.com
2025-04-07 12:47:23 +02:00
Thomas Lamprecht a77f0c21ca bump version to 0.10.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-06 10:21:38 +01:00
Hannes Duerr 894d2d33e3 api request helper: enforce TLS cert-check and add cert-fingerprint option
Currently, we do not verify the TLS certificate for API requests
external IPAM and DNS integration. This could allow man-in-the-middle
attacks, albeit most IPAM infrastructure is on controlled and isolated
LANs, so it's not something that should frequently happen; and
technically our IPAM integration is still marked as tech-preview,
which had its reasons.

Enforce verification, and allow users to pass a cert SHA256
fingerprint to ensure a certificates validity if it's not trusted by
the system trust store, as it's, e.g., the case for self-signed certs.

The code was adapted from the one in pve-apiclient, which we cannot
reuse directly as it is only implemented for requests against PVE
nodes, not as a generic HTTP client request helper.

Add the new dependency `libio-socket-ssl-perl` required to get the
verify callback for the TLS certificate used for cert-fingerprint
checking.

Signed-off-by: Hannes Duerr <h.duerr@proxmox.com>
Tested-by: Stefan Hanreich <s.hanreich@proxmox.com>
 [TL: return valid for non-leaf certs and rewrite commit message]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-06 10:00:21 +01:00
Thomas Lamprecht 39fb956fb8 bump version to 0.10.0
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-11-20 16:14:56 +01:00
Stoiko Ivanov c1a9ab4b87 d/postinst: do not break, if ipam-file moves fail
failing a package-install does not help repairing the situation - so
inform the user about the issue instead of erroring out. The copy
could fail if a node is not quorate, so writes in /etc/pve are a bit
more likely to fail
adapts the change introduced in
d0628df ("debian: migrate legacy mac/ipam cache/state files")

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2024-11-20 16:13:38 +01:00
Thomas Lamprecht 3b2e57499e bump version to 0.9.9
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-11-19 16:41:33 +01:00
Stefan Hanreich d0628dfddf debian: migrate legacy mac/ipam cache/state files
We opted for a simple copy of the legacy file to the new location,
since any other migration path would be too strenuous. The worst-case
scenario of failures with this approach is losing IPAM / MAC entries
that are created during the update window in the legacy files by nodes
that are not yet updated to the new version. Those can be fixed by a
simple start / stop of the affected VMs, triggering a rewrite of the
IPAM database.

Signed-off-by: Stefan Hanreich <s.hanreich@proxmox.com>
 [ TL: output message if files get moved and add todo-comment ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-11-19 16:41:33 +01:00
Thomas Lamprecht cbc70c81b9 d/control: record dependency to pve-firewall from api package
We mount the per-vnet firewall API endpoints here now, as we split api
and implementation we can avoid a cyclic dependency.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-11-19 16:41:33 +01:00
Thomas Lamprecht acd6a2a1b1 d/control: bump versioned dependency for pve-cluster
To ensure 'sdn/mac-cache.json' is available as observed file.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-11-18 22:21:20 +01:00
Thomas Lamprecht 89dfb8f879 prepare bump version to 0.9.9
This is not yet marked as released as the bump was mostly done to
allow testing with correct version for the package split's
break/replaces.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-11-18 18:18:55 +01:00
Thomas Lamprecht 98f4d7525c split into implementation and API endpoint packages
To better handle the case where firewall requires to parse the SDN
config and this package here would like to mount some vnet specific
firewall endpoints, without a split we got a cyclic dependency here,
and those are painful, especially on bootstrapping.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-11-18 18:17:20 +01:00
Thomas Lamprecht 026dab2090 d/control: bump versioned dependency for pve-cluster
to ensure 'sdn/pve-ipam-state.json' is in the list of observed files
for version tracking and direct IPC get-config availability through
pmxcfs.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-11-18 16:49:46 +01:00
Thomas Lamprecht e0e0f4fa86 bump version to 0.9.8
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-04-23 19:39:58 +02:00
Thomas Lamprecht ce667efbf9 bump version to 0.9.7
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-04-22 13:59:30 +02:00
Stefan Lendl 0f6bc593aa debian: blackbox tests depend on libpve-access-control at build
For mocking RPCEnvironment in sbuild.

Signed-off-by: Stefan Lendl <s.lendl@proxmox.com>
Reviewed-by: Stefan Hanreich <s.hanreich@proxmox.com>
Tested-by: Stefan Hanreich <s.hanreich@proxmox.com>
2024-04-08 17:57:18 +02:00
Thomas Lamprecht 2d0cb1a3a2 bump version to 0.9.6
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-22 10:15:32 +01:00
Thomas Lamprecht 8ded42918d bump version to 0.9.5
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-29 15:20:34 +01:00
Thomas Lamprecht 1032f6d838 bump version to 0.9.4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-23 12:12:13 +01:00
Thomas Lamprecht faa17e045f bump version to 0.9.3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-23 12:03:05 +01:00
Thomas Lamprecht 0559cd7015 bump version to 0.9.2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-23 11:32:18 +01:00
Thomas Lamprecht b4a3bbd73c bump version to 0.9.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-22 19:50:50 +01:00
Thomas Lamprecht a9107d35d2 bump version to 0.9.0
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-22 14:46:53 +01:00
Thomas Lamprecht f58c7169fd bump version to 0.8.5
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-21 20:34:48 +01:00
Wolfgang Bumiller 3bef780a5a bump version to 0.8.4
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-11-21 14:49:46 +01:00
Wolfgang Bumiller 5ab15238af bump version to 0.8.3
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-11-21 14:41:53 +01:00
Thomas Lamprecht 365a4072e4 d/control: downgrade frr-pythontools from recommends to suggests
avoid pulling FRR in on upgrade if we'd hard-depend on
libpve-network-perl for all those systems that kept the default
install-recommends enabled as FRR is a bit involved and might announce
stuff and break some network environments if not correctly configured.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-21 08:26:59 +01:00
Thomas Lamprecht 46348e8ba6 d/control: drop explicit perl dependency
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-21 08:26:36 +01:00
Thomas Lamprecht 8baff6bc3a d/control: update versioned dependency for pve-cluster
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-20 17:41:33 +01:00
Stefan Hanreich 33074dfbee sdn: dhcp: add dnsmasq plugin
The plugin creates a dnsmasq@<zone> service that spawns a dnsmasq
instance that handles dhcp for that zone.

The configuration files for a dnsmasq instance lie within
/etc/dnsmasq.d/<zone>

The plugin generates the following configuration files:
* 00-default.conf
  Contains the default global configuration for dnsmasq. Disables DNS,
  enables some specific options for Windows, does some
  security-related configuration and makes dnsmasq bind only to the
  interfaces it is responsible for
* 10-<subnet>.conf
  Contains the default settings for a subnet. Sets dhcp options for
  DNS and gateway.
* 10-<subnet>.ranges.conf
  Contains the configuration of DHCP ranges for a subnet.
* ethers
  Contains the MAC address to IP mappings for a zone.

Every subnet gets assigned a tag in the dnsmasq configuration that is
equal to the subnet_id. This can be used to override / set additional
configuration options on a per-subnet basis.

Additionally it creates the file /etc/default/dnsmasq.<zone> that
provides default options for the dnsmasq service.

Leases are stored in /var/lib/misc/dnsmasq.<zone>.

Co-Authored-By: Alexandre Derumier <aderumier@odiso.com>
Signed-off-by: Stefan Hanreich <s.hanreich@proxmox.com>
2023-11-18 15:59:50 +01:00
Fabian Grünbichler 1f3d638995 bump version to 0.8.2
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2023-10-25 13:07:03 +02:00
Thomas Lamprecht a38775c818 bump version to 0.8.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-06 10:23:57 +02:00
Thomas Lamprecht 13c75e8619 d/control: update dependencies
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-06 10:23:57 +02:00
Thomas Lamprecht 2bff8ab755 bump version to 0.8.0
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-25 18:18:57 +02:00
Thomas Lamprecht 11f3cfd9a1 d/control: raise compat level to 13
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-25 18:18:57 +02:00
Thomas Lamprecht cead0f28af d/control: reword package description slightly
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-25 18:18:57 +02:00
Thomas Lamprecht a4f5a945b7 d/control: drop outdated breaks for pve-manager << 5.2-12
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-25 18:18:57 +02:00
Thomas Lamprecht 517b531b88 d/control: raise standards version compliance to 4.6.2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-25 18:18:57 +02:00
Thomas Lamprecht 94b92a83d4 d/control: record missing libtest-mockmodule-perl build-dependency
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-25 18:18:57 +02:00
Thomas Lamprecht 50c52a494e bump version to 0.7.3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-03-20 17:20:01 +01:00
Fabian Grünbichler 9fad492e42 d/control: add missing build dependency
the File::Slurp module is used for test cases..

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2023-01-20 10:12:17 +01:00
Thomas Lamprecht 51a8fd2a2a bump version to 0.7.2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-11-14 14:09:00 +01:00
Thomas Lamprecht 51a0356495 bump version to 0.7.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-04-28 20:34:10 +02:00
Thomas Lamprecht b86302e314 bump version to 0.7.0
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-02-13 15:04:54 +01:00
Thomas Lamprecht ea5187a424 bump version to 0.6.2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-11-12 19:34:24 +01:00
Thomas Lamprecht 6949fc0152 bump version to 0.6.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-05 19:07:55 +02:00
Thomas Lamprecht c72266faee bump version to 0.6.0
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-05-10 10:45:56 +02:00
Thomas Lamprecht 4686176d29 d/source: switch to native versioning
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-05-10 10:45:53 +02:00