Marie Garde
a67dd73304
feat(xo6/traffic rule): edit a traffic rule ( #10056 )
2026-09-01 11:22:03 +02:00
Bastien Nollet
7e022940c3
feat: technical release ( #10326 )
...
* feat(@vates/types): 2.0.1
* feat(@xen-orchestra/web): 0.60.1
* feat(xo-server): 5.208.1
* chore(CHANGELOG): update next
2026-08-31 15:55:42 +02:00
Mathieu
2fba0ff4df
fix(openmetrics): keep the Prometheus secret across xo-server restarts ( #10290 )
...
* fix(openmetrics): keep the Prometheus secret across xo-server restarts
The `secret` property of `configurationSchema` used a random `default`. That
expression is re-evaluated every time the module is loaded, and xo-server never
persists the values ajv fills in from schema defaults, so each restart handed
the metrics endpoint a brand new bearer token and Prometheus started getting
401s.
Drop the default and generate the secret in `load()` instead, saving it through
`xo.configurePlugin()` so it survives a restart.
Introduced by #9323
See https://xcp-ng.org/forum/topic/12415
* chore(changelog): add openmetrics secret entry
* fix(xo-server-openmetrics): generate a 256-bit Prometheus secret
Buffer.from(getRandomValues(new Uint32Array(8))) coerces each 32-bit
element to a single byte, so the generated secret held 64 bits of
entropy instead of 256. Use randomBytes(32) instead.
Introduced by fe29bd0d4
2026-08-31 13:45:02 +02:00
Bastien Nollet
6a4415ea1d
feat: technical release ( #10318 )
...
* feat(@vates/nbd-client): 3.5.1
* feat(@vates/types): 2.0.0
* feat(@xen-orchestra/acl): 1.6.1
* feat(@xen-orchestra/backup-archive): 1.1.2
* feat(@xen-orchestra/xapi): 8.10.4
* feat(@xen-orchestra/backups): 0.74.1
* feat(@xen-orchestra/web-core): 0.60.0
* feat(@xen-orchestra/mcp): 1.4.2
* feat(@xen-orchestra/proxy): 0.31.8
* feat(@xen-orchestra/rest-api): 0.39.0
* feat(@xen-orchestra/web): 0.59.0
* feat(xo-server): 5.207.4
* feat(xo-server-ipmi-sensors): 2.1.1
* feat(xo-server-openmetrics): 1.9.1
* feat(xo-server-sdn-controller): 1.5.0
* chore(CHANGELOG): update next
2026-08-28 14:56:02 +02:00
Florent BEAUCHAMP
14e4c7d62c
fix(backups): timeout NBD transfer omnibus fixes ( #10306 )
...
* fix(backups): timeout was not used correctly for NBD transfers
* fix(nbd-client): evict a dead client in multi instead
actual code was retrying 5 times, each time with a 60s timeout
multi also have its own retry on conneciton
since the client used is determnistic for a block, any stalled client
will be hammerred for a lot of time before giving up
this PR evict a nbd client that is failing to read a block (with its
retry logic)
* fix(nbd-client/multi): better spread read accross client
the actual code derivate the clientId from the block index
we have no information on the block distribution, only hopes that
it's random enough
this PR introduce a mechanism to use a round robin to select
the next client
* fix: correct fall back to full with /without nbd on qcow2
2026-08-28 10:57:17 +02:00
Grandalf
dfb4c925ec
fix(sdn-controller): delete saved port on traffic rule patch ( #10307 )
2026-08-27 10:17:20 +02:00
Thierry Goettelmann
970eca135e
fix(@vates/types,@xen-orchestra/rest-api): remove ACL type parameters from XoRecord ( #10308 )
...
Introduced by 63d4334837
2026-08-26 18:12:53 +02:00
Bastien Nollet
9cdaf6bb41
feat: technical release ( #10305 )
...
* feat(@xen-orchestra/async-map): 0.1.4
* feat(xo-common): 0.11.0
* feat(xen-api): 4.9.0
* feat(@vates/types): 1.30.2
* feat(@xen-orchestra/acl): 1.6.0
* feat(@xen-orchestra/xapi): 8.10.3
* feat(@xen-orchestra/backups): 0.74.0
* feat(@xen-orchestra/backups-cli): 1.1.14
* feat(@xen-orchestra/disk-cli): 2.2.1
* feat(@xen-orchestra/immutable-backups): 3.0.5
* feat(@xen-orchestra/web-core): 0.59.0
* feat(@xen-orchestra/mixins): 0.20.2
* feat(@xen-orchestra/proxy): 0.31.7
* feat(@xen-orchestra/proxy-cli): 0.3.3
* feat(@xen-orchestra/qa-test): 1.2.0
* feat(@xen-orchestra/rest-api): 0.38.0
* feat(@xen-orchestra/upload-ova): 0.1.9
* feat(@xen-orchestra/web): 0.58.0
* feat(xo-acl-resolver): 0.5.4
* feat(xo-cli): 0.32.4
* feat(xo-server): 5.207.3
* feat(xo-server-audit): 0.15.2
* feat(xo-server-ipmi-sensors): 2.1.0
* feat(xo-server-netbox): 1.13.2
* feat(xo-server-sdn-controller): 1.4.1
* feat(xo-web): 5.202.0
* chore(CHANGELOG): update next
2026-08-25 16:19:35 +02:00
Grandalf
0601716fa4
fix(backups): return backups repository info one by one instead of erroring on first failure ( #10205 )
2026-08-13 15:09:53 +02:00
Mathieu
e9548959c6
feat: technical release ( #10228 )
2026-08-04 12:05:18 +02:00
spacotte-vates
a94eba4dd1
fix(nbd-client): fix long datamap read nbddisk ( #10157 )
...
Customer imported large VM from VMWare (> 3 To), import switched to Qcow2 automatically but the process was stuck while building the qcow2 L1/L2 address tables, where the NbdDisk's hasBlock is called for each l2 table entry which iterated over the disk dataMap which contained ~113,528 ranges. This froze the process for more than 18 minutes after which it was either killed or died due to OOM error.
This fix improves the NbdDisk by:
Updating processDatamap to throw on overlapping ranges and merge touching extents.
Override default getBlockIndexesCount with optimized Nbd one.
Improve hasBlock with a built in cursor to improve performance.
Test file added to cover the new function and updated code.
2026-08-03 11:24:44 +02:00
Mathieu
59306dce8f
feat: technical release ( #10198 )
2026-07-30 11:08:08 +02:00
Florent BEAUCHAMP
6ba465be04
fix(xapi): don't try to compute progress on Buffer ( #10195 )
...
* fix(xapi): don't try to compute progress on Buffer
introduced by 76b45a9b3b
* port type to vates/types
2026-07-30 10:19:37 +02:00
Mathieu
068c4cdc86
feat: technical release ( #10192 )
2026-07-29 15:30:14 +02:00
Grandalf
4636fcf820
feat(types): type-register-rest-routes ( #10171 )
2026-07-28 14:51:36 +02:00
Olivier Lambert
4ca263c10a
feat(xo-server,xo-web/rpu): shut down and restart pinned VMs instead of aborting ( #10125 )
...
* feat(xo-server/rpu): opt-in shutdown/restart of pinned VMs instead of aborting
2026-07-28 10:05:43 +02:00
Mathieu
74b952be2b
feat: technical release ( #10174 )
2026-07-27 15:05:16 +02:00
Mathieu
bcb91e8b4f
feat(rest-api): add POST /srs route to create a storage repository ( #9990 )
2026-07-27 10:37:55 +02:00
MathieuRA
fc6415b4ec
fix(xo-server): fix group deletion checking RBAC authorization
2026-07-23 10:52:29 +02:00
MathieuRA
5bb4ac62bf
fix(xo-server): delete user don't remove the link between user and acl-role
2026-07-23 10:52:29 +02:00
MathieuRA
fee9bf8334
feat(xo-server): add groupIds and userIds to acl-role object
2026-07-23 10:52:29 +02:00
MathieuRA
1455801282
feat(xo-server): add aclRoleIds property to groups
2026-07-23 10:52:29 +02:00
MathieuRA
bd5937366a
feat(rest-api): expose groups/:id/acl-roles
2026-07-23 10:52:29 +02:00
Olivier Lambert
64f1327f46
feat(rest-api): allow setting HA restart priority on VM creation ( #10070 )
...
See #10069
2026-07-21 16:02:08 +02:00
Mathieu
db795ccfe2
feat(rest-api): ability to set transient for host.disable ( #10040 )
2026-07-10 15:33:08 +02:00
Bastien Nollet
12b380e806
feat: technical release ( #10103 )
...
* feat(@xen-orchestra/fs): 4.9.2
* feat(@xen-orchestra/backup-archive): 1.0.4
* feat(@xen-orchestra/backups): 0.73.7
* feat(@xen-orchestra/proxy): 0.31.2
* feat(xo-server): 5.205.2
* chore(CHANGELOG): update next
2026-07-09 14:31:09 +02:00
Bastien Nollet
eb4c55d82c
feat: technical release ( #10045 )
...
* feat(@vates/types): 1.28.0
* feat(@xen-orchestra/acl): 1.4.0
* feat(@xen-orchestra/backups): 0.73.5
* feat(@xen-orchestra/proxy): 0.31.0
* feat(@xen-orchestra/rest-api): 0.35.0
* feat(@xen-orchestra/web): 0.55.1
* feat(xo-server): 5.205.0
* feat(xo-server-sdn-controller): 1.4.0
* chore(CHANGELOG): update next
* clear changelog
2026-06-30 12:01:18 +02:00
spacotte-vates
d43ca09b8b
feat(rest-api): add 7 rest actions on hosts ( #9887 )
2026-06-30 11:37:17 +02:00
spacotte-vates
235fc07404
feat(rest-api): backup-repository health/bench routes ( #9847 )
2026-06-29 17:12:51 +02:00
Sylvère
01d8e21538
feat(xo6): warn and link to doc when traffic rules are not in the expected format ( #10020 )
...
Co-authored-by: Sylvere <sylvere.armange@vates.tech >
2026-06-25 10:06:35 +02:00
Bastien Nollet
b96a6dc1e9
feat: technical release ( #10022 )
...
* feat(@xen-orchestra/fs): 4.9.1
* feat(@vates/generator-toolbox): 1.1.3
* feat(@xen-orchestra/disk-transform): 1.3.1
* feat(@vates/fuse-vhd): 2.1.3
* feat(xo-common): 0.10.0
* feat(xen-api): 4.7.8
* feat(@vates/types): 1.27.0
* feat(@xen-orchestra/acl): 1.3.0
* feat(@xen-orchestra/backup-archive): 1.0.2
* feat(@xen-orchestra/qcow2): 1.3.1
* feat(@xen-orchestra/xapi): 8.9.0
* feat(@xen-orchestra/backups): 0.73.3
* feat(@xen-orchestra/disk-cli): 2.1.2
* feat(@xen-orchestra/web-core): 0.55.0
* feat(@xen-orchestra/mcp): 1.4.1
* feat(@xen-orchestra/mixins): 0.20.1
* feat(@xen-orchestra/openflow): 0.1.4
* feat(@xen-orchestra/proxy): 0.30.4
* feat(@xen-orchestra/qa-test): 1.1.0
* feat(@xen-orchestra/rest-api): 0.34.0
* feat(@xen-orchestra/upload-ova): 0.1.8
* feat(@xen-orchestra/web): 0.54.0
* feat(xo-acl-resolver): 0.5.3
* feat(xo-server): 5.203.0
* feat(xo-server-audit): 0.15.1
* feat(xo-server-ipmi-sensors): 2.0.1
* feat(xo-server-load-balancer): 0.13.0
* feat(xo-server-netbox): 1.13.0
* feat(xo-server-openmetrics): 1.7.0
* feat(xo-server-sdn-controller): 1.3.3
* feat(xo-web): 5.198.0
* chore(CHANGELOG): update next
2026-06-24 10:18:29 +02:00
Mathieu
304e219441
fix(rest-api/dashboard): count job sequence schedules for backup computation ( #9997 )
2026-06-23 10:24:57 +02:00
Mathieu
cf569efff2
feat(rest-api): add PATCH /rest/v0/vifs/{id} ( #9935 )
2026-06-22 15:54:05 +02:00
Pierre Brunet
9a710e5bf3
feat: update packages ( #9969 )
2026-06-17 10:02:00 +02:00
Grandalf
d1b99b9e86
feat(rest-api): add forgetRepository endpoint ( #9846 )
2026-06-15 10:59:09 +02:00
Florent BEAUCHAMP
de5ea8a888
fix(backups): file level restore : omnibus fixes ( #9776 )
2026-06-12 11:40:16 +02:00
Mathieu
d6d530d616
feat(xo6/lite): add ha_reboot_vm_on_internal_shutdown in pool's system ( #9962 )
2026-06-10 11:55:09 +02:00
Mathieu
c61083e59e
fix(rest-api): vm export correctly handle zstd and gzip compression ( #9960 )
2026-06-10 10:55:13 +02:00
Mathieu
3f9c8ecce0
fix(vates/types): remove duplicate entries ( #9913 )
...
Introduced by 544590a860
2026-06-09 14:04:10 +02:00
spacotte-vates
53be744746
feat(rest-api): add add_host route to pools ( #9876 )
2026-06-08 11:29:31 +02:00
Mathieu
7adcf9afd3
feat(xo-server): support bundle in featureCheck ( #9769 )
2026-06-08 10:16:03 +02:00
Florent BEAUCHAMP
d8094a71e2
fix: normalize packages ( #9917 )
...
* fix: normalize packages
no changelog since it does not need any release
* put back lost chanegs
2026-06-05 14:12:57 +02:00
spacotte-vates
5a88040318
feat(rest-api): add POST and PATCH backup repository endpoints ( #9852 )
2026-06-04 15:10:20 +02:00
Pierre Brunet
0f29421627
feat: technical release ( #9907 )
2026-05-28 11:11:08 +02:00
Mathieu
5089be9998
feat(rest-api/vm): add PATCH /vms/{id} to partially update a VM ( #9835 )
2026-05-28 10:17:15 +02:00
Pierre Brunet
1f243bf90e
feat: update http-server-plus ( #9899 )
2026-05-27 16:05:43 +02:00
Pierre Brunet
b3d9dc6d0c
feat: technical release ( #9897 )
2026-05-27 15:16:53 +02:00
Elise-F
8d318e8eb2
feat(xo6): add possibility to add new traffic rule from pool ( #9809 )
2026-05-26 16:24:44 +02:00
Mathieu
406a4aa00a
feat(mcp): add global kill-switch ( #9860 )
...
Adds a server-side kill-switch for MCP. Setting [mcp] enabled = false in xo-server's config blocks every MCP connection globally
2026-05-26 16:21:22 +02:00
Pierre Brunet
082ab9cf41
feat: technical release ( #9878 )
2026-05-22 10:34:38 +02:00