17899 Commits

Author SHA1 Message Date
Sylvère
e5d4c665a4 refactor(web/core): tasks-related refactor for ongoing My Tasks work (#10265) 2026-10-06 10:53:01 +02:00
MlssFrncJrg
0070c7f709 fix(xo-lite/XO6): exclude ISO SR guest tools from selector in VM creation (#10430) 2026-10-06 10:36:47 +02:00
Mathieu
a84584d24e feat(rest-api): POST acl-roles support list of privileges (#10470) 2026-10-06 10:21:35 +02:00
Joris K
786610cba3 feat(lite): add search bar in the treeview (#10414)
* feat(lite): add searchbar in the treeview

* improve open close treeview, and a pool dashboard that displays a scrollbar when the screen is minimized

* add changelog and improvement

* feedback

* feedback

* review feedback

* feedback add story
2026-10-06 10:09:35 +02:00
Mathieu
08e6e1bf49 ci(vectura): only run on the changes of the branch (#10528)
GitHub filters a push on the diff with the previous push of the branch: after
a rebase on `master`, or a merge of it, this diff contains the vectura changes
landed on `master` meanwhile, and the workflow rebuilds vectura on branches
which do not touch it.

A pull request is filtered on the diff with its merge base instead, i.e. the
changes of the branch only. Pushes still run the workflow on `master`.
2026-10-06 09:27:15 +02:00
Elise-F
5999d53e0b feat: release 6.9.1 (#10533) 2026-10-05 17:18:51 +02:00
Elise-F
decc09117d feat: patch technical release (#10529) 2026-10-05 15:47:30 +02:00
Sylvère
d11cf2d2fc fix(xo6): prevent unwanted inherited route params (#10511) 2026-10-05 14:35:02 +02:00
Mathieu
abdddcf105 fix(web/web-core): fix invalid VM-snapshot's VDIs (#10510)
introduced by 57414dafce
2026-10-05 14:01:13 +02:00
spacotte-vates
8c2f38c004 fix(backups): fix synchronized backup snapshop showing as vm in task log (#10518)
* fix(backups): fix synchronized backup snapshop showing as vm in task log
2026-10-05 11:32:42 +02:00
Pierre Donias
5de02b6c19 docs(PULL_REQUEST_TEMPLATE): point to internal review process instead of duplicating it (#10517)
The review process was documented both here and in the internal PR process
doc, and the two had drifted apart. Keep the internal doc as the single
source of truth and only give external contributors what they need.
2026-10-05 09:59:05 +02:00
Florent BEAUCHAMP
440624a09c Fix(backups): incremental distributed replication (#10519)
`AggregatedIncrementalXapiWriter.checkBaseVdis()` didn't forward
`contentKeys` to its sub-writers, so the second run of a multi-SR
replication failed with `Cannot read properties of undefined (reading 'get')`.

Also adds QA tests for distributed replication and copyRetention.

Introduced by 680b81088
2026-10-05 09:54:47 +02:00
ayoub-el-kajji-v
718b348e85 fix(backups): use schedule.id instead of scheduleId in replica retention (#10491)
fix(backups): use schedule from props for replica retention instead of scheduleId
2026-10-02 17:07:55 +02:00
Mathieu
278f7d1706 fix(vectura): build against glibc 2.31 so V2V runs on Debian 11 XOAs (#10513)
XOA appliances still run Debian 11, whose glibc is 2.31. The vectura binary
bundled with @xen-orchestra/vmware-explorer was linked against glibc 2.34,
so it did not start there (`GLIBC_2.32 not found`): the prerequisite check
of the VMware import page failed and V2V imports could not run.

zig now links it against glibc 2.31. Below 2.34, libpthread and libdl are
libraries of their own, so check-binary.sh allows them. The bundled binary
is rebuilt with the same version, and the docs say Debian 11 and Ubuntu
20.04 instead of Debian 12 and Ubuntu 22.04.

Introduced by dc57333f5
2026-10-02 16:34:10 +02:00
ayoub-el-kajji-v
b59c8f3d20 fix(xo-web): disable restat-toolstack for HA_enabled pool hosts in home (#10497) 2026-10-01 17:33:54 +02:00
Joris K
7711b6d6f5 fix(xo6/lite): fix video RAM displayed in bytes instead of MiB (#10486) 2026-10-01 16:40:18 +02:00
Mathieu
b0c0d9361a fix(xen-api): fix HTTP/2 for server behind HTTP proxy (#10507)
Introduced by 11eed70
fix Forum#12502
2026-10-01 14:51:46 +02:00
Mathieu
83fdb2ed1f docs(changelog): vCenter is still supported by V2V (#10502)
The 6.9.0 entry for the VDDK removal said a vCenter address is no longer
supported. vectura reads the disks through a vCenter as well as directly
from an ESXi host; only ESXi 6.x is refused, because its data port does not
announce "SHA256 supported".
2026-10-01 09:47:14 +02:00
Elise-F
c9eaa7a617 feat(lite): 0.26.0 (#10501) xo-lite-v0.26.0 2026-10-01 08:54:52 +02:00
Elise-F
a2bd181d35 feat: release 6.9.0 (#10499) 2026-09-30 18:12:53 +02:00
Elise-F
989cd48559 feat: technical release (#10496) 2026-09-30 15:53:45 +02:00
ayoub-el-kajji-v
b2f0bfc907 fix(xo-web): disable restart toolstack button when HA enabled on pool (#10340) 2026-09-30 14:57:50 +02:00
spacotte-vates
ce26dc2231 fix(backups): prevent failed CR to accumulate replicas (#10404)
* fix(backups): prevent failed CR to accumulate replicas
2026-09-30 14:44:42 +02:00
ayoub-el-kajji-v
2bd4e2a747 fix(xo-server): disable restart toolstack on HA pools (#10344) 2026-09-30 11:31:37 +02:00
Pierre Donias
75098c3cda feat(xo-web/xo-cloud-config): require acknowledgment to enable backup to Vates servers
XO-3030
2026-09-30 11:25:49 +02:00
Pierre Donias
6f091b9380 feat(xo-web/xo-cloud-config): confirm before disabling backup to Vates servers
XO-3031
2026-09-30 11:25:49 +02:00
Elise-F
4b578d439f fix(xo-server): add reactivity on pif metrics (#10438) 2026-09-30 11:13:00 +02:00
amouillard-vates
93e9069614 feat(xo-lite): add network delete action for host internal networks (#10332) 2026-09-30 11:03:53 +02:00
Joris K
c17bcead07 fix(xo6): update transfer task size calculation (#10448) 2026-09-30 10:34:34 +02:00
Pierre Brunet
3dbf8738f1 fix(security): Add safeguard to v2v (#10489)
https://github.com/vatesfr/xen-orchestra/security/advisories/GHSA-mc4m-hc98-rhmv
2026-09-30 10:21:51 +02:00
ludalm13
f187b79319 fix(xo-server): trust forwarded headers from loopback so /v5 proxies … (#10461) 2026-09-30 10:03:34 +02:00
Bastien Nollet
0ae1cf917c fix(xo-web): fix log modal not closing (#10487) 2026-09-30 10:00:22 +02:00
Marie Garde
e287eaeb55 feat(xo6): create page backup repository list (#10247)
* feat(xo6): merge base master

* returns from PR

* fix build

* fix build

* add custom cards side panel

* return form url util

* fix build

* return form PR

* fix rebase

* Remove packages format and parse url

* fix from IA review

* wip rebase

* wip

* opencode review

* add tests utils

* Add changelog

* feedback

* feedback

* feedback

* add tests

* feedback

* feedback

* feedback

* feedback

* fix after rebase
2026-09-29 17:22:24 +02:00
Florent BEAUCHAMP
5a8393aa17 feat(xoa): auto open ufw port for livemount (#10468)
only open the specific route from source to xo / xo-proxy

port openned only live in memory : restarting ufw will drop them, thus making all the live-mount disk unavailable

doc updated
2026-09-29 17:08:38 +02:00
Florent BEAUCHAMP
323f69d773 feat(live-mount): detect disk removing and cleanup sr (#10432)
the live mount feature create a lot of SR , each with 1 disk
this PR introduce an automatic cleanup that will forget a SR as soon as the disk is removed, thus removing any user action needed to cleanup thins in the nominal case

crashing XO can leave SR pluggued
2026-09-29 17:03:57 +02:00
Alina D
a883cef0d6 feat(xo6): replace images with new SVG design (#10380) 2026-09-29 16:26:30 +02:00
Bastien Nollet
d3b3248937 docs: remove "XOA unreachable" troubleshooting section (#10469)
See #9526
2026-09-29 10:30:22 +02:00
Killian
45ca13ba5d feat(xo-server/backups): replay the journal of the repositories on a proxy (#10437)
Phase 4 of the journal-replayed VM backups cache: brings proxy-attached repositories onto the same fast/fresh listing path as directly-attached ones, so a proxy repository is also listed once and then kept up to date by replaying its journal, instead of being re-listed in full on every refresh window.

What changes

RemoteAdapter#readBackupJournalEvents() reduces a journal read to the last event of each backup and resolves the added/changed ones back to their current metadata, so a listing can be brought up to date from a single call. A backup rewritten several times costs one metadata read; one written then deleted costs none.
VmBackupsCache no longer knows how a repository is read: that now lives entirely behind a new VmBackupsSource, which reads a directly-attached repository through the local adapter and a proxy-attached one through backup.listVmBackups (cold build, reused as-is) and the new backup.listVmBackupsJournal RPC (journal replay).
The proxy exposes backup.listVmBackupsJournal, returning its journal events with the backups already formatted, so XO gets a listing update in one round-trip instead of one metadata read per file. A proxy too old to know the method is warned about once and falls back to a full listing, same as before this change; it starts being replayed as soon as it's upgraded, with no restart needed on the XO side.
The cache's staleness check now compares its own clock only against when this process last refreshed an entry (refreshedAt), never against the watermark returned by a journal read (cursor), which is stamped by whichever process wrote it — proxy or not. Comparing the two directly would silently over- or under-refresh a repository depending on clock skew.
An entry also rebuilds from scratch if its repository moves to or from a proxy, or if the source reports it can no longer be replayed (e.g. an old proxy), rather than being purged outright.
The old proxy-only listing path in BackupNg (_listVmBackupsOnProxy, bypassing the cache) is removed: proxy and local repositories now go through the exact same cache.
A single corrupt/unreadable metadata no longer fails a whole journal read; it's kept behind the watermark so only that entry is retried on the next call instead of the caller falling back to listing the whole repository until the file is fixed.
The backup repository cache is now also invalidated on remote update/delete (previously only handled for backup repositories proper).
No behavior change for directly-attached repositories — this phase only extends the existing cache to proxy-attached ones.

XO-2852
2026-09-29 08:58:43 +02:00
MathieuRA
2f846bf07e fix(xo-server): interruptOnDisconnect does't update server error anymore 2026-09-28 19:53:59 +02:00
MathieuRA
ae3e04fb3d fix(xo-server): server status connected only if objects are fetched 2026-09-28 19:53:59 +02:00
MathieuRA
986c6b8687 fix(rest-api): fix SSE event order 2026-09-28 19:53:59 +02:00
Thomas Moraine
386e2afe12 docs(advanced.md): remove outdated 'coming soon' mention (#10378) 2026-09-28 18:30:41 +02:00
Elise-F
d7a75b943b feat: technical release (#10467) 2026-09-28 10:43:56 +02:00
Mathieu
aea3717f81 feat(xo-server,rest-api,xo-web,types/rpu): keep RPU recovery to XCP-ng and XenServer 8.4+ (#10447) 2026-09-28 09:59:27 +02:00
Pierre Brunet
5972cf5c59 fix(vhd-lib): update changelog (#10462) 2026-09-28 09:47:03 +02:00
MathieuRA
2b466d6ac8 fix(perf-alert): fix SR dead link
introduced by 779876ede9
2026-09-28 09:42:52 +02:00
MathieuRA
8ac91f9d7d fix(perf-alert): fix test plugin
introduced by 779876ede9
2026-09-28 09:42:52 +02:00
Killian
f9cafe6a0f fix(backups): actually delete interrupted replication transfers (#10436)
* fix(backups): actually delete interrupted replication transfers on next run

IncrementalXapiWriter#_prepare's "delete previous interrupted copies" cleanup
was dead code: `vm => vm.$destroy` never called the method, and it filtered
with `srUuid: undefined`, which can never match since every replica has had
REPLICATED_TO_SR_UUID set since c610951450. So a transfer interrupted mid-way
(process crash, killed job, ...) left its VM/VDI on the target SR forever,
still carrying decorateVmMetadata's DATETIME epoch sentinel.

Fix the filter to use the real srUuid and match only entries still carrying
that sentinel, then actually call $destroy(). Exclude this._targetVmRef: when
checkBaseVdis (which runs earlier) already validated the same VM as reusable
for this run, it must survive to be chained onto, not be destroyed under it.
2026-09-28 09:33:46 +02:00
Florent BEAUCHAMP
a9caea651c fix(xo-server): ignore tests on startup (#10463)
detected on previous technical release
2026-09-28 09:04:15 +02:00
vates-bot
27882fb1dc feat(web-stack/i18n): update Xen Orchestra 6 (#10396) 2026-09-25 17:03:34 +02:00